From 7eaa34d0d106b7bcfbdf98346f09ed90ae0e34e1 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 31 Jul 2024 03:44:28 +0200 Subject: [PATCH 001/629] Remove tippy.js and replace with Floating UI (#5398) * start experimenting with floating-ui * add options to floating-ui bubble menu plugin & fix smaller issues * add vue support for new floating-ui * start experimenting with floating-ui * adjust floating-menu plugin for floating-ui & update react component * add vue support for floating-menu with floating-ui * update tests for new floating-ui integration * added changeset file * move floating-ui dependency to peerDeps * add install notice to changelog * remove unnecessary code for destroying and removing component element in Vue suggestion.js * remove unnecessary code for destroying and removing component element in React suggestion.js * sync package-lock * widen range for peerDeps again --- .changeset/dirty-bats-look.md | 36 + demos/includeDependencies.txt | 2 +- .../Examples/Community/React/index.spec.js | 4 +- .../Examples/Community/React/suggestion.js | 50 +- .../src/Examples/Community/Vue/index.spec.js | 4 +- .../src/Examples/Community/Vue/suggestion.js | 49 +- demos/src/Examples/Menus/React/index.jsx | 4 +- demos/src/Examples/Menus/React/index.spec.js | 12 +- demos/src/Examples/Menus/Vue/index.spec.js | 12 +- demos/src/Examples/Menus/Vue/index.vue | 44 +- .../src/Examples/Performance/React/index.jsx | 2 +- .../Experiments/Commands/Vue/index.spec.js | 14 +- .../Experiments/Commands/Vue/suggestion.js | 49 +- .../src/Extensions/BubbleMenu/React/index.jsx | 8 +- demos/src/Extensions/BubbleMenu/Vue/index.vue | 6 +- .../Extensions/FloatingMenu/React/index.jsx | 2 +- .../src/Extensions/FloatingMenu/Vue/index.vue | 2 +- demos/src/Nodes/Mention/React/suggestion.js | 47 +- demos/src/Nodes/Mention/Vue/suggestion.js | 47 +- package-lock.json | 6252 ++++++----------- packages/core/src/style.ts | 4 - packages/extension-bubble-menu/package.json | 13 +- .../src/bubble-menu-plugin.ts | 242 +- .../extension-bubble-menu/src/bubble-menu.ts | 2 - packages/extension-floating-menu/package.json | 13 +- .../src/floating-menu-plugin.ts | 244 +- .../src/floating-menu.ts | 4 +- packages/react/src/BubbleMenu.tsx | 41 +- packages/react/src/FloatingMenu.tsx | 37 +- packages/suggestion/src/suggestion.ts | 2 +- packages/vue-2/src/BubbleMenu.ts | 21 +- packages/vue-2/src/FloatingMenu.ts | 13 +- packages/vue-3/src/BubbleMenu.ts | 32 +- packages/vue-3/src/FloatingMenu.ts | 22 +- 34 files changed, 2677 insertions(+), 4659 deletions(-) create mode 100644 .changeset/dirty-bats-look.md diff --git a/.changeset/dirty-bats-look.md b/.changeset/dirty-bats-look.md new file mode 100644 index 0000000000..23e690073f --- /dev/null +++ b/.changeset/dirty-bats-look.md @@ -0,0 +1,36 @@ +--- +"@tiptap/extension-floating-menu": major +"@tiptap/extension-bubble-menu": major +"@tiptap/extension-mention": major +"@tiptap/suggestion": major +"@tiptap/react": major +"@tiptap/vue-2": major +"@tiptap/vue-3": major +--- + +Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + +This change is breaking existing menu implementations and will require a manual migration. + +**Affected packages:** + +- `@tiptap/extension-floating-menu` +- `@tiptap/extension-bubble-menu` +- `@tiptap/extension-mention` +- `@tiptap/suggestion` +- `@tiptap/react` +- `@tiptap/vue-2` +- `@tiptap/vue-3` + +Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + +- [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) +- [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + +You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + +```bash +npm install @floating-ui/dom@^1.6.0 +``` + +The new `options` object is compatible with all components that use these extensions. diff --git a/demos/includeDependencies.txt b/demos/includeDependencies.txt index 54929e3c27..ac1b107e95 100644 --- a/demos/includeDependencies.txt +++ b/demos/includeDependencies.txt @@ -23,7 +23,7 @@ react-dom react-dom/client shiki simplify-js -tippy.js +@floating-ui/dom uuid y-webrtc yjs diff --git a/demos/src/Examples/Community/React/index.spec.js b/demos/src/Examples/Community/React/index.spec.js index 721876e8fd..b4888f73a1 100644 --- a/demos/src/Examples/Community/React/index.spec.js +++ b/demos/src/Examples/Community/React/index.spec.js @@ -20,10 +20,10 @@ context('/src/Examples/Community/React/', () => { cy.get('.tiptap').type('{selectall}{backspace}@') // check if the mention autocomplete is visible - cy.get('.tippy-content .dropdown-menu').should('be.visible') + cy.get('.dropdown-menu').should('be.visible') // select the first user - cy.get('.tippy-content .dropdown-menu button').first().then($el => { + cy.get('.dropdown-menu button').first().then($el => { const name = $el.text() $el.click() diff --git a/demos/src/Examples/Community/React/suggestion.js b/demos/src/Examples/Community/React/suggestion.js index f573d04c72..05b9bd90df 100644 --- a/demos/src/Examples/Community/React/suggestion.js +++ b/demos/src/Examples/Community/React/suggestion.js @@ -1,8 +1,29 @@ -import { ReactRenderer } from '@tiptap/react' -import tippy from 'tippy.js' +import { + computePosition, + flip, + shift, +} from '@floating-ui/dom' +import { posToDOMRect, ReactRenderer } from '@tiptap/react' import { MentionList } from './MentionList.jsx' +const updatePosition = (editor, element) => { + const virtualElement = { + getBoundingClientRect: () => posToDOMRect(editor.view, editor.state.selection.from, editor.state.selection.to), + } + + computePosition(virtualElement, element, { + placement: 'bottom-start', + strategy: 'absolute', + middleware: [shift(), flip()], + }).then(({ x, y, strategy }) => { + element.style.width = 'max-content' + element.style.position = strategy + element.style.left = `${x}px` + element.style.top = `${y}px` + }) +} + export default { items: ({ query }) => { return [ @@ -12,7 +33,6 @@ export default { render: () => { let reactRenderer - let popup return { onStart: props => { @@ -26,15 +46,11 @@ export default { editor: props.editor, }) - popup = tippy('body', { - getReferenceClientRect: props.clientRect, - appendTo: () => document.body, - content: reactRenderer.element, - showOnCreate: true, - interactive: true, - trigger: 'manual', - placement: 'bottom-start', - }) + reactRenderer.element.style.position = 'absolute' + + document.body.appendChild(reactRenderer.element) + + updatePosition(props.editor, reactRenderer.element) }, onUpdate(props) { @@ -43,15 +59,13 @@ export default { if (!props.clientRect) { return } - - popup[0].setProps({ - getReferenceClientRect: props.clientRect, - }) + updatePosition(props.editor, reactRenderer.element) }, onKeyDown(props) { if (props.event.key === 'Escape') { - popup[0].hide() + reactRenderer.destroy() + reactRenderer.element.remove() return true } @@ -60,8 +74,8 @@ export default { }, onExit() { - popup[0].destroy() reactRenderer.destroy() + reactRenderer.element.remove() }, } }, diff --git a/demos/src/Examples/Community/Vue/index.spec.js b/demos/src/Examples/Community/Vue/index.spec.js index e403e10b0f..3eca14f783 100644 --- a/demos/src/Examples/Community/Vue/index.spec.js +++ b/demos/src/Examples/Community/Vue/index.spec.js @@ -20,10 +20,10 @@ context('/src/Examples/Community/Vue/', () => { cy.get('.tiptap').type('{selectall}{backspace}@') // check if the mention autocomplete is visible - cy.get('.tippy-content .dropdown-menu').should('be.visible') + cy.get('.dropdown-menu').should('be.visible') // select the first user - cy.get('.tippy-content .dropdown-menu button').first().then($el => { + cy.get('.dropdown-menu button').first().then($el => { const name = $el.text() $el.click() diff --git a/demos/src/Examples/Community/Vue/suggestion.js b/demos/src/Examples/Community/Vue/suggestion.js index d4ea733224..422bb94ef8 100644 --- a/demos/src/Examples/Community/Vue/suggestion.js +++ b/demos/src/Examples/Community/Vue/suggestion.js @@ -1,8 +1,29 @@ -import { VueRenderer } from '@tiptap/vue-3' -import tippy from 'tippy.js' +import { + computePosition, + flip, + shift, +} from '@floating-ui/dom' +import { posToDOMRect, VueRenderer } from '@tiptap/vue-3' import MentionList from './MentionList.vue' +const updatePosition = (editor, element) => { + const virtualElement = { + getBoundingClientRect: () => posToDOMRect(editor.view, editor.state.selection.from, editor.state.selection.to), + } + + computePosition(virtualElement, element, { + placement: 'bottom-start', + strategy: 'absolute', + middleware: [shift(), flip()], + }).then(({ x, y, strategy }) => { + element.style.width = 'max-content' + element.style.position = strategy + element.style.left = `${x}px` + element.style.top = `${y}px` + }) +} + export default { items: ({ query }) => { return [ @@ -12,7 +33,6 @@ export default { render: () => { let component - let popup return { onStart: props => { @@ -28,15 +48,11 @@ export default { return } - popup = tippy('body', { - getReferenceClientRect: props.clientRect, - appendTo: () => document.body, - content: component.element, - showOnCreate: true, - interactive: true, - trigger: 'manual', - placement: 'bottom-start', - }) + component.element.style.position = 'absolute' + + document.body.appendChild(component.element) + + updatePosition(props.editor, component.element) }, onUpdate(props) { @@ -46,14 +62,13 @@ export default { return } - popup[0].setProps({ - getReferenceClientRect: props.clientRect, - }) + updatePosition(props.editor, component.element) }, onKeyDown(props) { if (props.event.key === 'Escape') { - popup[0].hide() + component.destroy() + component.element.remove() return true } @@ -62,8 +77,8 @@ export default { }, onExit() { - popup[0].destroy() component.destroy() + component.element.remove() }, } }, diff --git a/demos/src/Examples/Menus/React/index.jsx b/demos/src/Examples/Menus/React/index.jsx index b05c7e1f77..65848b05c6 100644 --- a/demos/src/Examples/Menus/React/index.jsx +++ b/demos/src/Examples/Menus/React/index.jsx @@ -26,7 +26,7 @@ export default () => { return ( <> - {editor && + {editor && } - {editor && + {editor && @@ -47,13 +50,11 @@ export default () => { Document, Paragraph, Text, - CodeBlockLowlight - .extend({ - addNodeView() { - return ReactNodeViewRenderer(CodeBlockComponent) - }, - }) - .configure({ lowlight }), + CodeBlockLowlight.extend({ + addNodeView() { + return ReactNodeViewRenderer(CodeBlockComponent) + }, + }).configure({ lowlight }), ], content: `

diff --git a/demos/src/Examples/CodeBlockLanguage/Vue/CodeBlockComponent.vue b/demos/src/Examples/CodeBlockLanguage/Vue/CodeBlockComponent.vue index 02048ae0ae..201866a62c 100644 --- a/demos/src/Examples/CodeBlockLanguage/Vue/CodeBlockComponent.vue +++ b/demos/src/Examples/CodeBlockLanguage/Vue/CodeBlockComponent.vue @@ -1,12 +1,8 @@ @@ -63,7 +61,7 @@ export default { }, upHandler() { - this.selectedIndex = ((this.selectedIndex + this.items.length) - 1) % this.items.length + this.selectedIndex = (this.selectedIndex + this.items.length - 1) % this.items.length }, downHandler() { diff --git a/demos/src/Experiments/Commands/Vue/index.spec.js b/demos/src/Experiments/Commands/Vue/index.spec.js index 009b0889ec..6d548ed02c 100644 --- a/demos/src/Experiments/Commands/Vue/index.spec.js +++ b/demos/src/Experiments/Commands/Vue/index.spec.js @@ -10,12 +10,7 @@ context('/src/Experiments/Commands/Vue/', () => { }) it('should open a popup after typing a slash', () => { - const items = [ - { tag: 'h1' }, - { tag: 'h2' }, - { tag: 'strong' }, - { tag: 'em' }, - ] + const items = [{ tag: 'h1' }, { tag: 'h2' }, { tag: 'strong' }, { tag: 'em' }] items.forEach((item, i) => { cy.get('.tiptap').type('{selectall}{backspace}/') diff --git a/demos/src/Experiments/Commands/Vue/suggestion.js b/demos/src/Experiments/Commands/Vue/suggestion.js index 3c01d68a74..5b827cb4e8 100644 --- a/demos/src/Experiments/Commands/Vue/suggestion.js +++ b/demos/src/Experiments/Commands/Vue/suggestion.js @@ -1,8 +1,4 @@ -import { - computePosition, - flip, - shift, -} from '@floating-ui/dom' +import { computePosition, flip, shift } from '@floating-ui/dom' import { posToDOMRect, VueRenderer } from '@tiptap/vue-3' import CommandsList from './CommandsList.vue' @@ -30,48 +26,30 @@ export default { { title: 'Heading 1', command: ({ editor, range }) => { - editor - .chain() - .focus() - .deleteRange(range) - .setNode('heading', { level: 1 }) - .run() + editor.chain().focus().deleteRange(range).setNode('heading', { level: 1 }).run() }, }, { title: 'Heading 2', command: ({ editor, range }) => { - editor - .chain() - .focus() - .deleteRange(range) - .setNode('heading', { level: 2 }) - .run() + editor.chain().focus().deleteRange(range).setNode('heading', { level: 2 }).run() }, }, { title: 'Bold', command: ({ editor, range }) => { - editor - .chain() - .focus() - .deleteRange(range) - .setMark('bold') - .run() + editor.chain().focus().deleteRange(range).setMark('bold').run() }, }, { title: 'Italic', command: ({ editor, range }) => { - editor - .chain() - .focus() - .deleteRange(range) - .setMark('italic') - .run() + editor.chain().focus().deleteRange(range).setMark('italic').run() }, }, - ].filter(item => item.title.toLowerCase().startsWith(query.toLowerCase())).slice(0, 10) + ] + .filter(item => item.title.toLowerCase().startsWith(query.toLowerCase())) + .slice(0, 10) }, render: () => { diff --git a/demos/src/Experiments/DestroyingEditor/Vue/index.vue b/demos/src/Experiments/DestroyingEditor/Vue/index.vue index ea54b19ae5..0b0e96f480 100644 --- a/demos/src/Experiments/DestroyingEditor/Vue/index.vue +++ b/demos/src/Experiments/DestroyingEditor/Vue/index.vue @@ -27,9 +27,7 @@ export default { mounted() { this.editor = new Editor({ - extensions: [ - StarterKit, - ], + extensions: [StarterKit], content: `

Try destroying the editor

`, diff --git a/demos/src/Experiments/Embeds/Vue/iframe.ts b/demos/src/Experiments/Embeds/Vue/iframe.ts index 85392e24ea..3481f0ea49 100644 --- a/demos/src/Experiments/Embeds/Vue/iframe.ts +++ b/demos/src/Experiments/Embeds/Vue/iframe.ts @@ -1,10 +1,10 @@ import { Node } from '@tiptap/core' export interface IframeOptions { - allowFullscreen: boolean, + allowFullscreen: boolean HTMLAttributes: { [key: string]: any - }, + } } declare module '@tiptap/core' { @@ -13,7 +13,7 @@ declare module '@tiptap/core' { /** * Add an iframe */ - setIframe: (options: { src: string }) => ReturnType, + setIframe: (options: { src: string }) => ReturnType } } } @@ -50,9 +50,11 @@ export default Node.create({ }, parseHTML() { - return [{ - tag: 'iframe', - }] + return [ + { + tag: 'iframe', + }, + ] }, renderHTML({ HTMLAttributes }) { @@ -61,16 +63,18 @@ export default Node.create({ addCommands() { return { - setIframe: (options: { src: string }) => ({ tr, dispatch }) => { - const { selection } = tr - const node = this.type.create(options) + setIframe: + (options: { src: string }) => + ({ tr, dispatch }) => { + const { selection } = tr + const node = this.type.create(options) - if (dispatch) { - tr.replaceRangeWith(selection.from, selection.to, node) - } + if (dispatch) { + tr.replaceRangeWith(selection.from, selection.to, node) + } - return true - }, + return true + }, } }, }) diff --git a/demos/src/Experiments/Embeds/Vue/index.vue b/demos/src/Experiments/Embeds/Vue/index.vue index 390cbf0979..1fc9fdfb6d 100644 --- a/demos/src/Experiments/Embeds/Vue/index.vue +++ b/demos/src/Experiments/Embeds/Vue/index.vue @@ -2,9 +2,7 @@
- +
@@ -30,10 +28,7 @@ export default { mounted() { this.editor = new Editor({ - extensions: [ - StarterKit, - Iframe, - ], + extensions: [StarterKit, Iframe], content: `

Here is an exciting video:

@@ -58,7 +53,7 @@ export default { diff --git a/demos/src/Experiments/IsolatingClear/React/index.jsx b/demos/src/Experiments/IsolatingClear/React/index.jsx index 9771849c61..2419fdc8d5 100644 --- a/demos/src/Experiments/IsolatingClear/React/index.jsx +++ b/demos/src/Experiments/IsolatingClear/React/index.jsx @@ -37,62 +37,34 @@ const MenuBar = ({ editor }) => {
- - + + - - + + diff --git a/demos/src/Experiments/IsolatingClear/React/styles.scss b/demos/src/Experiments/IsolatingClear/React/styles.scss index a55bf759f9..3285141418 100644 --- a/demos/src/Experiments/IsolatingClear/React/styles.scss +++ b/demos/src/Experiments/IsolatingClear/React/styles.scss @@ -5,11 +5,11 @@ } /* List styles */ - ul, + ul, ol { padding: 0 1rem; margin: 1.25rem 1rem 1.25rem 0.4rem; - + li p { margin-top: 0.25em; margin-bottom: 0.25em; @@ -17,39 +17,39 @@ } /* Heading styles */ - h1, - h2, - h3, - h4, - h5, + h1, + h2, + h3, + h4, + h5, h6 { line-height: 1.1; margin-top: 2.5rem; text-wrap: pretty; } - h1, + h1, h2 { margin-top: 3.5rem; margin-bottom: 1.5rem; } - h1 { - font-size: 1.4rem; + h1 { + font-size: 1.4rem; } - h2 { - font-size: 1.2rem; + h2 { + font-size: 1.2rem; } - h3 { - font-size: 1.1rem; + h3 { + font-size: 1.1rem; } - h4, - h5, - h6 { - font-size: 1rem; + h4, + h5, + h6 { + font-size: 1rem; } /* Code and preformatted text styles */ diff --git a/demos/src/Experiments/Linter/Vue/extension/Linter.ts b/demos/src/Experiments/Linter/Vue/extension/Linter.ts index b3c776fd1e..e51aca406b 100644 --- a/demos/src/Experiments/Linter/Vue/extension/Linter.ts +++ b/demos/src/Experiments/Linter/Vue/extension/Linter.ts @@ -77,11 +77,7 @@ export const Linter = Extension.create({ if (/lint-icon/.test(target.className) && target.issue) { const { from, to } = target.issue - view.dispatch( - view.state.tr - .setSelection(TextSelection.create(view.state.doc, from, to)) - .scrollIntoView(), - ) + view.dispatch(view.state.tr.setSelection(TextSelection.create(view.state.doc, from, to)).scrollIntoView()) return true } diff --git a/demos/src/Experiments/Linter/Vue/extension/plugins/BadWords.ts b/demos/src/Experiments/Linter/Vue/extension/plugins/BadWords.ts index cd9b49593e..72c196b324 100644 --- a/demos/src/Experiments/Linter/Vue/extension/plugins/BadWords.ts +++ b/demos/src/Experiments/Linter/Vue/extension/plugins/BadWords.ts @@ -1,8 +1,7 @@ import LinterPlugin from '../LinterPlugin.js' export class BadWords extends LinterPlugin { - - public regex = /\b(obviously|clearly|evidently|simply)\b/ig + public regex = /\b(obviously|clearly|evidently|simply)\b/gi scan() { this.doc.descendants((node: any, position: number) => { diff --git a/demos/src/Experiments/Linter/Vue/index.vue b/demos/src/Experiments/Linter/Vue/index.vue index 632f429f63..760df56ae3 100644 --- a/demos/src/Experiments/Linter/Vue/index.vue +++ b/demos/src/Experiments/Linter/Vue/index.vue @@ -32,11 +32,7 @@ export default { Heading, Text, Linter.configure({ - plugins: [ - BadWords, - Punctuation, - HeadingLevel, - ], + plugins: [BadWords, Punctuation, HeadingLevel], }), ], content: ` @@ -62,7 +58,8 @@ export default { } - diff --git a/demos/src/Experiments/MultipleEditors/Vue/index.vue b/demos/src/Experiments/MultipleEditors/Vue/index.vue index 82d64bd72b..6d6da651d3 100644 --- a/demos/src/Experiments/MultipleEditors/Vue/index.vue +++ b/demos/src/Experiments/MultipleEditors/Vue/index.vue @@ -152,7 +152,6 @@ export default { diff --git a/demos/src/Extensions/Color/React/index.jsx b/demos/src/Extensions/Color/React/index.tsx similarity index 96% rename from demos/src/Extensions/Color/React/index.jsx rename to demos/src/Extensions/Color/React/index.tsx index e19b94f5c1..5e94d9b926 100644 --- a/demos/src/Extensions/Color/React/index.jsx +++ b/demos/src/Extensions/Color/React/index.tsx @@ -1,10 +1,9 @@ import './styles.scss' -import { Color } from '@tiptap/extension-color' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import TextStyle from '@tiptap/extension-text-style' +import { Color, TextStyle } from '@tiptap/extension-text-style' import { EditorContent, useEditor, useEditorState } from '@tiptap/react' import React from 'react' @@ -42,7 +41,7 @@ export default () => {
editor.chain().focus().setColor(event.target.value).run()} + onInput={event => editor.chain().focus().setColor(event.currentTarget.value).run()} value={editorState.color} data-testid="setColor" /> diff --git a/demos/src/Extensions/Color/Vue/index.vue b/demos/src/Extensions/Color/Vue/index.vue index 8146b4db7e..98cd7d690a 100644 --- a/demos/src/Extensions/Color/Vue/index.vue +++ b/demos/src/Extensions/Color/Vue/index.vue @@ -57,11 +57,10 @@ diff --git a/demos/src/Extensions/LineHeight/Vue/styles.scss b/demos/src/Extensions/LineHeight/Vue/styles.scss new file mode 100644 index 0000000000..0cfd55df4c --- /dev/null +++ b/demos/src/Extensions/LineHeight/Vue/styles.scss @@ -0,0 +1,18 @@ +/* Basic editor styles */ +.tiptap { + line-height: 1.0; + :first-child { + margin-top: 0; + } + + img { + display: block; + height: auto; + margin: 1.5rem 0; + max-width: 100%; + + &.ProseMirror-selectednode { + outline: 3px solid var(--purple); + } + } +} diff --git a/demos/src/Marks/TextStyle/React/index.jsx b/demos/src/Marks/TextStyle/React/index.jsx index 55eb283617..cb11138cfb 100644 --- a/demos/src/Marks/TextStyle/React/index.jsx +++ b/demos/src/Marks/TextStyle/React/index.jsx @@ -1,12 +1,10 @@ import './styles.scss' import Bold from '@tiptap/extension-bold' -import { Color } from '@tiptap/extension-color' import Document from '@tiptap/extension-document' -import { FontFamily } from '@tiptap/extension-font-family' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import TextStyle from '@tiptap/extension-text-style' +import { Color , FontFamily , TextStyle } from '@tiptap/extension-text-style' import { EditorContent, useEditor } from '@tiptap/react' import React from 'react' diff --git a/demos/src/Marks/TextStyle/Vue/index.vue b/demos/src/Marks/TextStyle/Vue/index.vue index ae4bacbc9b..3ea65c324a 100644 --- a/demos/src/Marks/TextStyle/Vue/index.vue +++ b/demos/src/Marks/TextStyle/Vue/index.vue @@ -6,12 +6,10 @@ + + +n diff --git a/demos/vite.config.ts b/demos/vite.config.ts index 223a223208..72992b925c 100644 --- a/demos/vite.config.ts +++ b/demos/vite.config.ts @@ -41,6 +41,10 @@ const getPackageDependencies = () => { } }) + // Handle the JSX runtime alias + paths.unshift({ find: '@tiptap/core/jsx-runtime', replacement: resolve('../packages/core/src/jsx-runtime.ts') }) + paths.unshift({ find: '@tiptap/core/jsx-dev-runtime', replacement: resolve('../packages/core/src/jsx-runtime.ts') }) + return paths } diff --git a/packages/core/jsx-dev-runtime/index.cjs b/packages/core/jsx-dev-runtime/index.cjs new file mode 100644 index 0000000000..6f1356f15b --- /dev/null +++ b/packages/core/jsx-dev-runtime/index.cjs @@ -0,0 +1 @@ +export * from '../dist/jsx-runtime/jsx-runtime.cjs' diff --git a/packages/core/jsx-dev-runtime/index.d.cts b/packages/core/jsx-dev-runtime/index.d.cts new file mode 100644 index 0000000000..75d9136232 --- /dev/null +++ b/packages/core/jsx-dev-runtime/index.d.cts @@ -0,0 +1 @@ +export * from '../src/jsx-runtime.ts' diff --git a/packages/core/jsx-dev-runtime/index.d.ts b/packages/core/jsx-dev-runtime/index.d.ts new file mode 100644 index 0000000000..644513c172 --- /dev/null +++ b/packages/core/jsx-dev-runtime/index.d.ts @@ -0,0 +1 @@ +export type * from '../src/jsx-runtime.js' diff --git a/packages/core/jsx-dev-runtime/index.js b/packages/core/jsx-dev-runtime/index.js new file mode 100644 index 0000000000..856e5edff4 --- /dev/null +++ b/packages/core/jsx-dev-runtime/index.js @@ -0,0 +1 @@ +export * from '../dist/jsx-runtime/jsx-runtime.js' diff --git a/packages/core/jsx-runtime/index.cjs b/packages/core/jsx-runtime/index.cjs new file mode 100644 index 0000000000..6f1356f15b --- /dev/null +++ b/packages/core/jsx-runtime/index.cjs @@ -0,0 +1 @@ +export * from '../dist/jsx-runtime/jsx-runtime.cjs' diff --git a/packages/core/jsx-runtime/index.d.cts b/packages/core/jsx-runtime/index.d.cts new file mode 100644 index 0000000000..75d9136232 --- /dev/null +++ b/packages/core/jsx-runtime/index.d.cts @@ -0,0 +1 @@ +export * from '../src/jsx-runtime.ts' diff --git a/packages/core/jsx-runtime/index.d.ts b/packages/core/jsx-runtime/index.d.ts new file mode 100644 index 0000000000..5a1c2c9d36 --- /dev/null +++ b/packages/core/jsx-runtime/index.d.ts @@ -0,0 +1 @@ +export type * from '../src/jsx-runtime.ts' diff --git a/packages/core/jsx-runtime/index.js b/packages/core/jsx-runtime/index.js new file mode 100644 index 0000000000..856e5edff4 --- /dev/null +++ b/packages/core/jsx-runtime/index.js @@ -0,0 +1 @@ +export * from '../dist/jsx-runtime/jsx-runtime.js' diff --git a/packages/core/package.json b/packages/core/package.json index c1892178a6..99423aee42 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -24,6 +24,22 @@ }, "import": "./dist/index.js", "require": "./dist/index.cjs" + }, + "./jsx-runtime": { + "types": { + "import": "./jsx-runtime/index.d.ts", + "require": "./jsx-runtime/index.d.cts" + }, + "import": "./jsx-runtime/index.js", + "require": "./jsx-runtime/index.cjs" + }, + "./jsx-dev-runtime": { + "types": { + "import": "./jsx-dev-runtime/index.d.ts", + "require": "./jsx-dev-runtime/index.d.cts" + }, + "import": "./jsx-dev-runtime/index.js", + "require": "./jsx-dev-runtime/index.cjs" } }, "main": "dist/index.cjs", @@ -31,7 +47,8 @@ "types": "dist/index.d.ts", "files": [ "src", - "dist" + "dist", + "jsx-runtime" ], "devDependencies": { "@tiptap/pm": "^3.0.0-next.4" diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index ccfa709259..5ccf348512 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -5,6 +5,7 @@ export * as extensions from './extensions/index.js' export * from './helpers/index.js' export * from './InputRule.js' export * from './inputRules/index.js' +export { createElement, Fragment, createElement as h } from './jsx-runtime.js' export * from './Mark.js' export * from './Node.js' export * from './NodePos.js' diff --git a/packages/core/src/jsx-runtime.ts b/packages/core/src/jsx-runtime.ts new file mode 100644 index 0000000000..9b9278faa0 --- /dev/null +++ b/packages/core/src/jsx-runtime.ts @@ -0,0 +1,64 @@ +export type Attributes = Record + +export type DOMOutputSpecElement = 0 | Attributes | DOMOutputSpecArray +/** + * Better describes the output of a `renderHTML` function in prosemirror + * @see https://prosemirror.net/docs/ref/#model.DOMOutputSpec + */ +export type DOMOutputSpecArray = + | [string] + | [string, Attributes] + | [string, 0] + | [string, Attributes, 0] + | [string, Attributes, DOMOutputSpecArray | 0] + | [string, DOMOutputSpecArray] + +declare global { + // eslint-disable-next-line @typescript-eslint/no-namespace + namespace JSX { + // @ts-ignore - conflict with React typings + type Element = [string, ...any[]] + // @ts-ignore - conflict with React typings + interface IntrinsicElements { + // @ts-ignore - conflict with React typings + [key: string]: any + } + } +} + +export type JSXRenderer = ( + tag: 'slot' | string | ((props?: Attributes) => DOMOutputSpecArray | DOMOutputSpecElement), + props?: Attributes, + ...children: JSXRenderer[] +) => DOMOutputSpecArray | DOMOutputSpecElement + +export function Fragment(props: { children: JSXRenderer[] }) { + return props.children +} + +export const h: JSXRenderer = (tag, attributes) => { + // Treat the slot tag as the Prosemirror hole to render content into + if (tag === 'slot') { + return 0 + } + + // If the tag is a function, call it with the props + if (tag instanceof Function) { + return tag(attributes) + } + + const { children, ...rest } = attributes ?? {} + + if (tag === 'svg') { + throw new Error('SVG elements are not supported in the JSX syntax, use the array syntax instead') + } + + // Otherwise, return the tag, attributes, and children + return [tag, rest, children] +} + +// See +// https://esbuild.github.io/api/#jsx-import-source +// https://www.typescriptlang.org/tsconfig/#jsxImportSource + +export { h as createElement, h as jsx, h as jsxDEV, h as jsxs } diff --git a/packages/core/tsup.config.ts b/packages/core/tsup.config.ts index 9ad38f6d69..820659d52e 100644 --- a/packages/core/tsup.config.ts +++ b/packages/core/tsup.config.ts @@ -1,11 +1,22 @@ import { defineConfig } from 'tsup' -export default defineConfig({ - entry: ['src/index.ts'], - // purposefully not using the build tsconfig, so @tiptap/core's types can be resolved correctly - outDir: 'dist', - dts: true, - clean: true, - sourcemap: true, - format: ['esm', 'cjs'], -}) +export default defineConfig([ + { + entry: ['src/index.ts'], + // purposefully not using the build tsconfig, so @tiptap/core's types can be resolved correctly + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], + }, + { + entry: ['src/jsx-runtime.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist/jsx-runtime', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], + }, +]) diff --git a/packages/extension-blockquote/src/blockquote.ts b/packages/extension-blockquote/src/blockquote.tsx similarity index 86% rename from packages/extension-blockquote/src/blockquote.ts rename to packages/extension-blockquote/src/blockquote.tsx index 0f24cbb3ec..ee8814fa2b 100644 --- a/packages/extension-blockquote/src/blockquote.ts +++ b/packages/extension-blockquote/src/blockquote.tsx @@ -1,4 +1,6 @@ +/** @jsxImportSource @tiptap/core */ import { mergeAttributes, Node, wrappingInputRule } from '@tiptap/core' +import type { DOMOutputSpecArray } from '@tiptap/core/jsx-runtime' export interface BlockquoteOptions { /** @@ -57,7 +59,11 @@ export const Blockquote = Node.create({ }, renderHTML({ HTMLAttributes }) { - return ['blockquote', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0] + return ( +
+ +
+ ) as unknown as DOMOutputSpecArray }, addCommands() { diff --git a/packages/extension-blockquote/src/index.ts b/packages/extension-blockquote/src/index.ts index b805f47ae8..e47cb14aaa 100644 --- a/packages/extension-blockquote/src/index.ts +++ b/packages/extension-blockquote/src/index.ts @@ -1,5 +1,5 @@ -import { Blockquote } from './blockquote.js' +import { Blockquote } from './blockquote.jsx' -export * from './blockquote.js' +export * from './blockquote.jsx' export default Blockquote diff --git a/packages/extension-bold/src/bold.ts b/packages/extension-bold/src/bold.tsx similarity index 91% rename from packages/extension-bold/src/bold.ts rename to packages/extension-bold/src/bold.tsx index 2229ee6f99..1de2faa13d 100644 --- a/packages/extension-bold/src/bold.ts +++ b/packages/extension-bold/src/bold.tsx @@ -1,4 +1,6 @@ +/** @jsxImportSource @tiptap/core */ import { Mark, markInputRule, markPasteRule, mergeAttributes } from '@tiptap/core' +import type { DOMOutputSpecArray } from '@tiptap/core/jsx-runtime' export interface BoldOptions { /** @@ -82,7 +84,11 @@ export const Bold = Mark.create({ }, renderHTML({ HTMLAttributes }) { - return ['strong', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0] + return ( + + + + ) as unknown as DOMOutputSpecArray }, addCommands() { diff --git a/packages/extension-bold/src/index.ts b/packages/extension-bold/src/index.ts index 16582a5302..3a2d6c8a71 100644 --- a/packages/extension-bold/src/index.ts +++ b/packages/extension-bold/src/index.ts @@ -1,5 +1,5 @@ -import { Bold } from './bold.js' +import { Bold } from './bold.jsx' -export * from './bold.js' +export * from './bold.jsx' export default Bold diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3ab946883c..6b75d03ba2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -687,6 +687,15 @@ importers: specifier: ^3.0.0-next.4 version: link:../pm + packages/jsx: + dependencies: + '@tiptap/core': + specifier: ^3.0.0-next.3 + version: link:../core + '@tiptap/pm': + specifier: ^3.0.0-next.3 + version: link:../pm + packages/pm: dependencies: prosemirror-changeset: diff --git a/tests/cypress/plugins/index.js b/tests/cypress/plugins/index.js index 58f7c5e11b..3cd2498ccc 100644 --- a/tests/cypress/plugins/index.js +++ b/tests/cypress/plugins/index.js @@ -66,6 +66,7 @@ module.exports = on => { alias, extensionAlias: { '.js': ['.js', '.ts'], + '.jsx': ['.jsx', '.tsx'], }, }, }, diff --git a/tsconfig.json b/tsconfig.json index 67c10544d9..634be28b78 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -4,7 +4,7 @@ "target": "es2019", "module": "esnext", "strict": true, - "jsx": "react", + "jsx": "react-jsx", "importHelpers": true, "moduleResolution": "node", "resolveJsonModule": true, From d6d5c88f7ac126c54c68738c248772f518d28331 Mon Sep 17 00:00:00 2001 From: Nick Perez Date: Wed, 22 Jan 2025 13:19:46 +0100 Subject: [PATCH 083/629] feat(core): add a `delete` event which can detect node deletions (#6022) --- .../src/Experiments/OnDelete/React/index.html | 0 .../src/Experiments/OnDelete/React/index.tsx | 34 +++ .../Experiments/OnDelete/React/styles.scss | 6 + packages/core/src/Editor.ts | 6 + packages/core/src/Extension.ts | 110 +++++--- packages/core/src/Mark.ts | 111 ++++---- packages/core/src/Node.ts | 111 ++++---- packages/core/src/extensions/delete.ts | 59 ++++ packages/core/src/extensions/index.ts | 1 + packages/core/src/types.ts | 267 +++++++++++++++++- packages/react/src/useEditor.ts | 1 + 11 files changed, 545 insertions(+), 161 deletions(-) create mode 100644 demos/src/Experiments/OnDelete/React/index.html create mode 100644 demos/src/Experiments/OnDelete/React/index.tsx create mode 100644 demos/src/Experiments/OnDelete/React/styles.scss create mode 100644 packages/core/src/extensions/delete.ts diff --git a/demos/src/Experiments/OnDelete/React/index.html b/demos/src/Experiments/OnDelete/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Experiments/OnDelete/React/index.tsx b/demos/src/Experiments/OnDelete/React/index.tsx new file mode 100644 index 0000000000..94ccf13c88 --- /dev/null +++ b/demos/src/Experiments/OnDelete/React/index.tsx @@ -0,0 +1,34 @@ +import './styles.scss' + +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React from 'react' + +export default () => { + const [mostRecentDeletion, setMostRecentDeletion] = React.useState(null) + const editor = useEditor({ + extensions: [StarterKit], + content: ` +

+ Try to delete this text. +

+ `, + onDelete({ node, transaction, newPos }) { + const newNode = transaction.doc.nodeAt(newPos) + setMostRecentDeletion(`${node.toString()} -> ${newNode?.toString()}`) + }, + }) + + if (!editor) { + return null + } + + return ( + <> +
+
Most recent deletion: {mostRecentDeletion}
+
+ + + ) +} diff --git a/demos/src/Experiments/OnDelete/React/styles.scss b/demos/src/Experiments/OnDelete/React/styles.scss new file mode 100644 index 0000000000..afd5ba2145 --- /dev/null +++ b/demos/src/Experiments/OnDelete/React/styles.scss @@ -0,0 +1,6 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } +} diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index e385e50eae..33c36d9987 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -9,6 +9,7 @@ import { ExtensionManager } from './ExtensionManager.js' import { ClipboardTextSerializer, Commands, + Delete, Drop, Editable, FocusEvents, @@ -100,6 +101,7 @@ export class Editor extends EventEmitter { }, onPaste: () => null, onDrop: () => null, + onDelete: () => null, } constructor(options: Partial = {}) { @@ -122,6 +124,7 @@ export class Editor extends EventEmitter { this.on('destroy', this.options.onDestroy) this.on('drop', ({ event, slice, moved }) => this.options.onDrop(event, slice, moved)) this.on('paste', ({ event, slice }) => this.options.onPaste(event, slice)) + this.on('delete', this.options.onDelete) window.setTimeout(() => { if (this.isDestroyed) { @@ -297,6 +300,9 @@ export class Editor extends EventEmitter { Tabindex, Drop, Paste, + Delete.configure({ + async: this.options.coreExtensionOptions?.delete?.async, + }), ].filter(ext => { if (typeof this.options.enableCoreExtensions === 'object') { return ( diff --git a/packages/core/src/Extension.ts b/packages/core/src/Extension.ts index 7ba68d17e1..3a396871d5 100644 --- a/packages/core/src/Extension.ts +++ b/packages/core/src/Extension.ts @@ -1,4 +1,4 @@ -import { Plugin, Transaction } from '@tiptap/pm/state' +import { Plugin } from '@tiptap/pm/state' import { Editor } from './Editor.js' import { getExtensionField } from './helpers/getExtensionField.js' @@ -7,7 +7,15 @@ import { InputRule } from './InputRule.js' import { Mark } from './Mark.js' import { Node } from './Node.js' import { PasteRule } from './PasteRule.js' -import { AnyConfig, Extensions, GlobalAttributes, KeyboardShortcutCommand, ParentConfig, RawCommands } from './types.js' +import { + AnyConfig, + EditorEvents, + Extensions, + GlobalAttributes, + KeyboardShortcutCommand, + ParentConfig, + RawCommands, +} from './types.js' import { callOrReturn } from './utilities/callOrReturn.js' import { mergeDeep } from './utilities/mergeDeep.js' @@ -271,52 +279,64 @@ declare module '@tiptap/core' { * The editor is not ready yet. */ onBeforeCreate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - parent: ParentConfig>['onBeforeCreate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + parent: ParentConfig>['onBeforeCreate'] + }, + event: EditorEvents['beforeCreate'], + ) => void) | null /** * The editor is ready. */ onCreate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - parent: ParentConfig>['onCreate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + parent: ParentConfig>['onCreate'] + }, + event: EditorEvents['create'], + ) => void) | null /** * The content has changed. */ onUpdate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - parent: ParentConfig>['onUpdate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + parent: ParentConfig>['onUpdate'] + }, + event: EditorEvents['update'], + ) => void) | null /** * The selection has changed. */ onSelectionUpdate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - parent: ParentConfig>['onSelectionUpdate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + parent: ParentConfig>['onSelectionUpdate'] + }, + event: EditorEvents['selectionUpdate'], + ) => void) | null /** @@ -331,10 +351,7 @@ declare module '@tiptap/core' { editor: Editor parent: ParentConfig>['onTransaction'] }, - props: { - editor: Editor - transaction: Transaction - }, + event: EditorEvents['transaction'], ) => void) | null @@ -350,9 +367,7 @@ declare module '@tiptap/core' { editor: Editor parent: ParentConfig>['onFocus'] }, - props: { - event: FocusEvent - }, + event: EditorEvents['focus'], ) => void) | null @@ -368,9 +383,7 @@ declare module '@tiptap/core' { editor: Editor parent: ParentConfig>['onBlur'] }, - props: { - event: FocusEvent - }, + event: EditorEvents['blur'], ) => void) | null @@ -378,13 +391,16 @@ declare module '@tiptap/core' { * The editor is destroyed. */ onDestroy?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - parent: ParentConfig>['onDestroy'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + parent: ParentConfig>['onDestroy'] + }, + event: EditorEvents['destroy'], + ) => void) | null } } diff --git a/packages/core/src/Mark.ts b/packages/core/src/Mark.ts index 1367950f53..c8441947b2 100644 --- a/packages/core/src/Mark.ts +++ b/packages/core/src/Mark.ts @@ -1,5 +1,5 @@ import { DOMOutputSpec, Mark as ProseMirrorMark, MarkSpec, MarkType } from '@tiptap/pm/model' -import { Plugin, Transaction } from '@tiptap/pm/state' +import { Plugin } from '@tiptap/pm/state' import { Editor } from './Editor.js' import { getExtensionField } from './helpers/getExtensionField.js' @@ -10,6 +10,7 @@ import { PasteRule } from './PasteRule.js' import { AnyConfig, Attributes, + EditorEvents, Extensions, GlobalAttributes, KeyboardShortcutCommand, @@ -284,56 +285,68 @@ declare module '@tiptap/core' { * The editor is not ready yet. */ onBeforeCreate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: MarkType - parent: ParentConfig>['onBeforeCreate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: MarkType + parent: ParentConfig>['onBeforeCreate'] + }, + event: EditorEvents['beforeCreate'], + ) => void) | null /** * The editor is ready. */ onCreate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: MarkType - parent: ParentConfig>['onCreate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: MarkType + parent: ParentConfig>['onCreate'] + }, + event: EditorEvents['create'], + ) => void) | null /** * The content has changed. */ onUpdate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: MarkType - parent: ParentConfig>['onUpdate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: MarkType + parent: ParentConfig>['onUpdate'] + }, + event: EditorEvents['update'], + ) => void) | null /** * The selection has changed. */ onSelectionUpdate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: MarkType - parent: ParentConfig>['onSelectionUpdate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: MarkType + parent: ParentConfig>['onSelectionUpdate'] + }, + event: EditorEvents['selectionUpdate'], + ) => void) | null /** @@ -349,10 +362,7 @@ declare module '@tiptap/core' { type: MarkType parent: ParentConfig>['onTransaction'] }, - props: { - editor: Editor - transaction: Transaction - }, + event: EditorEvents['transaction'], ) => void) | null @@ -369,9 +379,7 @@ declare module '@tiptap/core' { type: MarkType parent: ParentConfig>['onFocus'] }, - props: { - event: FocusEvent - }, + event: EditorEvents['focus'], ) => void) | null @@ -388,9 +396,7 @@ declare module '@tiptap/core' { type: MarkType parent: ParentConfig>['onBlur'] }, - props: { - event: FocusEvent - }, + event: EditorEvents['focus'], ) => void) | null @@ -398,14 +404,17 @@ declare module '@tiptap/core' { * The editor is destroyed. */ onDestroy?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: MarkType - parent: ParentConfig>['onDestroy'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: MarkType + parent: ParentConfig>['onDestroy'] + }, + event: EditorEvents['destroy'], + ) => void) | null /** diff --git a/packages/core/src/Node.ts b/packages/core/src/Node.ts index 216037a2d9..6cc6923125 100644 --- a/packages/core/src/Node.ts +++ b/packages/core/src/Node.ts @@ -1,5 +1,5 @@ import { DOMOutputSpec, Node as ProseMirrorNode, NodeSpec, NodeType } from '@tiptap/pm/model' -import { Plugin, Transaction } from '@tiptap/pm/state' +import { Plugin } from '@tiptap/pm/state' import { Editor } from './Editor.js' import { getExtensionField } from './helpers/getExtensionField.js' @@ -10,6 +10,7 @@ import { PasteRule } from './PasteRule.js' import { AnyConfig, Attributes, + EditorEvents, Extensions, GlobalAttributes, KeyboardShortcutCommand, @@ -286,56 +287,68 @@ declare module '@tiptap/core' { * The editor is not ready yet. */ onBeforeCreate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: NodeType - parent: ParentConfig>['onBeforeCreate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: NodeType + parent: ParentConfig>['onBeforeCreate'] + }, + event: EditorEvents['beforeCreate'], + ) => void) | null /** * The editor is ready. */ onCreate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: NodeType - parent: ParentConfig>['onCreate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: NodeType + parent: ParentConfig>['onCreate'] + }, + event: EditorEvents['create'], + ) => void) | null /** * The content has changed. */ onUpdate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: NodeType - parent: ParentConfig>['onUpdate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: NodeType + parent: ParentConfig>['onUpdate'] + }, + event: EditorEvents['update'], + ) => void) | null /** * The selection has changed. */ onSelectionUpdate?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: NodeType - parent: ParentConfig>['onSelectionUpdate'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: NodeType + parent: ParentConfig>['onSelectionUpdate'] + }, + event: EditorEvents['selectionUpdate'], + ) => void) | null /** @@ -351,10 +364,7 @@ declare module '@tiptap/core' { type: NodeType parent: ParentConfig>['onTransaction'] }, - props: { - editor: Editor - transaction: Transaction - }, + event: EditorEvents['transaction'], ) => void) | null @@ -371,9 +381,7 @@ declare module '@tiptap/core' { type: NodeType parent: ParentConfig>['onFocus'] }, - props: { - event: FocusEvent - }, + event: EditorEvents['focus'], ) => void) | null @@ -390,9 +398,7 @@ declare module '@tiptap/core' { type: NodeType parent: ParentConfig>['onBlur'] }, - props: { - event: FocusEvent - }, + event: EditorEvents['blur'], ) => void) | null @@ -400,14 +406,17 @@ declare module '@tiptap/core' { * The editor is destroyed. */ onDestroy?: - | ((this: { - name: string - options: Options - storage: Storage - editor: Editor - type: NodeType - parent: ParentConfig>['onDestroy'] - }) => void) + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: NodeType + parent: ParentConfig>['onDestroy'] + }, + event: EditorEvents['destroy'], + ) => void) | null /** diff --git a/packages/core/src/extensions/delete.ts b/packages/core/src/extensions/delete.ts new file mode 100644 index 0000000000..8bdf3db475 --- /dev/null +++ b/packages/core/src/extensions/delete.ts @@ -0,0 +1,59 @@ +import { Extension } from '../Extension.js' +import { combineTransactionSteps, getChangedRanges } from '../helpers/index.js' + +export interface OnDeleteOptions { + /** + * Whether the callback should be called asynchronously to avoid blocking the editor + * @default false + */ + async?: boolean +} + +/** + * This extension allows you to be notified when the user deletes content you are interested in. + */ +export const Delete = Extension.create({ + name: 'delete', + + addOptions() { + return { + async: false, + } + }, + + onUpdate({ transaction, appendedTransactions }) { + const callback = () => { + const nextTransaction = combineTransactionSteps(transaction.before, [transaction, ...appendedTransactions]) + const changes = getChangedRanges(nextTransaction) + + changes.forEach(change => { + if ( + nextTransaction.mapping.mapResult(change.oldRange.from).deletedAfter && + nextTransaction.mapping.mapResult(change.oldRange.to).deletedBefore + ) { + nextTransaction.before.nodesBetween(change.oldRange.from, change.oldRange.to, (node, pos) => { + const isFullyWithinRange = change.oldRange.from <= pos && pos + node.nodeSize - 2 <= change.oldRange.to + + this.editor.emit('delete', { + node, + pos, + newPos: nextTransaction.mapping.map(pos), + deletedRange: change.oldRange, + newRange: change.newRange, + partial: !isFullyWithinRange, + editor: this.editor, + transaction, + combinedTransform: nextTransaction, + }) + }) + } + }) + } + + if (this.options.async) { + setTimeout(callback, 0) + } else { + callback() + } + }, +}) diff --git a/packages/core/src/extensions/index.ts b/packages/core/src/extensions/index.ts index eca0516c7e..2dbb463fcb 100644 --- a/packages/core/src/extensions/index.ts +++ b/packages/core/src/extensions/index.ts @@ -1,5 +1,6 @@ export { ClipboardTextSerializer } from './clipboardTextSerializer.js' export { Commands } from './commands.js' +export { Delete } from './delete.js' export { Drop } from './drop.js' export { Editable } from './editable.js' export { FocusEvents } from './focusEvents.js' diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index d5143b964b..7375d76e79 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -1,6 +1,6 @@ import { Mark as ProseMirrorMark, Node as ProseMirrorNode, ParseOptions, Slice } from '@tiptap/pm/model' import { EditorState, Transaction } from '@tiptap/pm/state' -import { Mappable } from '@tiptap/pm/transform' +import { Mappable, Transform } from '@tiptap/pm/transform' import { Decoration, DecorationAttrs, @@ -37,10 +37,26 @@ export type MaybeThisParameterType = Exclude extends (...args: any) => any ? ThisParameterType> : any export interface EditorEvents { - beforeCreate: { editor: Editor } - create: { editor: Editor } + beforeCreate: { + /** + * The editor instance + */ + editor: Editor + } + create: { + /** + * The editor instance + */ + editor: Editor + } contentError: { + /** + * The editor instance + */ editor: Editor + /** + * The error that occurred while parsing the content + */ error: Error /** * If called, will re-initialize the editor with the collaboration extension removed. @@ -48,35 +64,221 @@ export interface EditorEvents { */ disableCollaboration: () => void } - update: { editor: Editor; transaction: Transaction; appendedTransactions: Transaction[] } - selectionUpdate: { editor: Editor; transaction: Transaction } - beforeTransaction: { editor: Editor; transaction: Transaction; nextState: EditorState } - transaction: { editor: Editor; transaction: Transaction; appendedTransactions: Transaction[] } - focus: { editor: Editor; event: FocusEvent; transaction: Transaction } - blur: { editor: Editor; event: FocusEvent; transaction: Transaction } + update: { + /** + * The editor instance + */ + editor: Editor + /** + * The transaction that caused the update + */ + transaction: Transaction + /** + * Appended transactions that were added to the initial transaction by plugins + */ + appendedTransactions: Transaction[] + } + selectionUpdate: { + /** + * The editor instance + */ + editor: Editor + /** + * The transaction that caused the selection update + */ + transaction: Transaction + } + beforeTransaction: { + /** + * The editor instance + */ + editor: Editor + /** + * The transaction that will be applied + */ + transaction: Transaction + /** + * The next state of the editor after the transaction is applied + */ + nextState: EditorState + } + transaction: { + /** + * The editor instance + */ + editor: Editor + /** + * The initial transaction + */ + transaction: Transaction + /** + * Appended transactions that were added to the initial transaction by plugins + */ + appendedTransactions: Transaction[] + } + focus: { + /** + * The editor instance + */ + editor: Editor + /** + * The focus event + */ + event: FocusEvent + /** + * The transaction that caused the focus + */ + transaction: Transaction + } + blur: { + /** + * The editor instance + */ + editor: Editor + /** + * The focus event + */ + event: FocusEvent + /** + * The transaction that caused the blur + */ + transaction: Transaction + } destroy: void - paste: { editor: Editor; event: ClipboardEvent; slice: Slice } - drop: { editor: Editor; event: DragEvent; slice: Slice; moved: boolean } + paste: { + /** + * The editor instance + */ + editor: Editor + /** + * The clipboard event + */ + event: ClipboardEvent + /** + * The slice that was pasted + */ + slice: Slice + } + drop: { + /** + * The editor instance + */ + editor: Editor + /** + * The drag event + */ + event: DragEvent + /** + * The slice that was dropped + */ + slice: Slice + /** + * Whether the content was moved (true) or copied (false) + */ + moved: boolean + } + delete: { + /** + * The editor instance + */ + editor: Editor + /** + * The node which the deletion occurred in + * @note This can be a parent node of the deleted content + */ + node: ProseMirrorNode + /** + * Whether the deletion was partial (only a part of this node was deleted) + */ + partial: boolean + /** + * This is the position of the node in the document (before the deletion) + */ + pos: number + /** + * The new position of the node in the document (after the deletion) + */ + newPos: number + /** + * The range of the deleted content (before the deletion) + */ + deletedRange: Range + /** + * The new range of positions of where the deleted content was in the new document (after the deletion) + */ + newRange: Range + /** + * The transaction that caused the deletion + */ + transaction: Transaction + /** + * The combined transform (including all appended transactions) that caused the deletion + */ + combinedTransform: Transform + } } export type EnableRules = (AnyExtension | string)[] | boolean export interface EditorOptions { + /** + * The element or selector to bind the editor to + */ element: Element + /** + * The content of the editor (HTML, JSON, or a JSON array) + */ content: Content + /** + * The extensions to use + */ extensions: Extensions + /** + * Whether to inject base CSS styles + */ injectCSS: boolean + /** + * A nonce to use for CSP while injecting styles + */ injectNonce: string | undefined + /** + * The editor's initial focus position + */ autofocus: FocusPosition + /** + * Whether the editor is editable + */ editable: boolean + /** + * The editor's props + */ editorProps: EditorProps + /** + * The editor's content parser options + */ parseOptions: ParseOptions + /** + * The editor's core extension options + */ coreExtensionOptions?: { clipboardTextSerializer?: { blockSeparator?: string } + delete?: { + /** + * Whether the `delete` extension should be called asynchronously to avoid blocking the editor while processing deletions + * @default true deletion events are called asynchronously + */ + async?: boolean + } } + /** + * Whether to enable input rules behavior + */ enableInputRules: EnableRules + /** + * Whether to enable paste rules behavior + */ enablePasteRules: EnableRules /** * Determines whether core extensions are enabled. @@ -106,7 +308,8 @@ export interface EditorOptions { | 'keymap' | 'tabindex' | 'drop' - | 'paste', + | 'paste' + | 'delete', false > > @@ -117,25 +320,65 @@ export interface EditorOptions { * @default false */ enableContentCheck: boolean + /** + * Called before the editor is constructed. + */ onBeforeCreate: (props: EditorEvents['beforeCreate']) => void + /** + * Called after the editor is constructed. + */ onCreate: (props: EditorEvents['create']) => void /** * Called when the editor encounters an error while parsing the content. * Only enabled if `enableContentCheck` is `true`. */ onContentError: (props: EditorEvents['contentError']) => void + /** + * Called when the editor's content is updated. + */ onUpdate: (props: EditorEvents['update']) => void + /** + * Called when the editor's selection is updated. + */ onSelectionUpdate: (props: EditorEvents['selectionUpdate']) => void + /** + * Called after a transaction is applied to the editor. + */ onTransaction: (props: EditorEvents['transaction']) => void + /** + * Called on focus events. + */ onFocus: (props: EditorEvents['focus']) => void + /** + * Called on blur events. + */ onBlur: (props: EditorEvents['blur']) => void + /** + * Called when the editor is destroyed. + */ onDestroy: (props: EditorEvents['destroy']) => void + /** + * Called when content is pasted into the editor. + */ onPaste: (e: ClipboardEvent, slice: Slice) => void + /** + * Called when content is dropped into the editor. + */ onDrop: (e: DragEvent, slice: Slice, moved: boolean) => void + /** + * Called when content is deleted from the editor. + */ + onDelete: (props: EditorEvents['delete']) => void } +/** + * The editor's content as HTML + */ export type HTMLContent = string +/** + * Loosely describes a JSON representation of a Prosemirror document or node + */ export type JSONContent = { type?: string attrs?: Record diff --git a/packages/react/src/useEditor.ts b/packages/react/src/useEditor.ts index 1af5132c05..814c8499cd 100644 --- a/packages/react/src/useEditor.ts +++ b/packages/react/src/useEditor.ts @@ -144,6 +144,7 @@ class EditorInstanceManager { onContentError: (...args) => this.options.current.onContentError?.(...args), onDrop: (...args) => this.options.current.onDrop?.(...args), onPaste: (...args) => this.options.current.onPaste?.(...args), + onDelete: (...args) => this.options.current.onDelete?.(...args), } const editor = new Editor(optionsToApply) From 28c5418112a3aff6b7aff9a2fd2743ce9b6a9c7e Mon Sep 17 00:00:00 2001 From: Nick the Sick Date: Wed, 22 Jan 2025 13:21:28 +0100 Subject: [PATCH 084/629] chore: add changeset --- .changeset/healthy-pigs-work.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/healthy-pigs-work.md diff --git a/.changeset/healthy-pigs-work.md b/.changeset/healthy-pigs-work.md new file mode 100644 index 0000000000..bb1f5bbf11 --- /dev/null +++ b/.changeset/healthy-pigs-work.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': minor +--- + +Adds a new `delete` event which can detect content which has been deleted by the editor as a core extension From b2ab9821f800081d8582961114b2918b0a5353f1 Mon Sep 17 00:00:00 2001 From: Nick the Sick Date: Wed, 22 Jan 2025 13:22:58 +0100 Subject: [PATCH 085/629] chore: update pnpm-lock --- pnpm-lock.yaml | 9 --------- 1 file changed, 9 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6b75d03ba2..3ab946883c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -687,15 +687,6 @@ importers: specifier: ^3.0.0-next.4 version: link:../pm - packages/jsx: - dependencies: - '@tiptap/core': - specifier: ^3.0.0-next.3 - version: link:../core - '@tiptap/pm': - specifier: ^3.0.0-next.3 - version: link:../pm - packages/pm: dependencies: prosemirror-changeset: From 569ab6200e227c0cca3c810fd7506aaa3288a629 Mon Sep 17 00:00:00 2001 From: Nick the Sick Date: Wed, 22 Jan 2025 13:42:11 +0100 Subject: [PATCH 086/629] fix(core): re:`delete` automatically filter y-sync transactions, allow filtering out by transaction --- packages/core/src/Editor.ts | 4 +--- packages/core/src/extensions/delete.ts | 24 ++++++++---------------- packages/core/src/types.ts | 5 +++++ 3 files changed, 14 insertions(+), 19 deletions(-) diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 33c36d9987..530fdfaef0 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -300,9 +300,7 @@ export class Editor extends EventEmitter { Tabindex, Drop, Paste, - Delete.configure({ - async: this.options.coreExtensionOptions?.delete?.async, - }), + Delete, ].filter(ext => { if (typeof this.options.enableCoreExtensions === 'object') { return ( diff --git a/packages/core/src/extensions/delete.ts b/packages/core/src/extensions/delete.ts index 8bdf3db475..3cd7d14cc2 100644 --- a/packages/core/src/extensions/delete.ts +++ b/packages/core/src/extensions/delete.ts @@ -1,28 +1,20 @@ import { Extension } from '../Extension.js' import { combineTransactionSteps, getChangedRanges } from '../helpers/index.js' -export interface OnDeleteOptions { - /** - * Whether the callback should be called asynchronously to avoid blocking the editor - * @default false - */ - async?: boolean -} - /** * This extension allows you to be notified when the user deletes content you are interested in. */ -export const Delete = Extension.create({ +export const Delete = Extension.create({ name: 'delete', - addOptions() { - return { - async: false, - } - }, - onUpdate({ transaction, appendedTransactions }) { const callback = () => { + if ( + this.editor.options.coreExtensionOptions?.delete?.filterTransaction?.(transaction) ?? + transaction.getMeta('y-sync$') + ) { + return + } const nextTransaction = combineTransactionSteps(transaction.before, [transaction, ...appendedTransactions]) const changes = getChangedRanges(nextTransaction) @@ -50,7 +42,7 @@ export const Delete = Extension.create({ }) } - if (this.options.async) { + if (this.editor.options.coreExtensionOptions?.delete?.async ?? true) { setTimeout(callback, 0) } else { callback() diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 7375d76e79..1b3862a7a8 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -270,6 +270,11 @@ export interface EditorOptions { * @default true deletion events are called asynchronously */ async?: boolean + /** + * Allows filtering the transactions that are processed by the `delete` extension. + * If the function returns `true`, the transaction will be ignored. + */ + filterTransaction?: (transaction: Transaction) => boolean } } /** From 0e3207fc119491b7a24b6f7998d90af7b7a6803f Mon Sep 17 00:00:00 2001 From: Nick Perez Date: Wed, 22 Jan 2025 16:00:39 +0100 Subject: [PATCH 087/629] feat(core): add support for markviews (#5759) --- .changeset/gold-ads-own.md | 7 + .../ReactComponent/React/Component.tsx | 23 +++ .../ReactComponent/React/Extension.ts | 24 ++++ .../ReactComponent/React/index.html | 0 .../ReactComponent/React/index.spec.js | 32 +++++ .../ReactComponent/React/index.tsx | 24 ++++ .../ReactComponent/React/styles.scss | 116 +++++++++++++++ .../VueComponent/Vue/Component.vue | 58 ++++++++ .../VueComponent/Vue/Extension.ts | 24 ++++ .../VueComponent/Vue/index.html | 0 .../VueComponent/Vue/index.spec.js | 32 +++++ .../GuideMarkViews/VueComponent/Vue/index.vue | 135 ++++++++++++++++++ .../React/{Component.jsx => Component.tsx} | 4 +- .../React/{Extension.js => Extension.ts} | 0 .../React/{index.jsx => index.tsx} | 0 .../ReactComponentContext/React/Component.tsx | 24 ++++ .../ReactComponentContext/React/Context.ts | 5 + .../ReactComponentContext/React/Extension.ts | 36 +++++ .../ReactComponentContext/React/index.html | 0 .../ReactComponentContext/React/index.tsx | 33 +++++ .../ReactComponentContext/React/styles.scss | 116 +++++++++++++++ .../Marks/Bold/React/{index.jsx => index.tsx} | 2 + packages/core/src/Editor.ts | 1 + packages/core/src/ExtensionManager.ts | 46 +++++- packages/core/src/Mark.ts | 15 ++ packages/core/src/MarkView.ts | 66 +++++++++ packages/core/src/index.ts | 1 + packages/core/src/types.ts | 40 ++++++ packages/core/src/utilities/index.ts | 1 + packages/react/src/ReactMarkViewRenderer.tsx | 108 ++++++++++++++ packages/react/src/index.ts | 1 + packages/vue-3/src/VueMarkViewRenderer.ts | 112 +++++++++++++++ packages/vue-3/src/index.ts | 1 + 33 files changed, 1083 insertions(+), 4 deletions(-) create mode 100644 .changeset/gold-ads-own.md create mode 100644 demos/src/GuideMarkViews/ReactComponent/React/Component.tsx create mode 100644 demos/src/GuideMarkViews/ReactComponent/React/Extension.ts create mode 100644 demos/src/GuideMarkViews/ReactComponent/React/index.html create mode 100644 demos/src/GuideMarkViews/ReactComponent/React/index.spec.js create mode 100644 demos/src/GuideMarkViews/ReactComponent/React/index.tsx create mode 100644 demos/src/GuideMarkViews/ReactComponent/React/styles.scss create mode 100644 demos/src/GuideMarkViews/VueComponent/Vue/Component.vue create mode 100644 demos/src/GuideMarkViews/VueComponent/Vue/Extension.ts create mode 100644 demos/src/GuideMarkViews/VueComponent/Vue/index.html create mode 100644 demos/src/GuideMarkViews/VueComponent/Vue/index.spec.js create mode 100644 demos/src/GuideMarkViews/VueComponent/Vue/index.vue rename demos/src/GuideNodeViews/ReactComponent/React/{Component.jsx => Component.tsx} (79%) rename demos/src/GuideNodeViews/ReactComponent/React/{Extension.js => Extension.ts} (100%) rename demos/src/GuideNodeViews/ReactComponent/React/{index.jsx => index.tsx} (100%) create mode 100644 demos/src/GuideNodeViews/ReactComponentContext/React/Component.tsx create mode 100644 demos/src/GuideNodeViews/ReactComponentContext/React/Context.ts create mode 100644 demos/src/GuideNodeViews/ReactComponentContext/React/Extension.ts create mode 100644 demos/src/GuideNodeViews/ReactComponentContext/React/index.html create mode 100644 demos/src/GuideNodeViews/ReactComponentContext/React/index.tsx create mode 100644 demos/src/GuideNodeViews/ReactComponentContext/React/styles.scss rename demos/src/Marks/Bold/React/{index.jsx => index.tsx} (95%) create mode 100644 packages/core/src/MarkView.ts create mode 100644 packages/react/src/ReactMarkViewRenderer.tsx create mode 100644 packages/vue-3/src/VueMarkViewRenderer.ts diff --git a/.changeset/gold-ads-own.md b/.changeset/gold-ads-own.md new file mode 100644 index 0000000000..71fae0f284 --- /dev/null +++ b/.changeset/gold-ads-own.md @@ -0,0 +1,7 @@ +--- +'@tiptap/react': minor +'@tiptap/vue-3': minor +'@tiptap/core': minor +--- + +Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), with support for React & Vue-3 MarkViewRenderers diff --git a/demos/src/GuideMarkViews/ReactComponent/React/Component.tsx b/demos/src/GuideMarkViews/ReactComponent/React/Component.tsx new file mode 100644 index 0000000000..95d4f0da03 --- /dev/null +++ b/demos/src/GuideMarkViews/ReactComponent/React/Component.tsx @@ -0,0 +1,23 @@ +import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' +import React from 'react' + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) +} diff --git a/demos/src/GuideMarkViews/ReactComponent/React/Extension.ts b/demos/src/GuideMarkViews/ReactComponent/React/Extension.ts new file mode 100644 index 0000000000..1b8ae4f67c --- /dev/null +++ b/demos/src/GuideMarkViews/ReactComponent/React/Extension.ts @@ -0,0 +1,24 @@ +import { Mark } from '@tiptap/core' +import { ReactMarkViewRenderer } from '@tiptap/react' + +import Component from './Component.js' + +export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, +}) diff --git a/demos/src/GuideMarkViews/ReactComponent/React/index.html b/demos/src/GuideMarkViews/ReactComponent/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/GuideMarkViews/ReactComponent/React/index.spec.js b/demos/src/GuideMarkViews/ReactComponent/React/index.spec.js new file mode 100644 index 0000000000..a48487d03f --- /dev/null +++ b/demos/src/GuideMarkViews/ReactComponent/React/index.spec.js @@ -0,0 +1,32 @@ +/// + +context('/src/GuideMarkViews/ReactComponent/React/', () => { + before(() => { + cy.visit('/src/GuideMarkViews/ReactComponent/React/') + }) + + beforeEach(() => { + cy.get('.tiptap').then(([{ editor }]) => { + editor.commands.setContent('

Example Text

Mark View Text') + }) + cy.get('.tiptap').type('{selectall}') + }) + + it('should show the markview', () => { + cy.get('.tiptap').find('[data-test-id="mark-view"]').should('exist') + }) + + it('should allow clicking the button', () => { + cy.get('.tiptap') + .find('[data-test-id="mark-view"] button') + .should('contain', 'This button has been clicked 0 times.') + cy.get('.tiptap') + .find('[data-test-id="mark-view"] button') + .click() + .then(() => { + cy.get('.tiptap') + .find('[data-test-id="mark-view"] button') + .should('contain', 'This button has been clicked 1 times.') + }) + }) +}) diff --git a/demos/src/GuideMarkViews/ReactComponent/React/index.tsx b/demos/src/GuideMarkViews/ReactComponent/React/index.tsx new file mode 100644 index 0000000000..9ae9ee908f --- /dev/null +++ b/demos/src/GuideMarkViews/ReactComponent/React/index.tsx @@ -0,0 +1,24 @@ +import './styles.scss' + +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React from 'react' + +import ReactComponent from './Extension.js' + +export default () => { + const editor = useEditor({ + extensions: [StarterKit, ReactComponent], + content: ` +

+ This is still the text editor you’re used to, but enriched with node views. +

+ Sub-text +

+ Did you see that? That’s a React component. We are really living in the future. +

+ `, + }) + + return +} diff --git a/demos/src/GuideMarkViews/ReactComponent/React/styles.scss b/demos/src/GuideMarkViews/ReactComponent/React/styles.scss new file mode 100644 index 0000000000..3d00a3ea21 --- /dev/null +++ b/demos/src/GuideMarkViews/ReactComponent/React/styles.scss @@ -0,0 +1,116 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* List styles */ + ul, + ol { + padding: 0 1rem; + margin: 1.25rem 1rem 1.25rem 0.4rem; + + li p { + margin-top: 0.25em; + margin-bottom: 0.25em; + } + } + + /* Heading styles */ + h1, + h2, + h3, + h4, + h5, + h6 { + line-height: 1.1; + margin-top: 2.5rem; + text-wrap: pretty; + } + + h1, + h2 { + margin-top: 3.5rem; + margin-bottom: 1.5rem; + } + + h1 { + font-size: 1.4rem; + } + + h2 { + font-size: 1.2rem; + } + + h3 { + font-size: 1.1rem; + } + + h4, + h5, + h6 { + font-size: 1rem; + } + + /* Code and preformatted text styles */ + code { + background-color: var(--purple-light); + border-radius: 0.4rem; + color: var(--black); + font-size: 0.85rem; + padding: 0.25em 0.3em; + } + + pre { + background: var(--black); + border-radius: 0.5rem; + color: var(--white); + font-family: 'JetBrainsMono', monospace; + margin: 1.5rem 0; + padding: 0.75rem 1rem; + + code { + background: none; + color: inherit; + font-size: 0.8rem; + padding: 0; + } + } + + blockquote { + border-left: 3px solid var(--gray-3); + margin: 1.5rem 0; + padding-left: 1rem; + } + + hr { + border: none; + border-top: 1px solid var(--gray-2); + margin: 2rem 0; + } + + /* React component */ + .react-component { + background-color: var(--purple-light); + border: 2px solid var(--purple); + border-radius: 0.5rem; + margin: 2rem 0; + position: relative; + + label { + background-color: var(--purple); + border-radius: 0 0 0.5rem 0; + color: var(--white); + font-size: 0.75rem; + font-weight: bold; + padding: 0.25rem 0.5rem; + position: absolute; + top: 0; + } + + .content { + margin-top: 1.5rem; + padding: 1rem; + } + } +} diff --git a/demos/src/GuideMarkViews/VueComponent/Vue/Component.vue b/demos/src/GuideMarkViews/VueComponent/Vue/Component.vue new file mode 100644 index 0000000000..2055b9e7a5 --- /dev/null +++ b/demos/src/GuideMarkViews/VueComponent/Vue/Component.vue @@ -0,0 +1,58 @@ + + + + + diff --git a/demos/src/GuideMarkViews/VueComponent/Vue/Extension.ts b/demos/src/GuideMarkViews/VueComponent/Vue/Extension.ts new file mode 100644 index 0000000000..ca67fcc975 --- /dev/null +++ b/demos/src/GuideMarkViews/VueComponent/Vue/Extension.ts @@ -0,0 +1,24 @@ +import { Mark } from '@tiptap/core' +import { VueMarkViewRenderer } from '@tiptap/vue-3' + +import Component from './Component.vue' + +export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, +}) diff --git a/demos/src/GuideMarkViews/VueComponent/Vue/index.html b/demos/src/GuideMarkViews/VueComponent/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/GuideMarkViews/VueComponent/Vue/index.spec.js b/demos/src/GuideMarkViews/VueComponent/Vue/index.spec.js new file mode 100644 index 0000000000..7e129e897d --- /dev/null +++ b/demos/src/GuideMarkViews/VueComponent/Vue/index.spec.js @@ -0,0 +1,32 @@ +/// + +context('/src/GuideMarkViews/VueComponent/Vue/', () => { + before(() => { + cy.visit('/src/GuideMarkViews/VueComponent/Vue/') + }) + + beforeEach(() => { + cy.get('.tiptap').then(([{ editor }]) => { + editor.commands.setContent('

Example Text

Mark View Text') + }) + cy.get('.tiptap').type('{selectall}') + }) + + it('should show the markview', () => { + cy.get('.tiptap').find('[data-test-id="mark-view"]').should('exist') + }) + + it('should allow clicking the button', () => { + cy.get('.tiptap') + .find('[data-test-id="mark-view"] button') + .should('contain', 'This button has been clicked 0 times.') + cy.get('.tiptap') + .find('[data-test-id="mark-view"] button') + .click() + .then(() => { + cy.get('.tiptap') + .find('[data-test-id="mark-view"] button') + .should('contain', 'This button has been clicked 1 times.') + }) + }) +}) diff --git a/demos/src/GuideMarkViews/VueComponent/Vue/index.vue b/demos/src/GuideMarkViews/VueComponent/Vue/index.vue new file mode 100644 index 0000000000..b9e1f41d02 --- /dev/null +++ b/demos/src/GuideMarkViews/VueComponent/Vue/index.vue @@ -0,0 +1,135 @@ + + + + + diff --git a/demos/src/GuideNodeViews/ReactComponent/React/Component.jsx b/demos/src/GuideNodeViews/ReactComponent/React/Component.tsx similarity index 79% rename from demos/src/GuideNodeViews/ReactComponent/React/Component.jsx rename to demos/src/GuideNodeViews/ReactComponent/React/Component.tsx index 478a1c2286..10598cf7ba 100644 --- a/demos/src/GuideNodeViews/ReactComponent/React/Component.jsx +++ b/demos/src/GuideNodeViews/ReactComponent/React/Component.tsx @@ -1,7 +1,7 @@ -import { NodeViewWrapper } from '@tiptap/react' +import { NodeViewProps, NodeViewWrapper } from '@tiptap/react' import React from 'react' -export default props => { +export default (props: NodeViewProps) => { const increase = () => { props.updateAttributes({ count: props.node.attrs.count + 1, diff --git a/demos/src/GuideNodeViews/ReactComponent/React/Extension.js b/demos/src/GuideNodeViews/ReactComponent/React/Extension.ts similarity index 100% rename from demos/src/GuideNodeViews/ReactComponent/React/Extension.js rename to demos/src/GuideNodeViews/ReactComponent/React/Extension.ts diff --git a/demos/src/GuideNodeViews/ReactComponent/React/index.jsx b/demos/src/GuideNodeViews/ReactComponent/React/index.tsx similarity index 100% rename from demos/src/GuideNodeViews/ReactComponent/React/index.jsx rename to demos/src/GuideNodeViews/ReactComponent/React/index.tsx diff --git a/demos/src/GuideNodeViews/ReactComponentContext/React/Component.tsx b/demos/src/GuideNodeViews/ReactComponentContext/React/Component.tsx new file mode 100644 index 0000000000..fcbbf3a2db --- /dev/null +++ b/demos/src/GuideNodeViews/ReactComponentContext/React/Component.tsx @@ -0,0 +1,24 @@ +import { NodeViewProps, NodeViewWrapper } from '@tiptap/react' +import React, { useContext } from 'react' + +import { Context } from './Context.js' + +export default (props: NodeViewProps) => { + const { value } = useContext(Context) + + const increase = () => { + props.updateAttributes({ + count: props.node.attrs.count + 1, + }) + } + + return ( + + + +
+ +
+
+ ) +} diff --git a/demos/src/GuideNodeViews/ReactComponentContext/React/Context.ts b/demos/src/GuideNodeViews/ReactComponentContext/React/Context.ts new file mode 100644 index 0000000000..18e9fd7574 --- /dev/null +++ b/demos/src/GuideNodeViews/ReactComponentContext/React/Context.ts @@ -0,0 +1,5 @@ +import React from 'react' + +export const Context = React.createContext({ + value: 'this is the default value which should not show up', +}) diff --git a/demos/src/GuideNodeViews/ReactComponentContext/React/Extension.ts b/demos/src/GuideNodeViews/ReactComponentContext/React/Extension.ts new file mode 100644 index 0000000000..f51a5af7e5 --- /dev/null +++ b/demos/src/GuideNodeViews/ReactComponentContext/React/Extension.ts @@ -0,0 +1,36 @@ +import { mergeAttributes, Node } from '@tiptap/core' +import { ReactNodeViewRenderer } from '@tiptap/react' + +import Component from './Component.js' + +export default Node.create({ + name: 'reactComponent', + + group: 'block', + + atom: true, + + addAttributes() { + return { + count: { + default: 0, + }, + } + }, + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', mergeAttributes(HTMLAttributes)] + }, + + addNodeView() { + return ReactNodeViewRenderer(Component) + }, +}) diff --git a/demos/src/GuideNodeViews/ReactComponentContext/React/index.html b/demos/src/GuideNodeViews/ReactComponentContext/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/GuideNodeViews/ReactComponentContext/React/index.tsx b/demos/src/GuideNodeViews/ReactComponentContext/React/index.tsx new file mode 100644 index 0000000000..599065e15d --- /dev/null +++ b/demos/src/GuideNodeViews/ReactComponentContext/React/index.tsx @@ -0,0 +1,33 @@ +import './styles.scss' + +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React from 'react' + +import { Context } from './Context.js' +import ReactComponent from './Extension.js' + +const contextValue = { + value: 'Hi from react context!', +} + +export default () => { + const editor = useEditor({ + extensions: [StarterKit, ReactComponent], + content: ` +

+ This is still the text editor you’re used to, but enriched with node views. +

+ +

+ Did you see that? That’s a React component. We are really living in the future. +

+ `, + }) + + return ( + + + + ) +} diff --git a/demos/src/GuideNodeViews/ReactComponentContext/React/styles.scss b/demos/src/GuideNodeViews/ReactComponentContext/React/styles.scss new file mode 100644 index 0000000000..3d00a3ea21 --- /dev/null +++ b/demos/src/GuideNodeViews/ReactComponentContext/React/styles.scss @@ -0,0 +1,116 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* List styles */ + ul, + ol { + padding: 0 1rem; + margin: 1.25rem 1rem 1.25rem 0.4rem; + + li p { + margin-top: 0.25em; + margin-bottom: 0.25em; + } + } + + /* Heading styles */ + h1, + h2, + h3, + h4, + h5, + h6 { + line-height: 1.1; + margin-top: 2.5rem; + text-wrap: pretty; + } + + h1, + h2 { + margin-top: 3.5rem; + margin-bottom: 1.5rem; + } + + h1 { + font-size: 1.4rem; + } + + h2 { + font-size: 1.2rem; + } + + h3 { + font-size: 1.1rem; + } + + h4, + h5, + h6 { + font-size: 1rem; + } + + /* Code and preformatted text styles */ + code { + background-color: var(--purple-light); + border-radius: 0.4rem; + color: var(--black); + font-size: 0.85rem; + padding: 0.25em 0.3em; + } + + pre { + background: var(--black); + border-radius: 0.5rem; + color: var(--white); + font-family: 'JetBrainsMono', monospace; + margin: 1.5rem 0; + padding: 0.75rem 1rem; + + code { + background: none; + color: inherit; + font-size: 0.8rem; + padding: 0; + } + } + + blockquote { + border-left: 3px solid var(--gray-3); + margin: 1.5rem 0; + padding-left: 1rem; + } + + hr { + border: none; + border-top: 1px solid var(--gray-2); + margin: 2rem 0; + } + + /* React component */ + .react-component { + background-color: var(--purple-light); + border: 2px solid var(--purple); + border-radius: 0.5rem; + margin: 2rem 0; + position: relative; + + label { + background-color: var(--purple); + border-radius: 0 0 0.5rem 0; + color: var(--white); + font-size: 0.75rem; + font-weight: bold; + padding: 0.25rem 0.5rem; + position: absolute; + top: 0; + } + + .content { + margin-top: 1.5rem; + padding: 1rem; + } + } +} diff --git a/demos/src/Marks/Bold/React/index.jsx b/demos/src/Marks/Bold/React/index.tsx similarity index 95% rename from demos/src/Marks/Bold/React/index.jsx rename to demos/src/Marks/Bold/React/index.tsx index d522796420..dfe701c7ec 100644 --- a/demos/src/Marks/Bold/React/index.jsx +++ b/demos/src/Marks/Bold/React/index.tsx @@ -19,6 +19,8 @@ export default () => {

Cool, isn’t it!?

Up to font weight 999!!!

`, + shouldRerenderOnTransaction: true, + immediatelyRender: true, }) if (!editor) { diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 530fdfaef0..03cbbb1786 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -415,6 +415,7 @@ export class Editor extends EventEmitter { } this.view.setProps({ + markViews: this.extensionManager.markViews, nodeViews: this.extensionManager.nodeViews, }) } diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts index 36c0bfbc5f..0083479ba3 100644 --- a/packages/core/src/ExtensionManager.ts +++ b/packages/core/src/ExtensionManager.ts @@ -1,7 +1,7 @@ import { keymap } from '@tiptap/pm/keymap' import { Schema } from '@tiptap/pm/model' import { Plugin } from '@tiptap/pm/state' -import { NodeViewConstructor } from '@tiptap/pm/view' +import { MarkViewConstructor, NodeViewConstructor } from '@tiptap/pm/view' import type { Editor } from './Editor.js' import { @@ -17,7 +17,7 @@ import { sortExtensions, splitExtensions, } from './helpers/index.js' -import type { NodeConfig } from './index.js' +import { type MarkConfig, type NodeConfig, getMarkType } from './index.js' import { InputRule, inputRulesPlugin } from './InputRule.js' import { Mark } from './Mark.js' import { PasteRule, pasteRulesPlugin } from './PasteRule.js' @@ -226,6 +226,48 @@ export class ExtensionManager { ) } + get markViews(): Record { + const { editor } = this + const { markExtensions } = splitExtensions(this.extensions) + + return Object.fromEntries( + markExtensions + .filter(extension => !!getExtensionField(extension, 'addMarkView')) + .map(extension => { + const extensionAttributes = this.attributes.filter(attribute => attribute.type === extension.name) + const context = { + name: extension.name, + options: extension.options, + storage: extension.storage, + editor, + type: getMarkType(extension.name, this.schema), + } + const addMarkView = getExtensionField(extension, 'addMarkView', context) + + if (!addMarkView) { + return [] + } + + const markView: MarkViewConstructor = (mark, view, inline) => { + const HTMLAttributes = getRenderedAttributes(mark, extensionAttributes) + + return addMarkView()({ + // pass-through + mark, + view, + inline, + // tiptap-specific + editor, + extension, + HTMLAttributes, + }) + } + + return [extension.name, markView] + }), + ) + } + /** * Go through all extensions, create extension storages & setup marks * & bind editor event listener. diff --git a/packages/core/src/Mark.ts b/packages/core/src/Mark.ts index c8441947b2..ae93e78c3d 100644 --- a/packages/core/src/Mark.ts +++ b/packages/core/src/Mark.ts @@ -14,6 +14,7 @@ import { Extensions, GlobalAttributes, KeyboardShortcutCommand, + MarkViewRenderer, ParentConfig, RawCommands, } from './types.js' @@ -417,6 +418,20 @@ declare module '@tiptap/core' { ) => void) | null + /** + * Node View + */ + addMarkView?: + | ((this: { + name: string + options: Options + storage: Storage + editor: Editor + type: MarkType + parent: ParentConfig>['addMarkView'] + }) => MarkViewRenderer) + | null + /** * Keep mark after split node */ diff --git a/packages/core/src/MarkView.ts b/packages/core/src/MarkView.ts new file mode 100644 index 0000000000..0ca5cc298e --- /dev/null +++ b/packages/core/src/MarkView.ts @@ -0,0 +1,66 @@ +import { ViewMutationRecord } from '@tiptap/pm/view' + +import { Editor } from './Editor.js' +import { MarkViewProps, MarkViewRendererOptions } from './types.js' +import { isAndroid, isiOS } from './utilities/index.js' + +export class MarkView { + component: Component + editor: Editor + options: Options + mark: MarkViewProps['mark'] + HTMLAttributes: MarkViewProps['HTMLAttributes'] + + constructor(component: Component, props: MarkViewProps, options?: Partial) { + this.component = component + this.editor = props.editor + this.options = { ...options } as Options + this.mark = props.mark + this.HTMLAttributes = props.HTMLAttributes + } + + get dom(): HTMLElement { + return this.editor.view.dom + } + + get contentDOM(): HTMLElement | null { + return null + } + + ignoreMutation(mutation: ViewMutationRecord): boolean { + if (!this.dom || !this.contentDOM) { + return true + } + + if (typeof this.options.ignoreMutation === 'function') { + return this.options.ignoreMutation({ mutation }) + } + + if (mutation.type === 'selection') { + return false + } + + if ( + this.dom.contains(mutation.target) && + mutation.type === 'childList' && + (isiOS() || isAndroid()) && + this.editor.isFocused + ) { + const changedNodes = [...Array.from(mutation.addedNodes), ...Array.from(mutation.removedNodes)] as HTMLElement[] + + if (changedNodes.every(node => node.isContentEditable)) { + return false + } + } + + if (this.contentDOM === mutation.target && mutation.type === 'attributes') { + return true + } + + if (this.contentDOM.contains(mutation.target)) { + return false + } + + return true + } +} diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 5ccf348512..ecd5d73d8a 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -7,6 +7,7 @@ export * from './InputRule.js' export * from './inputRules/index.js' export { createElement, Fragment, createElement as h } from './jsx-runtime.js' export * from './Mark.js' +export * from './MarkView.js' export * from './Node.js' export * from './NodePos.js' export * from './NodeView.js' diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 1b3862a7a8..84651e0387 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -6,6 +6,8 @@ import { DecorationAttrs, EditorProps, EditorView, + MarkView, + MarkViewConstructor, NodeView, NodeViewConstructor, ViewMutationRecord, @@ -594,6 +596,44 @@ export interface NodeViewRendererProps { export type NodeViewRenderer = (props: NodeViewRendererProps) => NodeView +// eslint-disable-next-line @typescript-eslint/no-empty-object-type +export interface MarkViewProps extends MarkViewRendererProps {} + +export interface MarkViewRendererProps { + // pass-through from prosemirror + /** + * The node that is being rendered. + */ + mark: Parameters[0] + /** + * The editor's view. + */ + view: Parameters[1] + /** + * indicates whether the mark's content is inline + */ + inline: Parameters[2] + // tiptap-specific + /** + * The editor instance. + */ + editor: Editor + /** + * The extension that is responsible for the mark. + */ + extension: Mark + /** + * The HTML attributes that should be added to the mark's DOM element. + */ + HTMLAttributes: Record +} + +export type MarkViewRenderer = (props: MarkViewRendererProps) => MarkView + +export interface MarkViewRendererOptions { + ignoreMutation: ((props: { mutation: ViewMutationRecord }) => boolean) | null +} + export type AnyCommands = Record Command> export type UnionCommands = UnionToIntersection< diff --git a/packages/core/src/utilities/index.ts b/packages/core/src/utilities/index.ts index 36e9053720..f5016d0f29 100644 --- a/packages/core/src/utilities/index.ts +++ b/packages/core/src/utilities/index.ts @@ -5,6 +5,7 @@ export * from './elementFromString.js' export * from './escapeForRegEx.js' export * from './findDuplicates.js' export * from './fromString.js' +export * from './isAndroid.js' export * from './isEmptyObject.js' export * from './isFunction.js' export * from './isiOS.js' diff --git a/packages/react/src/ReactMarkViewRenderer.tsx b/packages/react/src/ReactMarkViewRenderer.tsx new file mode 100644 index 0000000000..f1d5e7b9c1 --- /dev/null +++ b/packages/react/src/ReactMarkViewRenderer.tsx @@ -0,0 +1,108 @@ +/* eslint-disable @typescript-eslint/no-shadow */ +import { MarkView, MarkViewProps, MarkViewRenderer, MarkViewRendererOptions } from '@tiptap/core' +import React from 'react' + +// import { flushSync } from 'react-dom' +import { ReactRenderer } from './ReactRenderer.js' + +export interface MarkViewContextProps { + markViewContentRef: (element: HTMLElement | null) => void +} +export const ReactMarkViewContext = React.createContext({ + markViewContentRef: () => { + // do nothing + }, +}) + +export type MarkViewContentProps = { + as?: NoInfer +} & React.ComponentProps + +export const MarkViewContent: React.FC = props => { + const Tag = props.as || 'span' + const { markViewContentRef } = React.useContext(ReactMarkViewContext) + + return ( + // @ts-ignore + + ) +} + +export interface ReactMarkViewRendererOptions extends MarkViewRendererOptions { + /** + * The tag name of the element wrapping the React component. + */ + as?: string + className?: string + attrs?: { [key: string]: string } +} + +export class ReactMarkView extends MarkView, ReactMarkViewRendererOptions> { + renderer: ReactRenderer + contentDOMElement: HTMLElement | null + didMountContentDomElement = false + + constructor( + component: React.ComponentType, + props: MarkViewProps, + options?: Partial, + ) { + super(component, props, options) + + const { as = 'span', attrs, className = '' } = options || {} + const componentProps = props satisfies MarkViewProps + + this.contentDOMElement = document.createElement('span') + + const markViewContentRef: MarkViewContextProps['markViewContentRef'] = el => { + if (el && this.contentDOMElement && el.firstChild !== this.contentDOMElement) { + el.appendChild(this.contentDOMElement) + this.didMountContentDomElement = true + } + } + const context: MarkViewContextProps = { + markViewContentRef, + } + + // For performance reasons, we memoize the provider component + // And all of the things it requires are declared outside of the component, so it doesn't need to re-render + const ReactMarkViewProvider: React.FunctionComponent = React.memo(componentProps => { + return ( + + {React.createElement(component, componentProps)} + + ) + }) + + ReactMarkViewProvider.displayName = 'ReactNodeView' + + this.renderer = new ReactRenderer(ReactMarkViewProvider, { + editor: props.editor, + props: componentProps, + as, + className: `mark-${props.mark.type.name} ${className}`.trim(), + }) + + if (attrs) { + this.renderer.updateAttributes(attrs) + } + } + + get dom() { + return this.renderer.element as HTMLElement + } + + get contentDOM() { + if (!this.didMountContentDomElement) { + return null + } + return this.contentDOMElement as HTMLElement + } +} + +export function ReactMarkViewRenderer( + component: React.ComponentType, + options: Partial = {}, +): MarkViewRenderer { + return props => new ReactMarkView(component, props, options) +} diff --git a/packages/react/src/index.ts b/packages/react/src/index.ts index 45a029a2ee..e93812815b 100644 --- a/packages/react/src/index.ts +++ b/packages/react/src/index.ts @@ -4,6 +4,7 @@ export * from './EditorContent.js' export * from './FloatingMenu.js' export * from './NodeViewContent.js' export * from './NodeViewWrapper.js' +export * from './ReactMarkViewRenderer.js' export * from './ReactNodeViewRenderer.js' export * from './ReactRenderer.js' export * from './useEditor.js' diff --git a/packages/vue-3/src/VueMarkViewRenderer.ts b/packages/vue-3/src/VueMarkViewRenderer.ts new file mode 100644 index 0000000000..67a04d1429 --- /dev/null +++ b/packages/vue-3/src/VueMarkViewRenderer.ts @@ -0,0 +1,112 @@ +/* eslint-disable no-underscore-dangle */ +import { MarkView, MarkViewProps, MarkViewRenderer, MarkViewRendererOptions } from '@tiptap/core' +import { Component, defineComponent, h, PropType } from 'vue' + +import { Editor } from './Editor.js' +import { VueRenderer } from './VueRenderer.js' + +export interface VueMarkViewRendererOptions extends MarkViewRendererOptions { + as?: string + className?: string + attrs?: { [key: string]: string } +} + +export const markViewProps = { + editor: { + type: Object as PropType, + required: true as const, + }, + mark: { + type: Object as PropType, + required: true as const, + }, + extension: { + type: Object as PropType, + required: true as const, + }, + inline: { + type: Boolean as PropType, + required: true as const, + }, + view: { + type: Object as PropType, + required: true as const, + }, +} + +export const MarkViewContent = defineComponent({ + name: 'MarkViewContent', + + props: { + as: { + type: String, + default: 'span', + }, + }, + + render() { + return h(this.as, { + style: { + whiteSpace: 'inherit', + }, + 'data-mark-view-content': '', + }) + }, +}) + +export class VueMarkView extends MarkView { + renderer: VueRenderer + + constructor(component: Component, props: MarkViewProps, options?: Partial) { + super(component, props, options) + + // Create extended component with provide + const extendedComponent = defineComponent({ + extends: { ...component }, + props: Object.keys(props), + template: (this.component as any).template, + setup: reactiveProps => { + return (component as any).setup?.(reactiveProps, { + expose: () => undefined, + }) + }, + // Add support for scoped styles + __scopeId: (component as any).__scopeId, + __cssModules: (component as any).__cssModules, + __name: (component as any).__name, + __file: (component as any).__file, + }) + this.renderer = new VueRenderer(extendedComponent, { + editor: this.editor, + props, + }) + } + + get dom() { + return this.renderer.element as HTMLElement + } + + get contentDOM() { + return this.dom.querySelector('[data-mark-view-content]') as HTMLElement | null + } + + destroy() { + this.renderer.destroy() + } +} + +export function VueMarkViewRenderer( + component: Component, + options: Partial = {}, +): MarkViewRenderer { + return props => { + // try to get the parent component + // this is important for vue devtools to show the component hierarchy correctly + // maybe it’s `undefined` because isn’t rendered yet + if (!(props.editor as Editor).contentComponent) { + return {} as unknown as MarkView + } + + return new VueMarkView(component, props, options) + } +} diff --git a/packages/vue-3/src/index.ts b/packages/vue-3/src/index.ts index bf7833f2b2..52bbfae540 100644 --- a/packages/vue-3/src/index.ts +++ b/packages/vue-3/src/index.ts @@ -5,6 +5,7 @@ export * from './FloatingMenu.js' export * from './NodeViewContent.js' export * from './NodeViewWrapper.js' export * from './useEditor.js' +export * from './VueMarkViewRenderer.js' export * from './VueNodeViewRenderer.js' export * from './VueRenderer.js' export * from '@tiptap/core' From 3e5ff5ce804e1ee2d2567a692044d8df1cb30cdd Mon Sep 17 00:00:00 2001 From: Nick Perez Date: Thu, 23 Jan 2025 09:37:45 +0100 Subject: [PATCH 088/629] build: move to latest cypress (#6041) --- demos/src/Commands/Cut/React/index.spec.js | 5 +- .../InsertContent/React/index.spec.js | 5 +- .../React/index.spec.js | 2 +- .../Commands/SetContent/React/index.spec.js | 2 +- .../Accessibility/React/index.spec.js | 2 +- .../AutolinkValidation/React/index.spec.js | 2 +- .../AutolinkValidation/Vue/index.spec.js | 2 +- demos/src/Examples/Book/React/index.spec.js | 2 +- demos/src/Examples/Book/Vue/index.spec.js | 2 +- .../Examples/CSSModules/React/index.spec.js | 2 +- .../src/Examples/CSSModules/Vue/index.spec.js | 2 +- .../CodeBlockLanguage/React/index.spec.js | 2 +- .../CodeBlockLanguage/Vue/index.spec.js | 2 +- .../src/Examples/Default/React/index.spec.js | 69 +++++--- .../Default/React/{index.jsx => index.tsx} | 53 ++----- .../src/Examples/Default/Svelte/index.spec.js | 89 ++++++++--- demos/src/Examples/Default/Vue/index.spec.js | 38 +++-- .../Examples/Formatting/React/index.spec.js | 2 +- .../src/Examples/Formatting/Vue/index.spec.js | 2 +- .../MarkdownShortcuts/React/index.spec.js | 2 +- .../MarkdownShortcuts/Vue/index.spec.js | 2 +- demos/src/Examples/Menus/React/index.spec.js | 2 +- demos/src/Examples/Menus/Vue/index.spec.js | 2 +- .../src/Examples/Minimal/React/index.spec.js | 2 +- demos/src/Examples/Minimal/Vue/index.spec.js | 2 +- demos/src/Examples/Savvy/React/index.spec.js | 2 +- demos/src/Examples/Savvy/Vue/index.spec.js | 2 +- .../React/index.spec.js | 2 +- demos/src/Examples/Tables/React/index.spec.js | 2 +- demos/src/Examples/Tables/Vue/index.spec.js | 2 +- demos/src/Examples/Tasks/React/index.spec.js | 2 +- demos/src/Examples/Tasks/Vue/index.spec.js | 2 +- .../CollaborationAnnotation/Vue/index.spec.js | 2 +- .../Experiments/Commands/Vue/index.spec.js | 2 +- .../IsolatingClear/React/index.spec.js | 127 +-------------- .../MultipleEditors/Vue/index.spec.js | 2 +- .../BackgroundColor/React/index.spec.js | 2 +- .../BackgroundColor/Vue/index.spec.js | 2 +- .../Collaboration/React/index.spec.js | 2 +- .../Collaboration/Vue/index.spec.js | 2 +- .../CollaborationCursor/React/index.spec.js | 2 +- .../CollaborationCursor/Vue/index.spec.js | 2 +- .../React/index.spec.js | 6 +- .../CollaborationWithMenus/Vue/index.spec.js | 2 +- .../src/Extensions/Color/React/index.spec.js | 2 +- demos/src/Extensions/Color/Vue/index.spec.js | 2 +- .../Extensions/Dropcursor/React/index.spec.js | 2 +- .../Extensions/Dropcursor/Vue/index.spec.js | 2 +- .../FloatingMenu/React/index.spec.js | 2 +- .../src/Extensions/Focus/React/index.spec.js | 2 +- demos/src/Extensions/Focus/Vue/index.spec.js | 2 +- .../Extensions/FontFamily/React/index.spec.js | 2 +- .../Extensions/FontFamily/Vue/index.spec.js | 2 +- .../Extensions/FontSize/React/index.spec.js | 2 +- .../src/Extensions/FontSize/Vue/index.spec.js | 2 +- .../Extensions/Gapcursor/React/index.spec.js | 2 +- .../Extensions/Gapcursor/Vue/index.spec.js | 2 +- .../Extensions/LineHeight/React/index.spec.js | 2 +- .../Extensions/LineHeight/Vue/index.spec.js | 2 +- .../Extensions/TextAlign/React/index.spec.js | 2 +- .../Extensions/TextAlign/Vue/index.spec.js | 2 +- .../Extensions/Typography/React/index.spec.js | 2 +- .../Extensions/Typography/Vue/index.spec.js | 2 +- .../React/index.spec.js | 2 +- .../TypographyWithOverrides/Vue/index.spec.js | 2 +- .../ExportHTML/React/index.spec.js | 2 +- .../GuideContent/ExportHTML/Vue/index.spec.js | 2 +- .../ExportJSON/React/index.spec.js | 2 +- .../GuideContent/ExportJSON/Vue/index.spec.js | 2 +- .../GenerateHTML/React/index.spec.js | 2 +- .../GenerateHTML/Vue/index.spec.js | 2 +- .../GenerateJSON/React/index.spec.js | 2 +- .../GenerateJSON/Vue/index.spec.js | 2 +- .../GenerateText/React/index.spec.js | 2 +- .../GenerateText/Vue/index.spec.js | 2 +- .../GuideContent/ReadOnly/React/index.spec.js | 2 +- .../GuideContent/ReadOnly/Vue/index.spec.js | 2 +- .../StaticRenderHTML/React/index.spec.js | 2 +- .../StaticRenderHTML/Vue/index.spec.js | 2 +- .../StaticRenderReact/React/index.spec.js | 2 +- .../VModel/Vue/index.spec.js | 2 +- demos/src/Marks/Bold/React/index.spec.js | 2 +- demos/src/Marks/Bold/Vue/index.spec.js | 2 +- demos/src/Marks/Code/React/index.spec.js | 2 +- demos/src/Marks/Code/Vue/index.spec.js | 2 +- demos/src/Marks/Highlight/React/index.spec.js | 2 +- demos/src/Marks/Highlight/Vue/index.spec.js | 2 +- demos/src/Marks/Italic/React/index.spec.js | 2 +- demos/src/Marks/Italic/Vue/index.spec.js | 2 +- demos/src/Marks/Link/React/index.spec.js | 2 +- demos/src/Marks/Link/Vue/index.spec.js | 2 +- demos/src/Marks/Strike/React/index.spec.js | 2 +- demos/src/Marks/Strike/Vue/index.spec.js | 2 +- demos/src/Marks/Subscript/React/index.spec.js | 2 +- demos/src/Marks/Subscript/Vue/index.spec.js | 2 +- .../src/Marks/Superscript/React/index.spec.js | 2 +- demos/src/Marks/Superscript/Vue/index.spec.js | 2 +- demos/src/Marks/TextStyle/React/index.spec.js | 2 +- demos/src/Marks/TextStyle/Vue/index.spec.js | 2 +- demos/src/Marks/Underline/React/index.spec.js | 2 +- demos/src/Marks/Underline/Vue/index.spec.js | 2 +- .../src/Nodes/Blockquote/React/index.spec.js | 2 +- demos/src/Nodes/Blockquote/Vue/index.spec.js | 2 +- .../src/Nodes/BulletList/React/index.spec.js | 2 +- demos/src/Nodes/BulletList/Vue/index.spec.js | 2 +- demos/src/Nodes/CodeBlock/React/index.spec.js | 2 +- demos/src/Nodes/CodeBlock/Vue/index.spec.js | 2 +- demos/src/Nodes/Document/React/index.spec.js | 2 +- demos/src/Nodes/Document/Vue/index.spec.js | 2 +- demos/src/Nodes/HardBreak/React/index.spec.js | 2 +- demos/src/Nodes/HardBreak/Vue/index.spec.js | 2 +- demos/src/Nodes/Heading/React/index.spec.js | 2 +- demos/src/Nodes/Heading/Vue/index.spec.js | 2 +- .../Nodes/HorizontalRule/React/index.spec.js | 2 +- .../Nodes/HorizontalRule/Vue/index.spec.js | 2 +- demos/src/Nodes/Image/React/index.spec.js | 2 +- demos/src/Nodes/Image/Vue/index.spec.js | 2 +- demos/src/Nodes/ListItem/React/index.spec.js | 2 +- demos/src/Nodes/ListItem/Vue/index.spec.js | 2 +- demos/src/Nodes/Mention/React/index.spec.js | 2 +- demos/src/Nodes/Mention/Vue/index.spec.js | 2 +- .../src/Nodes/OrderedList/React/index.spec.js | 2 +- demos/src/Nodes/OrderedList/Vue/index.spec.js | 2 +- demos/src/Nodes/Paragraph/React/index.spec.js | 2 +- demos/src/Nodes/Paragraph/Vue/index.spec.js | 2 +- demos/src/Nodes/Table/React/index.spec.js | 2 +- demos/src/Nodes/Table/Vue/index.spec.js | 2 +- demos/src/Nodes/TaskItem/React/index.spec.js | 2 +- demos/src/Nodes/TaskItem/Vue/index.spec.js | 2 +- demos/src/Nodes/TaskList/React/index.spec.js | 2 +- demos/src/Nodes/TaskList/Vue/index.spec.js | 2 +- demos/src/Nodes/Text/React/index.spec.js | 2 +- demos/src/Nodes/Text/Vue/index.spec.js | 2 +- demos/src/Nodes/Youtube/React/index.spec.js | 2 +- demos/src/Nodes/Youtube/Vue/index.spec.js | 2 +- demos/vite.config.ts | 9 +- package.json | 4 +- packages/react/src/FloatingMenu.tsx | 2 +- pnpm-lock.yaml | 150 ++++++++---------- 139 files changed, 379 insertions(+), 432 deletions(-) rename demos/src/Examples/Default/React/{index.jsx => index.tsx} (83%) diff --git a/demos/src/Commands/Cut/React/index.spec.js b/demos/src/Commands/Cut/React/index.spec.js index aca221e742..0921e44f8a 100644 --- a/demos/src/Commands/Cut/React/index.spec.js +++ b/demos/src/Commands/Cut/React/index.spec.js @@ -1,9 +1,6 @@ context('/src/Commands/Cut/React/', () => { - before(() => { - cy.visit('/src/Commands/Cut/React/') - }) - beforeEach(() => { + cy.visit('/src/Commands/Cut/React/') cy.get('.tiptap').then(([{ editor }]) => { editor.commands.setContent('

Example Text

') cy.get('.tiptap').type('{selectall}') diff --git a/demos/src/Commands/InsertContent/React/index.spec.js b/demos/src/Commands/InsertContent/React/index.spec.js index c41a15b6af..55521bbf33 100644 --- a/demos/src/Commands/InsertContent/React/index.spec.js +++ b/demos/src/Commands/InsertContent/React/index.spec.js @@ -1,9 +1,6 @@ context('/src/Commands/InsertContent/React/', () => { - before(() => { - cy.visit('/src/Commands/InsertContent/React/') - }) - beforeEach(() => { + cy.visit('/src/Commands/InsertContent/React/') cy.get('.tiptap').type('{selectall}{backspace}') }) diff --git a/demos/src/Commands/InsertContentApplyingRules/React/index.spec.js b/demos/src/Commands/InsertContentApplyingRules/React/index.spec.js index 0cda50ace5..06ed52f282 100644 --- a/demos/src/Commands/InsertContentApplyingRules/React/index.spec.js +++ b/demos/src/Commands/InsertContentApplyingRules/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Commands/InsertContentApplyingRules/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Commands/InsertContentApplyingRules/React/') }) diff --git a/demos/src/Commands/SetContent/React/index.spec.js b/demos/src/Commands/SetContent/React/index.spec.js index d20573158c..66fb20d32e 100644 --- a/demos/src/Commands/SetContent/React/index.spec.js +++ b/demos/src/Commands/SetContent/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Commands/SetContent/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Commands/SetContent/React/') }) diff --git a/demos/src/Examples/Accessibility/React/index.spec.js b/demos/src/Examples/Accessibility/React/index.spec.js index 8e272ea0f7..da9ae57d83 100644 --- a/demos/src/Examples/Accessibility/React/index.spec.js +++ b/demos/src/Examples/Accessibility/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/AutolinkValidation/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/AutolinkValidation/React/') }) diff --git a/demos/src/Examples/AutolinkValidation/React/index.spec.js b/demos/src/Examples/AutolinkValidation/React/index.spec.js index 8e272ea0f7..da9ae57d83 100644 --- a/demos/src/Examples/AutolinkValidation/React/index.spec.js +++ b/demos/src/Examples/AutolinkValidation/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/AutolinkValidation/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/AutolinkValidation/React/') }) diff --git a/demos/src/Examples/AutolinkValidation/Vue/index.spec.js b/demos/src/Examples/AutolinkValidation/Vue/index.spec.js index f19376f78f..f7ec8eebb1 100644 --- a/demos/src/Examples/AutolinkValidation/Vue/index.spec.js +++ b/demos/src/Examples/AutolinkValidation/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/AutolinkValidation/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/AutolinkValidation/Vue/') }) diff --git a/demos/src/Examples/Book/React/index.spec.js b/demos/src/Examples/Book/React/index.spec.js index 0da6ce4c6b..928f0d48b3 100644 --- a/demos/src/Examples/Book/React/index.spec.js +++ b/demos/src/Examples/Book/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Book/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Book/React/') }) diff --git a/demos/src/Examples/Book/Vue/index.spec.js b/demos/src/Examples/Book/Vue/index.spec.js index c5d0e84b50..66a126fff7 100644 --- a/demos/src/Examples/Book/Vue/index.spec.js +++ b/demos/src/Examples/Book/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Book/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Book/Vue/') }) diff --git a/demos/src/Examples/CSSModules/React/index.spec.js b/demos/src/Examples/CSSModules/React/index.spec.js index b5f939fd5a..53383f2218 100644 --- a/demos/src/Examples/CSSModules/React/index.spec.js +++ b/demos/src/Examples/CSSModules/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/CSSModules/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/CSSModules/React/') }) diff --git a/demos/src/Examples/CSSModules/Vue/index.spec.js b/demos/src/Examples/CSSModules/Vue/index.spec.js index 02b286b085..9d0f8d6ee1 100644 --- a/demos/src/Examples/CSSModules/Vue/index.spec.js +++ b/demos/src/Examples/CSSModules/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/CSSModules/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/CSSModules/Vue/') }) diff --git a/demos/src/Examples/CodeBlockLanguage/React/index.spec.js b/demos/src/Examples/CodeBlockLanguage/React/index.spec.js index 3fddcb186d..7db699d755 100644 --- a/demos/src/Examples/CodeBlockLanguage/React/index.spec.js +++ b/demos/src/Examples/CodeBlockLanguage/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/CodeBlockLanguage/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/CodeBlockLanguage/React/') }) diff --git a/demos/src/Examples/CodeBlockLanguage/Vue/index.spec.js b/demos/src/Examples/CodeBlockLanguage/Vue/index.spec.js index 33ded87e1a..5d4b0b108f 100644 --- a/demos/src/Examples/CodeBlockLanguage/Vue/index.spec.js +++ b/demos/src/Examples/CodeBlockLanguage/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/CodeBlockLanguage/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/CodeBlockLanguage/Vue/') }) diff --git a/demos/src/Examples/Default/React/index.spec.js b/demos/src/Examples/Default/React/index.spec.js index d78f4ba34a..3f0762e354 100644 --- a/demos/src/Examples/Default/React/index.spec.js +++ b/demos/src/Examples/Default/React/index.spec.js @@ -1,9 +1,7 @@ context('/src/Examples/Default/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Default/React/') - }) - beforeEach(() => { cy.get('.tiptap').then(([{ editor }]) => { editor.commands.setContent('

Example Text

') cy.get('.tiptap').type('{selectall}') @@ -25,37 +23,46 @@ context('/src/Examples/Default/React/', () => { { label: 'Strike', tag: 's' }, ] - buttonMarks.forEach(m => { - it(`should disable ${m.label} when the code tag is enabled for cursor`, () => { + it(`should disable bold, italic, strike when the code tag is enabled for cursor`, () => { + buttonMarks.forEach(m => { cy.get('.tiptap').type('{selectall}Hello world') cy.get('button').contains('Code').click() cy.get('button').contains(m.label).should('be.disabled') }) + }) - it(`should enable ${m.label} when the code tag is disabled for cursor`, () => { + it(`should enable bold, italic, strike when the code tag is disabled for cursor`, () => { + buttonMarks.forEach(m => { cy.get('.tiptap').type('{selectall}Hello world') cy.get('button').contains('Code').click() cy.get('button').contains('Code').click() cy.get('button').contains(m.label).should('not.be.disabled') }) + }) - it(`should disable ${m.label} when the code tag is enabled for selection`, () => { + it(`should disable bold, italic, strike when the code tag is enabled for selection`, () => { + buttonMarks.forEach(m => { + cy.get('.tiptap').type('{selectall}{backspace}') cy.get('.tiptap').type('{selectall}Hello world{selectall}') cy.get('button').contains('Code').click() cy.get('button').contains(m.label).should('be.disabled') }) + }) - it(`should enable ${m.label} when the code tag is disabled for selection`, () => { + it(`should enable bold, italic, strike when the code tag is disabled for selection`, () => { + buttonMarks.forEach(m => { cy.get('.tiptap').type('{selectall}Hello world{selectall}') cy.get('button').contains('Code').click() cy.get('button').contains('Code').click() cy.get('button').contains(m.label).should('not.be.disabled') }) + }) - it(`should apply ${m.label} when the button is pressed`, () => { - cy.get('.tiptap').type('{selectall}Hello world') + it(`should apply bold, italic, strike when the button is pressed`, () => { + buttonMarks.forEach(m => { + cy.get('.tiptap').type('{selectall}{backspace}') + cy.get('.tiptap').type('{selectall}Hello world{selectall}') cy.get('button').contains('Paragraph').click() - cy.get('.tiptap').type('{selectall}') cy.get('button').contains(m.label).click() cy.get(`.tiptap ${m.tag}`).should('exist').should('have.text', 'Hello world') }) @@ -94,8 +101,8 @@ context('/src/Examples/Default/React/', () => { { label: 'Blockquote', tag: 'blockquote' }, ] - buttonNodes.forEach(n => { - it(`should set ${n.label} when the button is pressed`, () => { + it(`should set the correct type when the button is pressed`, () => { + buttonNodes.forEach(n => { cy.get('button').contains('Paragraph').click() cy.get('.tiptap').type('{selectall}Hello world{selectall}') @@ -127,16 +134,36 @@ context('/src/Examples/Default/React/', () => { }) it('should undo', () => { - cy.get('.tiptap').type('{selectall}{backspace}') - cy.get('button').contains('Undo').click() - cy.get('.tiptap').should('contain', 'Example Text') + cy.get('.tiptap') + .then(([{ editor }]) => { + editor.commands.setContent('

Example Text

') + + cy.get('.tiptap').type('{selectall}{backspace}') + return new Promise(resolve => { + setTimeout(resolve, 500) + }) + }) + .then(() => { + cy.get('button').contains('Undo').click() + cy.get('.tiptap').should('contain', 'Example Text') + }) }) it('should redo', () => { - cy.get('.tiptap').type('{selectall}{backspace}') - cy.get('button').contains('Undo').click() - cy.get('.tiptap').should('contain', 'Example Text') - cy.get('button').contains('Redo').click() - cy.get('.tiptap').should('not.contain', 'Example Text') + cy.get('.tiptap') + .then(([{ editor }]) => { + editor.commands.setContent('

Example Text

') + + return new Promise(resolve => { + setTimeout(resolve, 500) + }) + }) + .then(() => { + cy.get('.tiptap').type('{selectall}{backspace}') + cy.get('button').contains('Undo').click() + cy.get('.tiptap').should('contain', 'Example Text') + cy.get('button').contains('Redo').click() + cy.get('.tiptap').should('not.contain', 'Example Text') + }) }) }) diff --git a/demos/src/Examples/Default/React/index.jsx b/demos/src/Examples/Default/React/index.tsx similarity index 83% rename from demos/src/Examples/Default/React/index.jsx rename to demos/src/Examples/Default/React/index.tsx index 6f410db6fb..8d17d38364 100644 --- a/demos/src/Examples/Default/React/index.jsx +++ b/demos/src/Examples/Default/React/index.tsx @@ -1,14 +1,14 @@ import './styles.scss' -import ListItem from '@tiptap/extension-list-item' -import { Color , TextStyle } from '@tiptap/extension-text-style' -import { EditorProvider, useCurrentEditor, useEditorState } from '@tiptap/react' +import { TextStyleKit } from '@tiptap/extension-text-style' +import { Editor, EditorContent, useEditor, useEditorState } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React from 'react' -const MenuBar = () => { - const { editor } = useCurrentEditor() +const extensions = [TextStyleKit, StarterKit] +function MenuBar({ editor }: { editor: Editor }) { + // Read the current editor's state, and re-render the component when it changes const editorState = useEditorState({ editor, selector: ctx => { @@ -35,15 +35,10 @@ const MenuBar = () => { isBlockquote: ctx.editor.isActive('blockquote'), canUndo: ctx.editor.can().chain().focus().undo().run(), canRedo: ctx.editor.can().chain().focus().redo().run(), - isPurple: editor.isActive('textStyle', { color: '#958DF1' }), } }, }) - if (!editor) { - return null - } - return (
@@ -151,33 +146,15 @@ const MenuBar = () => { -
) } -const extensions = [ - Color.configure({ types: [TextStyle.name, ListItem.name] }), - TextStyle.configure({ types: [ListItem.name] }), - StarterKit.configure({ - bulletList: { - keepMarks: true, - keepAttributes: false, // TODO : Making this as `false` becase marks are not preserved when I try to preserve attrs, awaiting a bit of help - }, - orderedList: { - keepMarks: true, - keepAttributes: false, // TODO : Making this as `false` becase marks are not preserved when I try to preserve attrs, awaiting a bit of help - }, - }), -] - -const content = ` +export default () => { + const editor = useEditor({ + extensions, + content: `

Hi there,

@@ -206,8 +183,12 @@ const content = `
— Mom -` - -export default () => { - return } extensions={extensions} content={content}> +`, + }) + return ( +
+ + +
+ ) } diff --git a/demos/src/Examples/Default/Svelte/index.spec.js b/demos/src/Examples/Default/Svelte/index.spec.js index 45bee0132a..7856a7b2b4 100644 --- a/demos/src/Examples/Default/Svelte/index.spec.js +++ b/demos/src/Examples/Default/Svelte/index.spec.js @@ -1,9 +1,7 @@ -context('/src/Examples/Default/React/', () => { - before(() => { - cy.visit('/src/Examples/Default/React/') - }) - +context('/src/Examples/Default/Svelte/', () => { beforeEach(() => { + cy.visit('/src/Examples/Default/Svelte/') + cy.get('.tiptap').then(([{ editor }]) => { editor.commands.setContent('

Example Text

') cy.get('.tiptap').type('{selectall}') @@ -25,11 +23,46 @@ context('/src/Examples/Default/React/', () => { { label: 'Strike', tag: 's' }, ] - buttonMarks.forEach(m => { - it(`should apply ${m.label} when the button is pressed`, () => { + it(`should disable bold, italic, strike when the code tag is enabled for cursor`, () => { + buttonMarks.forEach(m => { + cy.get('.tiptap').type('{selectall}Hello world') + cy.get('button').contains('Code').click() + cy.get('button').contains(m.label).should('be.disabled') + }) + }) + + it(`should enable bold, italic, strike when the code tag is disabled for cursor`, () => { + buttonMarks.forEach(m => { cy.get('.tiptap').type('{selectall}Hello world') + cy.get('button').contains('Code').click() + cy.get('button').contains('Code').click() + cy.get('button').contains(m.label).should('not.be.disabled') + }) + }) + + it(`should disable bold, italic, strike when the code tag is enabled for selection`, () => { + buttonMarks.forEach(m => { + cy.get('.tiptap').type('{selectall}{backspace}') + cy.get('.tiptap').type('{selectall}Hello world{selectall}') + cy.get('button').contains('Code').click() + cy.get('button').contains(m.label).should('be.disabled') + }) + }) + + it(`should enable bold, italic, strike when the code tag is disabled for selection`, () => { + buttonMarks.forEach(m => { + cy.get('.tiptap').type('{selectall}Hello world{selectall}') + cy.get('button').contains('Code').click() + cy.get('button').contains('Code').click() + cy.get('button').contains(m.label).should('not.be.disabled') + }) + }) + + it(`should apply bold, italic, strike when the button is pressed`, () => { + buttonMarks.forEach(m => { + cy.get('.tiptap').type('{selectall}{backspace}') + cy.get('.tiptap').type('{selectall}Hello world{selectall}') cy.get('button').contains('Paragraph').click() - cy.get('.tiptap').type('{selectall}') cy.get('button').contains(m.label).click() cy.get(`.tiptap ${m.tag}`).should('exist').should('have.text', 'Hello world') }) @@ -68,8 +101,8 @@ context('/src/Examples/Default/React/', () => { { label: 'Blockquote', tag: 'blockquote' }, ] - buttonNodes.forEach(n => { - it(`should set ${n.label} when the button is pressed`, () => { + it(`should set the correct type when the button is pressed`, () => { + buttonNodes.forEach(n => { cy.get('button').contains('Paragraph').click() cy.get('.tiptap').type('{selectall}Hello world{selectall}') @@ -101,16 +134,36 @@ context('/src/Examples/Default/React/', () => { }) it('should undo', () => { - cy.get('.tiptap').type('{selectall}{backspace}') - cy.get('button').contains('Undo').click() - cy.get('.tiptap').should('contain', 'Example Text') + cy.get('.tiptap') + .then(([{ editor }]) => { + editor.commands.setContent('

Example Text

') + + cy.get('.tiptap').type('{selectall}{backspace}') + return new Promise(resolve => { + setTimeout(resolve, 500) + }) + }) + .then(() => { + cy.get('button').contains('Undo').click() + cy.get('.tiptap').should('contain', 'Example Text') + }) }) it('should redo', () => { - cy.get('.tiptap').type('{selectall}{backspace}') - cy.get('button').contains('Undo').click() - cy.get('.tiptap').should('contain', 'Example Text') - cy.get('button').contains('Redo').click() - cy.get('.tiptap').should('not.contain', 'Example Text') + cy.get('.tiptap') + .then(([{ editor }]) => { + editor.commands.setContent('

Example Text

') + + return new Promise(resolve => { + setTimeout(resolve, 500) + }) + }) + .then(() => { + cy.get('.tiptap').type('{selectall}{backspace}') + cy.get('button').contains('Undo').click() + cy.get('.tiptap').should('contain', 'Example Text') + cy.get('button').contains('Redo').click() + cy.get('.tiptap').should('not.contain', 'Example Text') + }) }) }) diff --git a/demos/src/Examples/Default/Vue/index.spec.js b/demos/src/Examples/Default/Vue/index.spec.js index 8dd31af4f7..c2b3879dbb 100644 --- a/demos/src/Examples/Default/Vue/index.spec.js +++ b/demos/src/Examples/Default/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Default/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Default/Vue/') }) @@ -101,16 +101,36 @@ context('/src/Examples/Default/Vue/', () => { }) it('should undo', () => { - cy.get('.tiptap').type('{selectall}{backspace}') - cy.get('button').contains('Undo').click() - cy.get('.tiptap').should('contain', 'Example Text') + cy.get('.tiptap') + .then(([{ editor }]) => { + editor.commands.setContent('

Example Text

') + + cy.get('.tiptap').type('{selectall}{backspace}') + return new Promise(resolve => { + setTimeout(resolve, 500) + }) + }) + .then(() => { + cy.get('button').contains('Undo').click() + cy.get('.tiptap').should('contain', 'Example Text') + }) }) it('should redo', () => { - cy.get('.tiptap').type('{selectall}{backspace}') - cy.get('button').contains('Undo').click() - cy.get('.tiptap').should('contain', 'Example Text') - cy.get('button').contains('Redo').click() - cy.get('.tiptap').should('not.contain', 'Example Text') + cy.get('.tiptap') + .then(([{ editor }]) => { + editor.commands.setContent('

Example Text

') + + return new Promise(resolve => { + setTimeout(resolve, 500) + }) + }) + .then(() => { + cy.get('.tiptap').type('{selectall}{backspace}') + cy.get('button').contains('Undo').click() + cy.get('.tiptap').should('contain', 'Example Text') + cy.get('button').contains('Redo').click() + cy.get('.tiptap').should('not.contain', 'Example Text') + }) }) }) diff --git a/demos/src/Examples/Formatting/React/index.spec.js b/demos/src/Examples/Formatting/React/index.spec.js index 29d7740b6b..ce3c5594e7 100644 --- a/demos/src/Examples/Formatting/React/index.spec.js +++ b/demos/src/Examples/Formatting/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Formatting/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Formatting/React/') }) diff --git a/demos/src/Examples/Formatting/Vue/index.spec.js b/demos/src/Examples/Formatting/Vue/index.spec.js index e0f0d46d56..2d5f8bed6c 100644 --- a/demos/src/Examples/Formatting/Vue/index.spec.js +++ b/demos/src/Examples/Formatting/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Formatting/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Formatting/Vue/') }) diff --git a/demos/src/Examples/MarkdownShortcuts/React/index.spec.js b/demos/src/Examples/MarkdownShortcuts/React/index.spec.js index 5e87b40c2d..1d9c9e259f 100644 --- a/demos/src/Examples/MarkdownShortcuts/React/index.spec.js +++ b/demos/src/Examples/MarkdownShortcuts/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/MarkdownShortcuts/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/MarkdownShortcuts/React/') }) diff --git a/demos/src/Examples/MarkdownShortcuts/Vue/index.spec.js b/demos/src/Examples/MarkdownShortcuts/Vue/index.spec.js index b56d524a4b..53dc2bb2f3 100644 --- a/demos/src/Examples/MarkdownShortcuts/Vue/index.spec.js +++ b/demos/src/Examples/MarkdownShortcuts/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/MarkdownShortcuts/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/MarkdownShortcuts/Vue/') }) diff --git a/demos/src/Examples/Menus/React/index.spec.js b/demos/src/Examples/Menus/React/index.spec.js index 96e7329c31..57d10ec87c 100644 --- a/demos/src/Examples/Menus/React/index.spec.js +++ b/demos/src/Examples/Menus/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Menus/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Menus/React/') }) diff --git a/demos/src/Examples/Menus/Vue/index.spec.js b/demos/src/Examples/Menus/Vue/index.spec.js index c8de30b3b7..c19da2c1d0 100644 --- a/demos/src/Examples/Menus/Vue/index.spec.js +++ b/demos/src/Examples/Menus/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Menus/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Menus/Vue/') }) diff --git a/demos/src/Examples/Minimal/React/index.spec.js b/demos/src/Examples/Minimal/React/index.spec.js index bc0722d0d2..d156e8f438 100644 --- a/demos/src/Examples/Minimal/React/index.spec.js +++ b/demos/src/Examples/Minimal/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Minimal/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Minimal/React/') }) diff --git a/demos/src/Examples/Minimal/Vue/index.spec.js b/demos/src/Examples/Minimal/Vue/index.spec.js index 49349bcdff..1c392f580b 100644 --- a/demos/src/Examples/Minimal/Vue/index.spec.js +++ b/demos/src/Examples/Minimal/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Minimal/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Minimal/Vue/') }) diff --git a/demos/src/Examples/Savvy/React/index.spec.js b/demos/src/Examples/Savvy/React/index.spec.js index 1cef895d20..4731809c17 100644 --- a/demos/src/Examples/Savvy/React/index.spec.js +++ b/demos/src/Examples/Savvy/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Savvy/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Savvy/React/') }) diff --git a/demos/src/Examples/Savvy/Vue/index.spec.js b/demos/src/Examples/Savvy/Vue/index.spec.js index f0f610d545..6254388279 100644 --- a/demos/src/Examples/Savvy/Vue/index.spec.js +++ b/demos/src/Examples/Savvy/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Savvy/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Savvy/Vue/') }) diff --git a/demos/src/Examples/StaticRenderingAdvanced/React/index.spec.js b/demos/src/Examples/StaticRenderingAdvanced/React/index.spec.js index bb8d0c1e73..2e47998b2f 100644 --- a/demos/src/Examples/StaticRenderingAdvanced/React/index.spec.js +++ b/demos/src/Examples/StaticRenderingAdvanced/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/StaticRenderingAdvanced/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/StaticRenderingAdvanced/React/') }) diff --git a/demos/src/Examples/Tables/React/index.spec.js b/demos/src/Examples/Tables/React/index.spec.js index 438496402a..852d276c61 100644 --- a/demos/src/Examples/Tables/React/index.spec.js +++ b/demos/src/Examples/Tables/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Tables/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Tables/React/') }) diff --git a/demos/src/Examples/Tables/Vue/index.spec.js b/demos/src/Examples/Tables/Vue/index.spec.js index 84fc955124..2d6bb047c0 100644 --- a/demos/src/Examples/Tables/Vue/index.spec.js +++ b/demos/src/Examples/Tables/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Tables/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Tables/Vue/') }) diff --git a/demos/src/Examples/Tasks/React/index.spec.js b/demos/src/Examples/Tasks/React/index.spec.js index 60ac56bfc5..9c55adec45 100644 --- a/demos/src/Examples/Tasks/React/index.spec.js +++ b/demos/src/Examples/Tasks/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Tasks/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Tasks/React/') }) diff --git a/demos/src/Examples/Tasks/Vue/index.spec.js b/demos/src/Examples/Tasks/Vue/index.spec.js index eeea16358b..d2d97e41f3 100644 --- a/demos/src/Examples/Tasks/Vue/index.spec.js +++ b/demos/src/Examples/Tasks/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Tasks/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Tasks/Vue/') }) diff --git a/demos/src/Experiments/CollaborationAnnotation/Vue/index.spec.js b/demos/src/Experiments/CollaborationAnnotation/Vue/index.spec.js index e0e7fc2ee4..a34c1b6cef 100644 --- a/demos/src/Experiments/CollaborationAnnotation/Vue/index.spec.js +++ b/demos/src/Experiments/CollaborationAnnotation/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Experiments/CollaborationAnnotation/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Experiments/CollaborationAnnotation/Vue/') }) diff --git a/demos/src/Experiments/Commands/Vue/index.spec.js b/demos/src/Experiments/Commands/Vue/index.spec.js index 6d548ed02c..4e864c8b45 100644 --- a/demos/src/Experiments/Commands/Vue/index.spec.js +++ b/demos/src/Experiments/Commands/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Experiments/Commands/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Experiments/Commands/Vue/') }) diff --git a/demos/src/Experiments/IsolatingClear/React/index.spec.js b/demos/src/Experiments/IsolatingClear/React/index.spec.js index d78f4ba34a..087d1b1100 100644 --- a/demos/src/Experiments/IsolatingClear/React/index.spec.js +++ b/demos/src/Experiments/IsolatingClear/React/index.spec.js @@ -1,6 +1,6 @@ -context('/src/Examples/Default/React/', () => { - before(() => { - cy.visit('/src/Examples/Default/React/') +context('/src/Experiments/IsolatingClear/React/', () => { + beforeEach(() => { + cy.visit('/src/Experiments/IsolatingClear/React/') }) beforeEach(() => { @@ -18,125 +18,4 @@ context('/src/Examples/Default/React/', () => { .find('p') .should('contain', 'Example Text') }) - - const buttonMarks = [ - { label: 'Bold', tag: 'strong' }, - { label: 'Italic', tag: 'em' }, - { label: 'Strike', tag: 's' }, - ] - - buttonMarks.forEach(m => { - it(`should disable ${m.label} when the code tag is enabled for cursor`, () => { - cy.get('.tiptap').type('{selectall}Hello world') - cy.get('button').contains('Code').click() - cy.get('button').contains(m.label).should('be.disabled') - }) - - it(`should enable ${m.label} when the code tag is disabled for cursor`, () => { - cy.get('.tiptap').type('{selectall}Hello world') - cy.get('button').contains('Code').click() - cy.get('button').contains('Code').click() - cy.get('button').contains(m.label).should('not.be.disabled') - }) - - it(`should disable ${m.label} when the code tag is enabled for selection`, () => { - cy.get('.tiptap').type('{selectall}Hello world{selectall}') - cy.get('button').contains('Code').click() - cy.get('button').contains(m.label).should('be.disabled') - }) - - it(`should enable ${m.label} when the code tag is disabled for selection`, () => { - cy.get('.tiptap').type('{selectall}Hello world{selectall}') - cy.get('button').contains('Code').click() - cy.get('button').contains('Code').click() - cy.get('button').contains(m.label).should('not.be.disabled') - }) - - it(`should apply ${m.label} when the button is pressed`, () => { - cy.get('.tiptap').type('{selectall}Hello world') - cy.get('button').contains('Paragraph').click() - cy.get('.tiptap').type('{selectall}') - cy.get('button').contains(m.label).click() - cy.get(`.tiptap ${m.tag}`).should('exist').should('have.text', 'Hello world') - }) - }) - - it('should clear marks when the button is pressed', () => { - cy.get('.tiptap').type('{selectall}Hello world') - cy.get('button').contains('Paragraph').click() - cy.get('.tiptap').type('{selectall}') - cy.get('button').contains('Bold').click() - cy.get('.tiptap strong').should('exist').should('have.text', 'Hello world') - cy.get('button').contains('Clear marks').click() - cy.get('.tiptap strong').should('not.exist') - }) - - it('should clear nodes when the button is pressed', () => { - cy.get('.tiptap').type('{selectall}Hello world') - cy.get('button').contains('Bullet list').click() - cy.get('.tiptap ul').should('exist').should('have.text', 'Hello world') - cy.get('.tiptap').type('{enter}A second item{enter}A third item{selectall}') - cy.get('button').contains('Clear nodes').click() - cy.get('.tiptap ul').should('not.exist') - cy.get('.tiptap p').should('have.length', 4) - }) - - const buttonNodes = [ - { label: 'H1', tag: 'h1' }, - { label: 'H2', tag: 'h2' }, - { label: 'H3', tag: 'h3' }, - { label: 'H4', tag: 'h4' }, - { label: 'H5', tag: 'h5' }, - { label: 'H6', tag: 'h6' }, - { label: 'Bullet list', tag: 'ul' }, - { label: 'Ordered list', tag: 'ol' }, - { label: 'Code block', tag: 'pre code' }, - { label: 'Blockquote', tag: 'blockquote' }, - ] - - buttonNodes.forEach(n => { - it(`should set ${n.label} when the button is pressed`, () => { - cy.get('button').contains('Paragraph').click() - cy.get('.tiptap').type('{selectall}Hello world{selectall}') - - cy.get('button').contains(n.label).click() - cy.get(`.tiptap ${n.tag}`).should('exist').should('have.text', 'Hello world') - cy.get('button').contains(n.label).click() - cy.get(`.tiptap ${n.tag}`).should('not.exist') - }) - }) - - it('should add a hr when on the same line as a node', () => { - cy.get('.tiptap').type('{rightArrow}') - cy.get('button').contains('Horizontal rule').click() - cy.get('.tiptap hr').should('exist') - cy.get('.tiptap h1').should('exist') - }) - - it('should add a hr when on a new line', () => { - cy.get('.tiptap').type('{rightArrow}{enter}') - cy.get('button').contains('Horizontal rule').click() - cy.get('.tiptap hr').should('exist') - cy.get('.tiptap h1').should('exist') - }) - - it('should add a br', () => { - cy.get('.tiptap').type('{rightArrow}') - cy.get('button').contains('Hard break').click() - cy.get('.tiptap br').should('exist') - }) - - it('should undo', () => { - cy.get('.tiptap').type('{selectall}{backspace}') - cy.get('button').contains('Undo').click() - cy.get('.tiptap').should('contain', 'Example Text') - }) - - it('should redo', () => { - cy.get('.tiptap').type('{selectall}{backspace}') - cy.get('button').contains('Undo').click() - cy.get('.tiptap').should('contain', 'Example Text') - cy.get('button').contains('Redo').click() - cy.get('.tiptap').should('not.contain', 'Example Text') - }) }) diff --git a/demos/src/Experiments/MultipleEditors/Vue/index.spec.js b/demos/src/Experiments/MultipleEditors/Vue/index.spec.js index 7b5b596743..7e177342a8 100644 --- a/demos/src/Experiments/MultipleEditors/Vue/index.spec.js +++ b/demos/src/Experiments/MultipleEditors/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/MultipleEditors/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/MultipleEditors/Vue/') }) diff --git a/demos/src/Extensions/BackgroundColor/React/index.spec.js b/demos/src/Extensions/BackgroundColor/React/index.spec.js index b297b7a9d5..96f8154140 100644 --- a/demos/src/Extensions/BackgroundColor/React/index.spec.js +++ b/demos/src/Extensions/BackgroundColor/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/BackgroundColor/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/BackgroundColor/React/') }) diff --git a/demos/src/Extensions/BackgroundColor/Vue/index.spec.js b/demos/src/Extensions/BackgroundColor/Vue/index.spec.js index d2337eb5dc..f11565066f 100644 --- a/demos/src/Extensions/BackgroundColor/Vue/index.spec.js +++ b/demos/src/Extensions/BackgroundColor/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/BackgroundColor/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/BackgroundColor/Vue/') }) diff --git a/demos/src/Extensions/Collaboration/React/index.spec.js b/demos/src/Extensions/Collaboration/React/index.spec.js index 82d87a676b..51140ce7eb 100644 --- a/demos/src/Extensions/Collaboration/React/index.spec.js +++ b/demos/src/Extensions/Collaboration/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/Collaboration/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/Collaboration/React/') }) diff --git a/demos/src/Extensions/Collaboration/Vue/index.spec.js b/demos/src/Extensions/Collaboration/Vue/index.spec.js index a865f97f74..4643167bfe 100644 --- a/demos/src/Extensions/Collaboration/Vue/index.spec.js +++ b/demos/src/Extensions/Collaboration/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/Collaboration/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/Collaboration/Vue/') }) diff --git a/demos/src/Extensions/CollaborationCursor/React/index.spec.js b/demos/src/Extensions/CollaborationCursor/React/index.spec.js index e4d2379c68..bfa04ac74d 100644 --- a/demos/src/Extensions/CollaborationCursor/React/index.spec.js +++ b/demos/src/Extensions/CollaborationCursor/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/CollaborationCursor/React', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/CollaborationCursor/React/') }) diff --git a/demos/src/Extensions/CollaborationCursor/Vue/index.spec.js b/demos/src/Extensions/CollaborationCursor/Vue/index.spec.js index fa83d114f9..ca805938ce 100644 --- a/demos/src/Extensions/CollaborationCursor/Vue/index.spec.js +++ b/demos/src/Extensions/CollaborationCursor/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/CollaborationCursor/Vue', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/CollaborationCursor/Vue/') }) diff --git a/demos/src/Extensions/CollaborationWithMenus/React/index.spec.js b/demos/src/Extensions/CollaborationWithMenus/React/index.spec.js index fca788454b..44dceae8ef 100644 --- a/demos/src/Extensions/CollaborationWithMenus/React/index.spec.js +++ b/demos/src/Extensions/CollaborationWithMenus/React/index.spec.js @@ -1,5 +1,6 @@ +/// context('/src/Extensions/CollaborationWithMenus/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/CollaborationWithMenus/React/') }) @@ -11,7 +12,8 @@ context('/src/Extensions/CollaborationWithMenus/React/', () => { }) it('should have menu plugins initiated', () => { - cy.get('.tiptap').then(([{ editor }]) => { + cy.get('.tiptap').then(async ([{ editor }]) => { + await cy.wait(100) const bubbleMenuPlugin = editor.view.state.plugins.find(plugin => plugin.spec.key?.key === 'bubbleMenu$') const floatingMenuPlugin = editor.view.state.plugins.find(plugin => plugin.spec.key?.key === 'floatingMenu$') const hasBothMenuPluginsLoaded = !!bubbleMenuPlugin && !!floatingMenuPlugin diff --git a/demos/src/Extensions/CollaborationWithMenus/Vue/index.spec.js b/demos/src/Extensions/CollaborationWithMenus/Vue/index.spec.js index cec1d27c47..385a03e48a 100644 --- a/demos/src/Extensions/CollaborationWithMenus/Vue/index.spec.js +++ b/demos/src/Extensions/CollaborationWithMenus/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/CollaborationWithMenus/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/CollaborationWithMenus/Vue/') }) diff --git a/demos/src/Extensions/Color/React/index.spec.js b/demos/src/Extensions/Color/React/index.spec.js index 6d8d249fa0..26a86d9b74 100644 --- a/demos/src/Extensions/Color/React/index.spec.js +++ b/demos/src/Extensions/Color/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/Color/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/Color/React/') }) diff --git a/demos/src/Extensions/Color/Vue/index.spec.js b/demos/src/Extensions/Color/Vue/index.spec.js index f10524f7c2..0ed3c79e03 100644 --- a/demos/src/Extensions/Color/Vue/index.spec.js +++ b/demos/src/Extensions/Color/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/Color/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/Color/Vue/') }) diff --git a/demos/src/Extensions/Dropcursor/React/index.spec.js b/demos/src/Extensions/Dropcursor/React/index.spec.js index 406ed1f8ca..8ce9a2eb10 100644 --- a/demos/src/Extensions/Dropcursor/React/index.spec.js +++ b/demos/src/Extensions/Dropcursor/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Dropcursor/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Dropcursor/React/') }) diff --git a/demos/src/Extensions/Dropcursor/Vue/index.spec.js b/demos/src/Extensions/Dropcursor/Vue/index.spec.js index 357ab1371f..cae05a8646 100644 --- a/demos/src/Extensions/Dropcursor/Vue/index.spec.js +++ b/demos/src/Extensions/Dropcursor/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Dropcursor/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Dropcursor/Vue/') }) diff --git a/demos/src/Extensions/FloatingMenu/React/index.spec.js b/demos/src/Extensions/FloatingMenu/React/index.spec.js index 033c026c32..c58d0ee5ab 100644 --- a/demos/src/Extensions/FloatingMenu/React/index.spec.js +++ b/demos/src/Extensions/FloatingMenu/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/FloatingMenu/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/FloatingMenu/React/') }) diff --git a/demos/src/Extensions/Focus/React/index.spec.js b/demos/src/Extensions/Focus/React/index.spec.js index 883b342edf..e6f0cf357b 100644 --- a/demos/src/Extensions/Focus/React/index.spec.js +++ b/demos/src/Extensions/Focus/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/Focus/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/Focus/React/') }) diff --git a/demos/src/Extensions/Focus/Vue/index.spec.js b/demos/src/Extensions/Focus/Vue/index.spec.js index 181e6598db..303fb498a1 100644 --- a/demos/src/Extensions/Focus/Vue/index.spec.js +++ b/demos/src/Extensions/Focus/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/Focus/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/Focus/Vue/') }) diff --git a/demos/src/Extensions/FontFamily/React/index.spec.js b/demos/src/Extensions/FontFamily/React/index.spec.js index d7b6d7ff92..34d22df758 100644 --- a/demos/src/Extensions/FontFamily/React/index.spec.js +++ b/demos/src/Extensions/FontFamily/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/FontFamily/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/FontFamily/React/') }) diff --git a/demos/src/Extensions/FontFamily/Vue/index.spec.js b/demos/src/Extensions/FontFamily/Vue/index.spec.js index 5bc6e744c3..890d7d82c2 100644 --- a/demos/src/Extensions/FontFamily/Vue/index.spec.js +++ b/demos/src/Extensions/FontFamily/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/FontFamily/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/FontFamily/Vue/') }) diff --git a/demos/src/Extensions/FontSize/React/index.spec.js b/demos/src/Extensions/FontSize/React/index.spec.js index 3daad4277d..56adcb4b61 100644 --- a/demos/src/Extensions/FontSize/React/index.spec.js +++ b/demos/src/Extensions/FontSize/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/FontSize/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/FontSize/React/') }) diff --git a/demos/src/Extensions/FontSize/Vue/index.spec.js b/demos/src/Extensions/FontSize/Vue/index.spec.js index 0f57c58570..426c28345b 100644 --- a/demos/src/Extensions/FontSize/Vue/index.spec.js +++ b/demos/src/Extensions/FontSize/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/FontSize/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/FontSize/Vue/') }) diff --git a/demos/src/Extensions/Gapcursor/React/index.spec.js b/demos/src/Extensions/Gapcursor/React/index.spec.js index b773249396..b618f2d5b9 100644 --- a/demos/src/Extensions/Gapcursor/React/index.spec.js +++ b/demos/src/Extensions/Gapcursor/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Gapcursor/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Gapcursor/React/') }) diff --git a/demos/src/Extensions/Gapcursor/Vue/index.spec.js b/demos/src/Extensions/Gapcursor/Vue/index.spec.js index 129419c18d..106b7ee4c6 100644 --- a/demos/src/Extensions/Gapcursor/Vue/index.spec.js +++ b/demos/src/Extensions/Gapcursor/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Examples/Gapcursor/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Examples/Gapcursor/Vue/') }) diff --git a/demos/src/Extensions/LineHeight/React/index.spec.js b/demos/src/Extensions/LineHeight/React/index.spec.js index b9f1bad5bf..c7c6d8a5da 100644 --- a/demos/src/Extensions/LineHeight/React/index.spec.js +++ b/demos/src/Extensions/LineHeight/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/LineHeight/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/LineHeight/React/') }) diff --git a/demos/src/Extensions/LineHeight/Vue/index.spec.js b/demos/src/Extensions/LineHeight/Vue/index.spec.js index 21135d8c37..e4f57a46b0 100644 --- a/demos/src/Extensions/LineHeight/Vue/index.spec.js +++ b/demos/src/Extensions/LineHeight/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/LineHeight/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/LineHeight/Vue/') }) diff --git a/demos/src/Extensions/TextAlign/React/index.spec.js b/demos/src/Extensions/TextAlign/React/index.spec.js index 98891c2dfe..4817daa5cb 100644 --- a/demos/src/Extensions/TextAlign/React/index.spec.js +++ b/demos/src/Extensions/TextAlign/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/TextAlign/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/TextAlign/React/') }) diff --git a/demos/src/Extensions/TextAlign/Vue/index.spec.js b/demos/src/Extensions/TextAlign/Vue/index.spec.js index b66ddd07f0..938b7e73c0 100644 --- a/demos/src/Extensions/TextAlign/Vue/index.spec.js +++ b/demos/src/Extensions/TextAlign/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/TextAlign/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/TextAlign/Vue/') }) diff --git a/demos/src/Extensions/Typography/React/index.spec.js b/demos/src/Extensions/Typography/React/index.spec.js index 8db214c91a..3c1b474202 100644 --- a/demos/src/Extensions/Typography/React/index.spec.js +++ b/demos/src/Extensions/Typography/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/Typography/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/Typography/React/') }) diff --git a/demos/src/Extensions/Typography/Vue/index.spec.js b/demos/src/Extensions/Typography/Vue/index.spec.js index c00278e816..b251d92a67 100644 --- a/demos/src/Extensions/Typography/Vue/index.spec.js +++ b/demos/src/Extensions/Typography/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/Typography/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/Typography/Vue/') }) diff --git a/demos/src/Extensions/TypographyWithOverrides/React/index.spec.js b/demos/src/Extensions/TypographyWithOverrides/React/index.spec.js index 8f3f99625a..ea453e16a8 100644 --- a/demos/src/Extensions/TypographyWithOverrides/React/index.spec.js +++ b/demos/src/Extensions/TypographyWithOverrides/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/TypographyWithOverrides/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/TypographyWithOverrides/React/') }) diff --git a/demos/src/Extensions/TypographyWithOverrides/Vue/index.spec.js b/demos/src/Extensions/TypographyWithOverrides/Vue/index.spec.js index ec4851792a..2382399c09 100644 --- a/demos/src/Extensions/TypographyWithOverrides/Vue/index.spec.js +++ b/demos/src/Extensions/TypographyWithOverrides/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Extensions/TypographyWithOverrides/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Extensions/TypographyWithOverrides/Vue/') }) diff --git a/demos/src/GuideContent/ExportHTML/React/index.spec.js b/demos/src/GuideContent/ExportHTML/React/index.spec.js index f216a5bde8..6bd49a9bb7 100644 --- a/demos/src/GuideContent/ExportHTML/React/index.spec.js +++ b/demos/src/GuideContent/ExportHTML/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/ExportHTML/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/ExportHTML/React/') }) diff --git a/demos/src/GuideContent/ExportHTML/Vue/index.spec.js b/demos/src/GuideContent/ExportHTML/Vue/index.spec.js index 1bb8ae6f4e..25d8bd7bd9 100644 --- a/demos/src/GuideContent/ExportHTML/Vue/index.spec.js +++ b/demos/src/GuideContent/ExportHTML/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/ExportHTML/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/ExportHTML/Vue/') }) diff --git a/demos/src/GuideContent/ExportJSON/React/index.spec.js b/demos/src/GuideContent/ExportJSON/React/index.spec.js index 3fecf28a74..617a2f2fa9 100644 --- a/demos/src/GuideContent/ExportJSON/React/index.spec.js +++ b/demos/src/GuideContent/ExportJSON/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/ExportJSON/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/ExportJSON/React/') }) diff --git a/demos/src/GuideContent/ExportJSON/Vue/index.spec.js b/demos/src/GuideContent/ExportJSON/Vue/index.spec.js index 876ea5a173..56facb0d7e 100644 --- a/demos/src/GuideContent/ExportJSON/Vue/index.spec.js +++ b/demos/src/GuideContent/ExportJSON/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/ExportJSON/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/ExportJSON/Vue/') }) diff --git a/demos/src/GuideContent/GenerateHTML/React/index.spec.js b/demos/src/GuideContent/GenerateHTML/React/index.spec.js index 2d90e19af9..e30b536e97 100644 --- a/demos/src/GuideContent/GenerateHTML/React/index.spec.js +++ b/demos/src/GuideContent/GenerateHTML/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/GenerateHTML/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/GenerateHTML/React/') }) diff --git a/demos/src/GuideContent/GenerateHTML/Vue/index.spec.js b/demos/src/GuideContent/GenerateHTML/Vue/index.spec.js index de71ade458..de101cb11d 100644 --- a/demos/src/GuideContent/GenerateHTML/Vue/index.spec.js +++ b/demos/src/GuideContent/GenerateHTML/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/GenerateHTML/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/GenerateHTML/Vue/') }) diff --git a/demos/src/GuideContent/GenerateJSON/React/index.spec.js b/demos/src/GuideContent/GenerateJSON/React/index.spec.js index f7ca0baccb..b84b11b592 100644 --- a/demos/src/GuideContent/GenerateJSON/React/index.spec.js +++ b/demos/src/GuideContent/GenerateJSON/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/GenerateJSON/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/GenerateJSON/React/') }) diff --git a/demos/src/GuideContent/GenerateJSON/Vue/index.spec.js b/demos/src/GuideContent/GenerateJSON/Vue/index.spec.js index 295fb658a8..90a0678c54 100644 --- a/demos/src/GuideContent/GenerateJSON/Vue/index.spec.js +++ b/demos/src/GuideContent/GenerateJSON/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/GenerateJSON/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/GenerateJSON/Vue/') }) diff --git a/demos/src/GuideContent/GenerateText/React/index.spec.js b/demos/src/GuideContent/GenerateText/React/index.spec.js index 91e29475d3..5e4f805a64 100644 --- a/demos/src/GuideContent/GenerateText/React/index.spec.js +++ b/demos/src/GuideContent/GenerateText/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/GenerateText/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/GenerateText/React/') }) diff --git a/demos/src/GuideContent/GenerateText/Vue/index.spec.js b/demos/src/GuideContent/GenerateText/Vue/index.spec.js index af2cc5edd3..e63003cce4 100644 --- a/demos/src/GuideContent/GenerateText/Vue/index.spec.js +++ b/demos/src/GuideContent/GenerateText/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/GenerateText/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/GenerateText/Vue/') }) diff --git a/demos/src/GuideContent/ReadOnly/React/index.spec.js b/demos/src/GuideContent/ReadOnly/React/index.spec.js index 96ac69c5c3..907be7998f 100644 --- a/demos/src/GuideContent/ReadOnly/React/index.spec.js +++ b/demos/src/GuideContent/ReadOnly/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/ReadOnly/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/ReadOnly/React/') }) diff --git a/demos/src/GuideContent/ReadOnly/Vue/index.spec.js b/demos/src/GuideContent/ReadOnly/Vue/index.spec.js index 0cd7e47957..200d26b2e2 100644 --- a/demos/src/GuideContent/ReadOnly/Vue/index.spec.js +++ b/demos/src/GuideContent/ReadOnly/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/ReadOnly/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/ReadOnly/Vue/') }) diff --git a/demos/src/GuideContent/StaticRenderHTML/React/index.spec.js b/demos/src/GuideContent/StaticRenderHTML/React/index.spec.js index 156ca25c58..075f3832b1 100644 --- a/demos/src/GuideContent/StaticRenderHTML/React/index.spec.js +++ b/demos/src/GuideContent/StaticRenderHTML/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/StaticRenderHTML/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/StaticRenderHTML/React/') }) diff --git a/demos/src/GuideContent/StaticRenderHTML/Vue/index.spec.js b/demos/src/GuideContent/StaticRenderHTML/Vue/index.spec.js index d404f76993..34bde8cc54 100644 --- a/demos/src/GuideContent/StaticRenderHTML/Vue/index.spec.js +++ b/demos/src/GuideContent/StaticRenderHTML/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/StaticRenderHTML/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/StaticRenderHTML/Vue/') }) diff --git a/demos/src/GuideContent/StaticRenderReact/React/index.spec.js b/demos/src/GuideContent/StaticRenderReact/React/index.spec.js index b5baa33527..9b7e582ffd 100644 --- a/demos/src/GuideContent/StaticRenderReact/React/index.spec.js +++ b/demos/src/GuideContent/StaticRenderReact/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideContent/StaticRenderReact/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideContent/StaticRenderReact/React/') }) diff --git a/demos/src/GuideGettingStarted/VModel/Vue/index.spec.js b/demos/src/GuideGettingStarted/VModel/Vue/index.spec.js index 6a849f450f..8565a14cfa 100644 --- a/demos/src/GuideGettingStarted/VModel/Vue/index.spec.js +++ b/demos/src/GuideGettingStarted/VModel/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/GuideGettingStarted/VModel/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/GuideGettingStarted/VModel/Vue/') }) diff --git a/demos/src/Marks/Bold/React/index.spec.js b/demos/src/Marks/Bold/React/index.spec.js index 7199bee3a7..7279bdcf80 100644 --- a/demos/src/Marks/Bold/React/index.spec.js +++ b/demos/src/Marks/Bold/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Bold/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Bold/React/') }) diff --git a/demos/src/Marks/Bold/Vue/index.spec.js b/demos/src/Marks/Bold/Vue/index.spec.js index e9744aeee8..a2ad5d9077 100644 --- a/demos/src/Marks/Bold/Vue/index.spec.js +++ b/demos/src/Marks/Bold/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Bold/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Bold/Vue/') }) diff --git a/demos/src/Marks/Code/React/index.spec.js b/demos/src/Marks/Code/React/index.spec.js index 636af6b73a..0ebddc02f7 100644 --- a/demos/src/Marks/Code/React/index.spec.js +++ b/demos/src/Marks/Code/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Code/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Code/React/') }) diff --git a/demos/src/Marks/Code/Vue/index.spec.js b/demos/src/Marks/Code/Vue/index.spec.js index 64aff4f575..539361ad37 100644 --- a/demos/src/Marks/Code/Vue/index.spec.js +++ b/demos/src/Marks/Code/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Code/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Code/Vue/') }) diff --git a/demos/src/Marks/Highlight/React/index.spec.js b/demos/src/Marks/Highlight/React/index.spec.js index 5d3da944dc..58a2fbc752 100644 --- a/demos/src/Marks/Highlight/React/index.spec.js +++ b/demos/src/Marks/Highlight/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Highlight/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Highlight/React/') }) diff --git a/demos/src/Marks/Highlight/Vue/index.spec.js b/demos/src/Marks/Highlight/Vue/index.spec.js index a6bb156f12..0f422e878e 100644 --- a/demos/src/Marks/Highlight/Vue/index.spec.js +++ b/demos/src/Marks/Highlight/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Highlight/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Highlight/Vue/') }) diff --git a/demos/src/Marks/Italic/React/index.spec.js b/demos/src/Marks/Italic/React/index.spec.js index a0958ac7d1..d7de5491d9 100644 --- a/demos/src/Marks/Italic/React/index.spec.js +++ b/demos/src/Marks/Italic/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Italic/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Italic/React/') }) diff --git a/demos/src/Marks/Italic/Vue/index.spec.js b/demos/src/Marks/Italic/Vue/index.spec.js index 0186921a20..0ca43b51d5 100644 --- a/demos/src/Marks/Italic/Vue/index.spec.js +++ b/demos/src/Marks/Italic/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Italic/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Italic/Vue/') }) diff --git a/demos/src/Marks/Link/React/index.spec.js b/demos/src/Marks/Link/React/index.spec.js index de5376c0fc..0ceb17890e 100644 --- a/demos/src/Marks/Link/React/index.spec.js +++ b/demos/src/Marks/Link/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Link/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Link/React/') }) diff --git a/demos/src/Marks/Link/Vue/index.spec.js b/demos/src/Marks/Link/Vue/index.spec.js index 10d22ea209..ffb1136984 100644 --- a/demos/src/Marks/Link/Vue/index.spec.js +++ b/demos/src/Marks/Link/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Link/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Link/Vue/') }) diff --git a/demos/src/Marks/Strike/React/index.spec.js b/demos/src/Marks/Strike/React/index.spec.js index 92746ea779..ab756815e4 100644 --- a/demos/src/Marks/Strike/React/index.spec.js +++ b/demos/src/Marks/Strike/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Strike/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Strike/React/') }) diff --git a/demos/src/Marks/Strike/Vue/index.spec.js b/demos/src/Marks/Strike/Vue/index.spec.js index 15b23d2522..650295c199 100644 --- a/demos/src/Marks/Strike/Vue/index.spec.js +++ b/demos/src/Marks/Strike/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Strike/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Strike/Vue/') }) diff --git a/demos/src/Marks/Subscript/React/index.spec.js b/demos/src/Marks/Subscript/React/index.spec.js index 3c718f6143..0a28a9223d 100644 --- a/demos/src/Marks/Subscript/React/index.spec.js +++ b/demos/src/Marks/Subscript/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Subscript/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Subscript/React/') }) diff --git a/demos/src/Marks/Subscript/Vue/index.spec.js b/demos/src/Marks/Subscript/Vue/index.spec.js index a902f4ef66..7acdfd049e 100644 --- a/demos/src/Marks/Subscript/Vue/index.spec.js +++ b/demos/src/Marks/Subscript/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Subscript/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Subscript/Vue/') }) diff --git a/demos/src/Marks/Superscript/React/index.spec.js b/demos/src/Marks/Superscript/React/index.spec.js index 591b1a7d5e..1bb63c4053 100644 --- a/demos/src/Marks/Superscript/React/index.spec.js +++ b/demos/src/Marks/Superscript/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Superscript/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Superscript/React/') }) diff --git a/demos/src/Marks/Superscript/Vue/index.spec.js b/demos/src/Marks/Superscript/Vue/index.spec.js index b527ee7e68..d527eda8d1 100644 --- a/demos/src/Marks/Superscript/Vue/index.spec.js +++ b/demos/src/Marks/Superscript/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Superscript/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Superscript/Vue/') }) diff --git a/demos/src/Marks/TextStyle/React/index.spec.js b/demos/src/Marks/TextStyle/React/index.spec.js index f0b3f3289e..31a43056cb 100644 --- a/demos/src/Marks/TextStyle/React/index.spec.js +++ b/demos/src/Marks/TextStyle/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/TextStyle/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/TextStyle/React/') }) diff --git a/demos/src/Marks/TextStyle/Vue/index.spec.js b/demos/src/Marks/TextStyle/Vue/index.spec.js index 94b902d44b..4511098875 100644 --- a/demos/src/Marks/TextStyle/Vue/index.spec.js +++ b/demos/src/Marks/TextStyle/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/TextStyle/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/TextStyle/Vue/') }) diff --git a/demos/src/Marks/Underline/React/index.spec.js b/demos/src/Marks/Underline/React/index.spec.js index 08b9ae298b..786d1eee93 100644 --- a/demos/src/Marks/Underline/React/index.spec.js +++ b/demos/src/Marks/Underline/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Underline/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Underline/React/') }) diff --git a/demos/src/Marks/Underline/Vue/index.spec.js b/demos/src/Marks/Underline/Vue/index.spec.js index 0b8e60629f..7f4b0443e1 100644 --- a/demos/src/Marks/Underline/Vue/index.spec.js +++ b/demos/src/Marks/Underline/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Marks/Underline/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Marks/Underline/Vue/') }) diff --git a/demos/src/Nodes/Blockquote/React/index.spec.js b/demos/src/Nodes/Blockquote/React/index.spec.js index bfbd950d27..5a641b17ff 100644 --- a/demos/src/Nodes/Blockquote/React/index.spec.js +++ b/demos/src/Nodes/Blockquote/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Blockquote/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Blockquote/React/') }) diff --git a/demos/src/Nodes/Blockquote/Vue/index.spec.js b/demos/src/Nodes/Blockquote/Vue/index.spec.js index 129d98ca5d..8b5ccd34f9 100644 --- a/demos/src/Nodes/Blockquote/Vue/index.spec.js +++ b/demos/src/Nodes/Blockquote/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Blockquote/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Blockquote/Vue/') }) diff --git a/demos/src/Nodes/BulletList/React/index.spec.js b/demos/src/Nodes/BulletList/React/index.spec.js index d346ba67bc..d17f13bffa 100644 --- a/demos/src/Nodes/BulletList/React/index.spec.js +++ b/demos/src/Nodes/BulletList/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/BulletList/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/BulletList/React/') }) diff --git a/demos/src/Nodes/BulletList/Vue/index.spec.js b/demos/src/Nodes/BulletList/Vue/index.spec.js index ae1e9f49bf..3fbce26009 100644 --- a/demos/src/Nodes/BulletList/Vue/index.spec.js +++ b/demos/src/Nodes/BulletList/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/BulletList/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/BulletList/Vue/') }) diff --git a/demos/src/Nodes/CodeBlock/React/index.spec.js b/demos/src/Nodes/CodeBlock/React/index.spec.js index a2b950e128..5c0778ccf9 100644 --- a/demos/src/Nodes/CodeBlock/React/index.spec.js +++ b/demos/src/Nodes/CodeBlock/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/CodeBlock/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/CodeBlock/React/') }) diff --git a/demos/src/Nodes/CodeBlock/Vue/index.spec.js b/demos/src/Nodes/CodeBlock/Vue/index.spec.js index baced7e9fe..72e341c152 100644 --- a/demos/src/Nodes/CodeBlock/Vue/index.spec.js +++ b/demos/src/Nodes/CodeBlock/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/CodeBlock/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/CodeBlock/Vue/') }) diff --git a/demos/src/Nodes/Document/React/index.spec.js b/demos/src/Nodes/Document/React/index.spec.js index d058c779e7..05450741f5 100644 --- a/demos/src/Nodes/Document/React/index.spec.js +++ b/demos/src/Nodes/Document/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Document/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Document/React/') }) diff --git a/demos/src/Nodes/Document/Vue/index.spec.js b/demos/src/Nodes/Document/Vue/index.spec.js index de1b748924..fcd67954f5 100644 --- a/demos/src/Nodes/Document/Vue/index.spec.js +++ b/demos/src/Nodes/Document/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Document/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Document/Vue/') }) diff --git a/demos/src/Nodes/HardBreak/React/index.spec.js b/demos/src/Nodes/HardBreak/React/index.spec.js index c08eb60a5f..7dcc598c1a 100644 --- a/demos/src/Nodes/HardBreak/React/index.spec.js +++ b/demos/src/Nodes/HardBreak/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/HardBreak/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/HardBreak/React/') }) diff --git a/demos/src/Nodes/HardBreak/Vue/index.spec.js b/demos/src/Nodes/HardBreak/Vue/index.spec.js index d4c69a5e61..eb05a096d7 100644 --- a/demos/src/Nodes/HardBreak/Vue/index.spec.js +++ b/demos/src/Nodes/HardBreak/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/HardBreak/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/HardBreak/Vue/') }) diff --git a/demos/src/Nodes/Heading/React/index.spec.js b/demos/src/Nodes/Heading/React/index.spec.js index 58dcf9f186..2f18053c77 100644 --- a/demos/src/Nodes/Heading/React/index.spec.js +++ b/demos/src/Nodes/Heading/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Heading/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Heading/React/') }) diff --git a/demos/src/Nodes/Heading/Vue/index.spec.js b/demos/src/Nodes/Heading/Vue/index.spec.js index 2c8e86420b..b17ce5efc1 100644 --- a/demos/src/Nodes/Heading/Vue/index.spec.js +++ b/demos/src/Nodes/Heading/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Heading/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Heading/Vue/') }) diff --git a/demos/src/Nodes/HorizontalRule/React/index.spec.js b/demos/src/Nodes/HorizontalRule/React/index.spec.js index 080e3f0e6d..30478b311c 100644 --- a/demos/src/Nodes/HorizontalRule/React/index.spec.js +++ b/demos/src/Nodes/HorizontalRule/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/HorizontalRule/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/HorizontalRule/React/') }) diff --git a/demos/src/Nodes/HorizontalRule/Vue/index.spec.js b/demos/src/Nodes/HorizontalRule/Vue/index.spec.js index 20ac7f27d4..2a495a6ba5 100644 --- a/demos/src/Nodes/HorizontalRule/Vue/index.spec.js +++ b/demos/src/Nodes/HorizontalRule/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/HorizontalRule/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/HorizontalRule/Vue/') }) diff --git a/demos/src/Nodes/Image/React/index.spec.js b/demos/src/Nodes/Image/React/index.spec.js index 7d9ce5da5d..83a4c77c4d 100644 --- a/demos/src/Nodes/Image/React/index.spec.js +++ b/demos/src/Nodes/Image/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Image/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Image/React/') }) diff --git a/demos/src/Nodes/Image/Vue/index.spec.js b/demos/src/Nodes/Image/Vue/index.spec.js index 57b4c71107..6ff06dd117 100644 --- a/demos/src/Nodes/Image/Vue/index.spec.js +++ b/demos/src/Nodes/Image/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Image/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Image/Vue/') }) diff --git a/demos/src/Nodes/ListItem/React/index.spec.js b/demos/src/Nodes/ListItem/React/index.spec.js index fcfff3da93..d64e8376c4 100644 --- a/demos/src/Nodes/ListItem/React/index.spec.js +++ b/demos/src/Nodes/ListItem/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/ListItem/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/ListItem/React/') }) diff --git a/demos/src/Nodes/ListItem/Vue/index.spec.js b/demos/src/Nodes/ListItem/Vue/index.spec.js index b9e3d40d2d..0567502e67 100644 --- a/demos/src/Nodes/ListItem/Vue/index.spec.js +++ b/demos/src/Nodes/ListItem/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/ListItem/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/ListItem/Vue/') }) diff --git a/demos/src/Nodes/Mention/React/index.spec.js b/demos/src/Nodes/Mention/React/index.spec.js index 45be4bfdd7..935f3054f2 100644 --- a/demos/src/Nodes/Mention/React/index.spec.js +++ b/demos/src/Nodes/Mention/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Mention/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Mention/React/') }) diff --git a/demos/src/Nodes/Mention/Vue/index.spec.js b/demos/src/Nodes/Mention/Vue/index.spec.js index bbda07db79..279adbb022 100644 --- a/demos/src/Nodes/Mention/Vue/index.spec.js +++ b/demos/src/Nodes/Mention/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Mention/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Mention/Vue/') }) diff --git a/demos/src/Nodes/OrderedList/React/index.spec.js b/demos/src/Nodes/OrderedList/React/index.spec.js index 79aa3b2fba..71b4cd7ddf 100644 --- a/demos/src/Nodes/OrderedList/React/index.spec.js +++ b/demos/src/Nodes/OrderedList/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/OrderedList/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/OrderedList/React/') }) diff --git a/demos/src/Nodes/OrderedList/Vue/index.spec.js b/demos/src/Nodes/OrderedList/Vue/index.spec.js index b4314eb953..f81de73a3a 100644 --- a/demos/src/Nodes/OrderedList/Vue/index.spec.js +++ b/demos/src/Nodes/OrderedList/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/OrderedList/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/OrderedList/Vue/') }) diff --git a/demos/src/Nodes/Paragraph/React/index.spec.js b/demos/src/Nodes/Paragraph/React/index.spec.js index 44c3ad069a..bc81c8f034 100644 --- a/demos/src/Nodes/Paragraph/React/index.spec.js +++ b/demos/src/Nodes/Paragraph/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Paragraph/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Paragraph/React/') }) diff --git a/demos/src/Nodes/Paragraph/Vue/index.spec.js b/demos/src/Nodes/Paragraph/Vue/index.spec.js index 04b80c091b..aeefb1a37a 100644 --- a/demos/src/Nodes/Paragraph/Vue/index.spec.js +++ b/demos/src/Nodes/Paragraph/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Paragraph/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Paragraph/Vue/') }) diff --git a/demos/src/Nodes/Table/React/index.spec.js b/demos/src/Nodes/Table/React/index.spec.js index 791e06b6f7..b3969b2f83 100644 --- a/demos/src/Nodes/Table/React/index.spec.js +++ b/demos/src/Nodes/Table/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Table/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Table/React/') }) diff --git a/demos/src/Nodes/Table/Vue/index.spec.js b/demos/src/Nodes/Table/Vue/index.spec.js index eae3173191..f314055a04 100644 --- a/demos/src/Nodes/Table/Vue/index.spec.js +++ b/demos/src/Nodes/Table/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Table/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Table/Vue/') }) diff --git a/demos/src/Nodes/TaskItem/React/index.spec.js b/demos/src/Nodes/TaskItem/React/index.spec.js index a8da084ea5..f34198d6b6 100644 --- a/demos/src/Nodes/TaskItem/React/index.spec.js +++ b/demos/src/Nodes/TaskItem/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/TaskItem/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/TaskItem/React/') }) diff --git a/demos/src/Nodes/TaskItem/Vue/index.spec.js b/demos/src/Nodes/TaskItem/Vue/index.spec.js index ada8d6a505..97f1ac33b5 100644 --- a/demos/src/Nodes/TaskItem/Vue/index.spec.js +++ b/demos/src/Nodes/TaskItem/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/TaskItem/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/TaskItem/Vue/') }) diff --git a/demos/src/Nodes/TaskList/React/index.spec.js b/demos/src/Nodes/TaskList/React/index.spec.js index 72772aba3e..211d8e17cd 100644 --- a/demos/src/Nodes/TaskList/React/index.spec.js +++ b/demos/src/Nodes/TaskList/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/TaskList/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/TaskList/React/') }) diff --git a/demos/src/Nodes/TaskList/Vue/index.spec.js b/demos/src/Nodes/TaskList/Vue/index.spec.js index 65fed2b043..c5b225d5cb 100644 --- a/demos/src/Nodes/TaskList/Vue/index.spec.js +++ b/demos/src/Nodes/TaskList/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/TaskList/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/TaskList/Vue/') }) diff --git a/demos/src/Nodes/Text/React/index.spec.js b/demos/src/Nodes/Text/React/index.spec.js index 95de137aee..dbee1da9d0 100644 --- a/demos/src/Nodes/Text/React/index.spec.js +++ b/demos/src/Nodes/Text/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Text/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Text/React/') }) diff --git a/demos/src/Nodes/Text/Vue/index.spec.js b/demos/src/Nodes/Text/Vue/index.spec.js index 46278429d0..0fc44254eb 100644 --- a/demos/src/Nodes/Text/Vue/index.spec.js +++ b/demos/src/Nodes/Text/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Text/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Text/Vue/') }) diff --git a/demos/src/Nodes/Youtube/React/index.spec.js b/demos/src/Nodes/Youtube/React/index.spec.js index 34f4300a3a..9061e4bc80 100644 --- a/demos/src/Nodes/Youtube/React/index.spec.js +++ b/demos/src/Nodes/Youtube/React/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Youtube/React/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Youtube/React/') }) diff --git a/demos/src/Nodes/Youtube/Vue/index.spec.js b/demos/src/Nodes/Youtube/Vue/index.spec.js index fa0e735c15..17268ca855 100644 --- a/demos/src/Nodes/Youtube/Vue/index.spec.js +++ b/demos/src/Nodes/Youtube/Vue/index.spec.js @@ -1,5 +1,5 @@ context('/src/Nodes/Youtube/Vue/', () => { - before(() => { + beforeEach(() => { cy.visit('/src/Nodes/Youtube/Vue/') }) diff --git a/demos/vite.config.ts b/demos/vite.config.ts index 72992b925c..1e6fe8bbf8 100644 --- a/demos/vite.config.ts +++ b/demos/vite.config.ts @@ -26,7 +26,14 @@ const getPackageDependencies = () => { replacement: resolve(`../packages/${name}/${subPkgName}/index.ts`), }) }) - } else if (name === 'extension-text-style' || name === 'extension-table' || name === 'extensions') { + } else if ( + name === 'extension-text-style' || + name === 'extension-table' || + name === 'extensions' || + name === 'react' || + name === 'vue-2' || + name === 'vue-3' + ) { fg.sync(`../packages/${name}/src/*`, { onlyDirectories: true }).forEach(subName => { const subPkgName = subName.replace(`../packages/${name}/src/`, '') diff --git a/package.json b/package.json index bc4fec27bf..1ac4e56791 100644 --- a/package.json +++ b/package.json @@ -41,14 +41,14 @@ "@changesets/cli": "^2.27.11", "@commitlint/cli": "^19.6.1", "@commitlint/config-conventional": "^19.6.0", - "@cypress/webpack-preprocessor": "^5.17.1", + "@cypress/webpack-preprocessor": "^6.0.2", "@testing-library/react": "16.2.0", "@types/react": "^18.3.18", "@types/react-dom": "^18.3.5", "@typescript-eslint/eslint-plugin": "^8.19.0", "@typescript-eslint/parser": "^8.19.0", "babel-loader": "^9.2.1", - "cypress": "^10.11.0", + "cypress": "^14.0.0", "cz-conventional-changelog": "^3.3.0", "eslint": "^8.57.1", "eslint-config-airbnb-base": "^15.0.0", diff --git a/packages/react/src/FloatingMenu.tsx b/packages/react/src/FloatingMenu.tsx index e1c66bd11f..f72b292ffa 100644 --- a/packages/react/src/FloatingMenu.tsx +++ b/packages/react/src/FloatingMenu.tsx @@ -29,7 +29,7 @@ export const FloatingMenu = React.forwardRef( floatingMenuElement.style.visibility = 'hidden' floatingMenuElement.style.position = 'absolute' - if (editor?.isDestroyed || currentEditor?.isDestroyed) { + if (editor?.isDestroyed || (currentEditor as any)?.isDestroyed) { return } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3ab946883c..9d1a0fa031 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -33,8 +33,8 @@ importers: specifier: ^19.6.0 version: 19.6.0 '@cypress/webpack-preprocessor': - specifier: ^5.17.1 - version: 5.17.1(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.97.1(esbuild@0.24.2)))(webpack@5.97.1(esbuild@0.24.2)) + specifier: ^6.0.2 + version: 6.0.2(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.97.1(esbuild@0.24.2)))(webpack@5.97.1(esbuild@0.24.2)) '@testing-library/react': specifier: 16.2.0 version: 16.2.0(@testing-library/dom@10.4.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -54,8 +54,8 @@ importers: specifier: ^9.2.1 version: 9.2.1(@babel/core@7.26.0)(webpack@5.97.1(esbuild@0.24.2)) cypress: - specifier: ^10.11.0 - version: 10.11.0 + specifier: ^14.0.0 + version: 14.0.0 cz-conventional-changelog: specifier: ^3.3.0 version: 3.3.0(@types/node@22.10.3)(typescript@5.7.3) @@ -1626,16 +1626,16 @@ packages: resolution: {integrity: sha512-DSHae2obMSMkAtTBSOulg5X7/z+rGLxcXQIkg3OmWvY6wifojge5uVMydfhUvs7yQj+V7jNmRZ2Xzl8GJyqRgg==} engines: {node: '>=v18'} - '@cypress/request@2.88.12': - resolution: {integrity: sha512-tOn+0mDZxASFM+cuAP9szGUGPI1HwWVSvdzm7V4cCsPdFTx6qMj29CwaQmRAMIEhORIUBFBsYROYJcveK4uOjA==} + '@cypress/request@3.0.7': + resolution: {integrity: sha512-LzxlLEMbBOPYB85uXrDqvD4MgcenjRBLIns3zyhx7vTPj/0u2eQhzXvPiGcaJrV38Q9dbkExWp6cOHPJ+EtFYg==} engines: {node: '>= 6'} - '@cypress/webpack-preprocessor@5.17.1': - resolution: {integrity: sha512-FE/e8ikPc8z4EVopJCaior3RGy0jd2q9Xcp5NtiwNG4XnLfEnUFTZlAGwXe75sEh4fNMPrBJW1KIz77PX5vGAw==} + '@cypress/webpack-preprocessor@6.0.2': + resolution: {integrity: sha512-0+1+4iy4W9PE6R5ywBNKAZoFp8Sf//w3UJ+CKTqkcAjA29b+dtsD0iFT70DsYE0BMqUM1PO7HXFGbXllQ+bRAA==} peerDependencies: '@babel/core': ^7.0.1 '@babel/preset-env': ^7.0.0 - babel-loader: ^8.0.2 || ^9 + babel-loader: ^8.3 || ^9 webpack: ^4 || ^5 '@cypress/xvfb@1.2.4': @@ -2481,9 +2481,6 @@ packages: '@types/node@12.20.55': resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} - '@types/node@14.18.63': - resolution: {integrity: sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ==} - '@types/node@22.10.3': resolution: {integrity: sha512-DifAyw4BkrufCILvD3ucnuN8eydUfc/C1GlyrnI+LK6543w5/L3VeVgf05o3B4fqSXP1dKYLOZsKfutpxPzZrw==} @@ -3022,6 +3019,10 @@ packages: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} + ci-info@4.1.0: + resolution: {integrity: sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==} + engines: {node: '>=8'} + clean-stack@2.2.0: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} @@ -3099,8 +3100,8 @@ packages: resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} engines: {node: '>= 6'} - commander@5.1.0: - resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} + commander@6.2.1: + resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} engines: {node: '>= 6'} commander@7.2.0: @@ -3204,9 +3205,9 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - cypress@10.11.0: - resolution: {integrity: sha512-lsaE7dprw5DoXM00skni6W5ElVVLGAdRUUdZjX2dYsGjbY/QnpzWZ95Zom1mkGg0hAaO/QVTZoFVS7Jgr/GUPA==} - engines: {node: '>=12.0.0'} + cypress@14.0.0: + resolution: {integrity: sha512-kEGqQr23so5IpKeg/dp6GVi7RlHx1NmW66o2a2Q4wk9gRaAblLZQSiZJuDI8UMC4LlG5OJ7Q6joAiqTrfRNbTw==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true cz-conventional-changelog@3.3.0: @@ -3865,9 +3866,9 @@ packages: forever-agent@0.6.1: resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} - form-data@2.3.3: - resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} - engines: {node: '>= 0.12'} + form-data@4.0.1: + resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} + engines: {node: '>= 6'} fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} @@ -4085,8 +4086,8 @@ packages: engines: {node: '>=12'} hasBin: true - http-signature@1.3.6: - resolution: {integrity: sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==} + http-signature@1.4.0: + resolution: {integrity: sha512-G5akfn7eKbpDN+8nPS/cb57YeA1jLTVxjpCj7tmm3QKPdyDy7T+qSC40e9ptydSWvkwjSXw1VbkpyEm39ukeAg==} engines: {node: '>=0.10'} human-id@1.0.2: @@ -4199,10 +4200,6 @@ packages: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} - is-ci@3.0.1: - resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} - hasBin: true - is-core-module@2.16.1: resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} engines: {node: '>= 0.4'} @@ -5062,6 +5059,10 @@ packages: resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} engines: {node: '>=6'} + process@0.11.10: + resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} + engines: {node: '>= 0.6.0'} + property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} @@ -5126,9 +5127,6 @@ packages: proxy-from-env@1.0.0: resolution: {integrity: sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==} - psl@1.15.0: - resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==} - pump@3.0.2: resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} @@ -5140,8 +5138,8 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - qs@6.10.4: - resolution: {integrity: sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==} + qs@6.13.1: + resolution: {integrity: sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==} engines: {node: '>=0.6'} qs@6.14.0: @@ -5156,9 +5154,6 @@ packages: resolution: {integrity: sha512-MWkCOVIcJP9QSKU52Ngow6bsAWAPlPK2MludXvcrS2bGZSl+T1qX9MZvRIkqUIkGLJquMJHWfsT6eRqUpp4aWg==} engines: {node: '>=18'} - querystringify@2.2.0: - resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} - queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -5644,6 +5639,13 @@ packages: resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} engines: {node: '>=12.0.0'} + tldts-core@6.1.73: + resolution: {integrity: sha512-k1g5eX87vxu3g//6XMn62y4qjayu4cYby/PF7Ksnh4F4uUK1Z1ze/mJ4a+y5OjdJ+cXRp+YTInZhH+FGdUWy1w==} + + tldts@6.1.73: + resolution: {integrity: sha512-/h4bVmuEMm57c2uCiAf1Q9mlQk7cA22m+1Bu0K92vUUtTVT9D4mOFWD9r4WQuTULcG9eeZtNKhLl0Il1LdKGog==} + hasBin: true + tmp@0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} @@ -5656,9 +5658,9 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} - tough-cookie@4.1.4: - resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} - engines: {node: '>=6'} + tough-cookie@5.1.0: + resolution: {integrity: sha512-rvZUv+7MoBYTiDmFPBrhL7Ujx9Sk+q9wwm22x8c8T5IJaR+Wsyc7TNxbVxo84kZoRJZZMazowFLqpankBEQrGg==} + engines: {node: '>=16'} tr46@1.0.1: resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} @@ -5855,10 +5857,6 @@ packages: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} - universalify@0.2.0: - resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} - engines: {node: '>= 4.0.0'} - universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} @@ -5883,9 +5881,6 @@ packages: resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - url-parse@1.5.10: - resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} - use-sync-external-store@1.4.0: resolution: {integrity: sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==} peerDependencies: @@ -7201,7 +7196,7 @@ snapshots: '@types/conventional-commits-parser': 5.0.1 chalk: 5.4.1 - '@cypress/request@2.88.12': + '@cypress/request@3.0.7': dependencies: aws-sign2: 0.7.0 aws4: 1.13.2 @@ -7209,20 +7204,20 @@ snapshots: combined-stream: 1.0.8 extend: 3.0.2 forever-agent: 0.6.1 - form-data: 2.3.3 - http-signature: 1.3.6 + form-data: 4.0.1 + http-signature: 1.4.0 is-typedarray: 1.0.0 isstream: 0.1.2 json-stringify-safe: 5.0.1 mime-types: 2.1.35 performance-now: 2.1.0 - qs: 6.10.4 + qs: 6.13.1 safe-buffer: 5.2.1 - tough-cookie: 4.1.4 + tough-cookie: 5.1.0 tunnel-agent: 0.6.0 uuid: 8.3.2 - '@cypress/webpack-preprocessor@5.17.1(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.97.1(esbuild@0.24.2)))(webpack@5.97.1(esbuild@0.24.2))': + '@cypress/webpack-preprocessor@6.0.2(@babel/core@7.26.0)(@babel/preset-env@7.26.0(@babel/core@7.26.0))(babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.97.1(esbuild@0.24.2)))(webpack@5.97.1(esbuild@0.24.2))': dependencies: '@babel/core': 7.26.0 '@babel/preset-env': 7.26.0(@babel/core@7.26.0) @@ -7976,8 +7971,6 @@ snapshots: '@types/node@12.20.55': {} - '@types/node@14.18.63': {} - '@types/node@22.10.3': dependencies: undici-types: 6.20.0 @@ -8610,6 +8603,8 @@ snapshots: ci-info@3.9.0: {} + ci-info@4.1.0: {} + clean-stack@2.2.0: {} cli-cursor@3.1.0: @@ -8682,7 +8677,7 @@ snapshots: commander@4.1.1: {} - commander@5.1.0: {} + commander@6.2.1: {} commander@7.2.0: {} @@ -8785,11 +8780,10 @@ snapshots: csstype@3.1.3: {} - cypress@10.11.0: + cypress@14.0.0: dependencies: - '@cypress/request': 2.88.12 + '@cypress/request': 3.0.7 '@cypress/xvfb': 1.2.4(supports-color@8.1.1) - '@types/node': 14.18.63 '@types/sinonjs__fake-timers': 8.1.1 '@types/sizzle': 2.3.9 arch: 2.2.0 @@ -8799,9 +8793,10 @@ snapshots: cachedir: 2.4.0 chalk: 4.1.2 check-more-types: 2.24.0 + ci-info: 4.1.0 cli-cursor: 3.1.0 cli-table3: 0.6.5 - commander: 5.1.0 + commander: 6.2.1 common-tags: 1.8.2 dayjs: 1.11.13 debug: 4.4.0(supports-color@8.1.1) @@ -8813,7 +8808,6 @@ snapshots: figures: 3.2.0 fs-extra: 9.1.0 getos: 3.2.1 - is-ci: 3.0.1 is-installed-globally: 0.4.0 lazy-ass: 1.6.0 listr2: 3.14.0(enquirer@2.4.1) @@ -8822,11 +8816,13 @@ snapshots: minimist: 1.2.8 ospath: 1.2.2 pretty-bytes: 5.6.0 + process: 0.11.10 proxy-from-env: 1.0.0 request-progress: 3.0.0 semver: 7.6.3 supports-color: 8.1.1 tmp: 0.2.3 + tree-kill: 1.2.2 untildify: 4.0.0 yauzl: 2.10.0 @@ -9654,7 +9650,7 @@ snapshots: forever-agent@0.6.1: {} - form-data@2.3.3: + form-data@4.0.1: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 @@ -9930,7 +9926,7 @@ snapshots: - debug - supports-color - http-signature@1.3.6: + http-signature@1.4.0: dependencies: assert-plus: 1.0.0 jsprim: 2.0.2 @@ -10040,10 +10036,6 @@ snapshots: is-callable@1.2.7: {} - is-ci@3.0.1: - dependencies: - ci-info: 3.9.0 - is-core-module@2.16.1: dependencies: hasown: 2.0.2 @@ -10833,6 +10825,8 @@ snapshots: prismjs@1.29.0: {} + process@0.11.10: {} + property-information@6.5.0: {} prosemirror-changeset@2.2.1: @@ -10940,10 +10934,6 @@ snapshots: proxy-from-env@1.0.0: {} - psl@1.15.0: - dependencies: - punycode: 2.3.1 - pump@3.0.2: dependencies: end-of-stream: 1.4.4 @@ -10953,7 +10943,7 @@ snapshots: punycode@2.3.1: {} - qs@6.10.4: + qs@6.13.1: dependencies: side-channel: 1.1.0 @@ -10976,8 +10966,6 @@ snapshots: filter-obj: 5.1.0 split-on-first: 3.0.0 - querystringify@2.2.0: {} - queue-microtask@1.2.3: {} quick-lru@7.0.0: {} @@ -11566,6 +11554,12 @@ snapshots: fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 + tldts-core@6.1.73: {} + + tldts@6.1.73: + dependencies: + tldts-core: 6.1.73 + tmp@0.0.33: dependencies: os-tmpdir: 1.0.2 @@ -11576,12 +11570,9 @@ snapshots: dependencies: is-number: 7.0.0 - tough-cookie@4.1.4: + tough-cookie@5.1.0: dependencies: - psl: 1.15.0 - punycode: 2.3.1 - universalify: 0.2.0 - url-parse: 1.5.10 + tldts: 6.1.73 tr46@1.0.1: dependencies: @@ -11783,8 +11774,6 @@ snapshots: universalify@0.1.2: {} - universalify@0.2.0: {} - universalify@2.0.1: {} untildify@4.0.0: {} @@ -11803,11 +11792,6 @@ snapshots: url-join@5.0.0: {} - url-parse@1.5.10: - dependencies: - querystringify: 2.2.0 - requires-port: 1.0.0 - use-sync-external-store@1.4.0(react@18.3.1): dependencies: react: 18.3.1 From 38146b740b7da38d0c0c40ce01e39e2fa9d44e40 Mon Sep 17 00:00:00 2001 From: Nick Perez Date: Thu, 23 Jan 2025 12:21:42 +0100 Subject: [PATCH 089/629] refactor: extract bubble-menu & floating-menu to own export (#5993) --- .../Accessibility/React/InsertMenu.tsx | 3 ++- .../Examples/Accessibility/React/TextMenu.tsx | 3 ++- demos/src/Examples/Menus/React/index.jsx | 3 ++- demos/src/Examples/Menus/Vue/index.vue | 3 ++- .../src/Examples/Performance/React/index.jsx | 3 ++- .../src/Extensions/BubbleMenu/React/index.jsx | 3 ++- demos/src/Extensions/BubbleMenu/Vue/index.vue | 3 ++- .../CollaborationWithMenus/React/index.jsx | 3 ++- .../CollaborationWithMenus/Vue/index.vue | 3 ++- .../Extensions/FloatingMenu/React/index.jsx | 3 ++- .../src/Extensions/FloatingMenu/Vue/index.vue | 3 ++- packages/react/package.json | 18 ++++++++++++---- packages/react/src/index.ts | 2 -- packages/react/src/{ => menus}/BubbleMenu.tsx | 5 ++--- .../react/src/{ => menus}/FloatingMenu.tsx | 3 +-- packages/react/src/menus/index.ts | 2 ++ packages/react/tsup.config.ts | 20 ++++++++++-------- packages/vue-2/package.json | 18 ++++++++++++---- packages/vue-2/src/index.ts | 2 -- packages/vue-2/src/{ => menus}/BubbleMenu.ts | 0 .../vue-2/src/{ => menus}/FloatingMenu.ts | 0 packages/vue-2/src/menus/index.ts | 2 ++ packages/vue-2/tsup.config.ts | 19 +++++++++-------- packages/vue-3/package.json | 20 ++++++++++++------ packages/vue-3/src/index.ts | 2 -- packages/vue-3/src/{ => menus}/BubbleMenu.ts | 0 .../vue-3/src/{ => menus}/FloatingMenu.ts | 0 packages/vue-3/src/menus/index.ts | 2 ++ packages/vue-3/tsup.config.ts | 19 +++++++++-------- pnpm-lock.yaml | 21 +++++++++++-------- 30 files changed, 116 insertions(+), 72 deletions(-) rename packages/react/src/{ => menus}/BubbleMenu.tsx (94%) rename packages/react/src/{ => menus}/FloatingMenu.tsx (97%) create mode 100644 packages/react/src/menus/index.ts rename packages/vue-2/src/{ => menus}/BubbleMenu.ts (100%) rename packages/vue-2/src/{ => menus}/FloatingMenu.ts (100%) create mode 100644 packages/vue-2/src/menus/index.ts rename packages/vue-3/src/{ => menus}/BubbleMenu.ts (100%) rename packages/vue-3/src/{ => menus}/FloatingMenu.ts (100%) create mode 100644 packages/vue-3/src/menus/index.ts diff --git a/demos/src/Examples/Accessibility/React/InsertMenu.tsx b/demos/src/Examples/Accessibility/React/InsertMenu.tsx index 428a01e1b2..9d8ef409fc 100644 --- a/demos/src/Examples/Accessibility/React/InsertMenu.tsx +++ b/demos/src/Examples/Accessibility/React/InsertMenu.tsx @@ -1,4 +1,5 @@ -import { Editor, FloatingMenu, useEditorState } from '@tiptap/react' +import { Editor, useEditorState } from '@tiptap/react' +import { FloatingMenu } from '@tiptap/react/menus' import React, { useRef } from 'react' import { useMenubarNav } from './useMenubarNav.js' diff --git a/demos/src/Examples/Accessibility/React/TextMenu.tsx b/demos/src/Examples/Accessibility/React/TextMenu.tsx index d9b15df7ad..32d7f739ab 100644 --- a/demos/src/Examples/Accessibility/React/TextMenu.tsx +++ b/demos/src/Examples/Accessibility/React/TextMenu.tsx @@ -1,5 +1,6 @@ import { Selection } from '@tiptap/pm/state' -import { BubbleMenu, Editor, useEditorState } from '@tiptap/react' +import { Editor, useEditorState } from '@tiptap/react' +import { BubbleMenu } from '@tiptap/react/menus' import React, { useRef } from 'react' import { useMenubarNav } from './useMenubarNav.js' diff --git a/demos/src/Examples/Menus/React/index.jsx b/demos/src/Examples/Menus/React/index.jsx index b23ce7e04a..a4b49f2b1e 100644 --- a/demos/src/Examples/Menus/React/index.jsx +++ b/demos/src/Examples/Menus/React/index.jsx @@ -1,6 +1,7 @@ import './styles.scss' -import { BubbleMenu, EditorContent, FloatingMenu, useEditor } from '@tiptap/react' +import { EditorContent, useEditor } from '@tiptap/react' +import { BubbleMenu, FloatingMenu } from '@tiptap/react/menus' import StarterKit from '@tiptap/starter-kit' import React from 'react' diff --git a/demos/src/Examples/Menus/Vue/index.vue b/demos/src/Examples/Menus/Vue/index.vue index d4676720a8..2b4ec7f6c7 100644 --- a/demos/src/Examples/Menus/Vue/index.vue +++ b/demos/src/Examples/Menus/Vue/index.vue @@ -49,7 +49,8 @@ +``` diff --git a/.changeset/green-wolves-arrive.md b/.changeset/green-wolves-arrive.md index e7aa860d2f..04f6eff83a 100644 --- a/.changeset/green-wolves-arrive.md +++ b/.changeset/green-wolves-arrive.md @@ -1,9 +1,20 @@ --- '@tiptap/core': major --- +`getPos` in `NodeViewRendererProps` type now includes `undefined` as possible return value -Fix `getPos` type in `NodeViewRendererProps` to potentially be `undefined` +Before -Breaking change: Types may flag uses of getPos where an `undefined` possibility isn't handled. -Why this change was made: To ensure the type reflects the real functionality of this function. -How to update: Ensure that the return value of `getPos` exists before making use of the value. +```ts +const pos = nodeViewProps.getPos() // Type was () => number +``` + +After + +```ts +const pos = nodeViewProps.getPos() // Type is () => number | undefined + +if (pos !== undefined) { + // Safe to use pos here +} +``` diff --git a/.changeset/honest-ears-trade.md b/.changeset/honest-ears-trade.md deleted file mode 100644 index d5da4c2a7c..0000000000 --- a/.changeset/honest-ears-trade.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/pm': patch ---- - -This fixes a problem with the release files diff --git a/.changeset/nervous-hairs-walk.md b/.changeset/nervous-hairs-walk.md index c7d5e4b80f..89e09422bd 100644 --- a/.changeset/nervous-hairs-walk.md +++ b/.changeset/nervous-hairs-walk.md @@ -2,4 +2,4 @@ "@tiptap/core": minor --- -Support `validate` options in node and mark attribute definitions. +Support [`validate` option](https://prosemirror.net/docs/ref/#model.AttributeSpec.validate) in node and mark attribute definitions. diff --git a/.changeset/perfect-rice-vanish.md b/.changeset/perfect-rice-vanish.md index e2579ccc44..8be0f66931 100644 --- a/.changeset/perfect-rice-vanish.md +++ b/.changeset/perfect-rice-vanish.md @@ -2,4 +2,4 @@ '@tiptap/react': minor --- -Throw an error in development mode if immediatelyRender is not set in SSR mode +Throw an error in development mode if `immediatelyRender` is not set in SSR mode diff --git a/.changeset/pre.json b/.changeset/pre.json index 57dcd2dab9..dc619413e8 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -70,16 +70,13 @@ "dirty-colts-shave", "fair-jars-shout", "green-wolves-arrive", - "honest-ears-trade", "lazy-needles-train", "nervous-hairs-walk", "orange-spoons-rescue", "perfect-rice-vanish", "quick-days-matter", "red-rivers-exist", - "smart-turtles-happen", "tame-worms-applaud", - "twelve-paws-work", "weak-books-eat" ] } diff --git a/.changeset/red-rivers-exist.md b/.changeset/red-rivers-exist.md index 6efed4a00c..88dfd938be 100644 --- a/.changeset/red-rivers-exist.md +++ b/.changeset/red-rivers-exist.md @@ -2,4 +2,106 @@ '@tiptap/extension-text-style': minor --- -This adds the `font-size` to `text-style` package, which can set the font size of `textStyle`s +This adds several extensions to the `text-style` package, which can be used to style text in the editor. + +## TextStyleKit + +This extension adds a group of text style extensions to the editor, and is the recommended way of using the text style extensions. For easy configuration, you can pass an object with the following keys: + +`backgroundColor`, `color`, `fontFamily`, `fontSize`, `lineHeight`, `textStyle` + +Usage: + +```ts +import { TextStyleKit } from '@tiptap/extension-text-style' + + +new Editor({ + extensions: [ + TextStyleKit.configure({ + backgroundColor: { + types: ['textStyle'], + }, + color: { + types: ['textStyle'], + }, + fontFamily: { + types: ['textStyle'], + }, + fontSize: { + types: ['textStyle'], + }, + lineHeight: { + types: ['textStyle'], + }, + textStyle: { + types: ['textStyle'], + }, + }), + ], +}) +``` + +## Want to use the extensions separately? + +For more control, you can also use the extensions separately. + +### BackgroundColor + +This extension controls the background-color of a range of text in the editor. + +Usage: + +```ts +import { BackgroundColor } from '@tiptap/extension-text-style' +``` + +### Color + +This extension controls the color of a range of text in the editor. + +Migrate from `@tiptap/extension-color` to `@tiptap/extension-text-style`: + +```diff +- import Color from '@tiptap/extension-color' ++ import { Color } from '@tiptap/extension-text-style' +``` + +Usage: + +```ts +import { Color } from '@tiptap/extension-text-style' +``` + +### FontFamily + +This extension controls the font-family of a range of text in the editor. + +Migration from `@tiptap/extension-font-family` to `@tiptap/extension-text-style`: + +```diff +- import FontFamily from '@tiptap/extension-font-family' ++ import { FontFamily } from '@tiptap/extension-text-style' +``` + +Usage: + +```ts +import { FontFamily } from '@tiptap/extension-text-style' +``` + +### FontSize + +This extension controls the font-size of a range of text in the editor. + +```ts +import { FontSize } from '@tiptap/extension-text-style' +``` + +### LineHeight + +This extension controls the line-height of a range of text in the editor. + +```ts +import { LineHeight } from '@tiptap/extension-text-style' +``` diff --git a/.changeset/smart-turtles-happen.md b/.changeset/smart-turtles-happen.md deleted file mode 100644 index e5c9b11709..0000000000 --- a/.changeset/smart-turtles-happen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-text-style': minor ---- - -This adds the `background-color` to `text-style` package, which can color the background of `textStyle`s diff --git a/.changeset/tame-worms-applaud.md b/.changeset/tame-worms-applaud.md index b594197acf..9aa5c95f83 100644 --- a/.changeset/tame-worms-applaud.md +++ b/.changeset/tame-worms-applaud.md @@ -2,4 +2,4 @@ '@tiptap/core': patch --- -If a transaction results in the exact same editor state (either filtered out or failed to apply) then do not attempt to re-apply the same editor state and do not emit any events associated to the transaction +For performance, if a transaction results in the exact same editor state (either filtered out or failed to apply), then do not attempt to re-apply the same editor state and do not emit any events associated to the transaction. diff --git a/.changeset/twelve-paws-work.md b/.changeset/twelve-paws-work.md deleted file mode 100644 index 6192c35ab8..0000000000 --- a/.changeset/twelve-paws-work.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-text-style': minor ---- - -This adds the `line-height` to `text-style` package, which controls the line-height of text like `font-size`, `font-family`, etc. diff --git a/.changeset/weak-books-eat.md b/.changeset/weak-books-eat.md index 11168ba372..e0daf9c7af 100644 --- a/.changeset/weak-books-eat.md +++ b/.changeset/weak-books-eat.md @@ -2,6 +2,13 @@ '@tiptap/starter-kit': major --- -We have now added the Link, ListKeymap, and Underline extensions to the starter kit for a smoother onboarding experience +We have now added the `Link`, `ListKeymap`, and `Underline` extensions to the starter kit for a smoother onboarding experience If you have theses extensions in your project, you can remove them from your project and use the ones from the starter kit instead. + +```diff +- import Link from '@tiptap/extension-link' +- import ListKeymap from '@tiptap/extension-list-keymap' +- import Underline from '@tiptap/extension-underline' ++ import { StarterKit } from '@tiptap/starter-kit' +``` diff --git a/demos/src/Examples/Accessibility/React/index.tsx b/demos/src/Examples/Accessibility/React/index.tsx index d3e741eafa..b168c2219d 100644 --- a/demos/src/Examples/Accessibility/React/index.tsx +++ b/demos/src/Examples/Accessibility/React/index.tsx @@ -1,6 +1,5 @@ import './styles.scss' -// import Placeholder from '@tiptap/extension-placeholder' import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React from 'react' diff --git a/demos/src/Examples/CustomDocument/React/index.jsx b/demos/src/Examples/CustomDocument/React/index.jsx index 770e8dd84c..04f6fa4d50 100644 --- a/demos/src/Examples/CustomDocument/React/index.jsx +++ b/demos/src/Examples/CustomDocument/React/index.jsx @@ -1,7 +1,7 @@ import './styles.scss' import Document from '@tiptap/extension-document' -import Placeholder from '@tiptap/extension-placeholder' +import { Placeholder } from '@tiptap/extensions' import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React from 'react' diff --git a/demos/src/Examples/CustomDocument/Vue/index.vue b/demos/src/Examples/CustomDocument/Vue/index.vue index b26a4760cf..dca763fd58 100644 --- a/demos/src/Examples/CustomDocument/Vue/index.vue +++ b/demos/src/Examples/CustomDocument/Vue/index.vue @@ -4,7 +4,7 @@ + + diff --git a/demos/src/Extensions/TrailingNode/React/index.html b/demos/src/Extensions/TrailingNode/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/TrailingNode/React/index.tsx b/demos/src/Extensions/TrailingNode/React/index.tsx new file mode 100644 index 0000000000..bc11c2cdd9 --- /dev/null +++ b/demos/src/Extensions/TrailingNode/React/index.tsx @@ -0,0 +1,23 @@ +import './styles.scss' + +import Code from '@tiptap/extension-code' +import CodeBlock from '@tiptap/extension-code-block' +import Document from '@tiptap/extension-document' +import { BulletList, ListItem } from '@tiptap/extension-list' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { TrailingNode } from '@tiptap/extensions' +import { EditorContent, useEditor } from '@tiptap/react' +import React from 'react' + +export default () => { + const editor = useEditor({ + extensions: [Document, Paragraph, Text, TrailingNode, Code, BulletList, ListItem, CodeBlock], + content: ` +

A paragraph

+
There should be a paragraph right after this one, because it is a code-block
+ `, + }) + + return +} diff --git a/demos/src/Extensions/TrailingNode/React/styles.scss b/demos/src/Extensions/TrailingNode/React/styles.scss new file mode 100644 index 0000000000..47018d0be0 --- /dev/null +++ b/demos/src/Extensions/TrailingNode/React/styles.scss @@ -0,0 +1,92 @@ + +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* List styles */ + ul, + ol { + padding: 0 1rem; + margin: 1.25rem 1rem 1.25rem 0.4rem; + + li p { + margin-top: 0.25em; + margin-bottom: 0.25em; + } + } + + /* Heading styles */ + h1, + h2, + h3, + h4, + h5, + h6 { + line-height: 1.1; + margin-top: 2.5rem; + text-wrap: pretty; + } + + h1, + h2 { + margin-top: 3.5rem; + margin-bottom: 1.5rem; + } + + h1 { + font-size: 1.4rem; + } + + h2 { + font-size: 1.2rem; + } + + h3 { + font-size: 1.1rem; + } + + h4, + h5, + h6 { + font-size: 1rem; + } + + /* Code and preformatted text styles */ + code { + background-color: var(--purple-light); + border-radius: 0.4rem; + color: var(--black); + font-size: 0.85rem; + padding: 0.25em 0.3em; + } + + pre { + background: var(--black); + border-radius: 0.5rem; + color: var(--white); + font-family: 'JetBrainsMono', monospace; + margin: 1.5rem 0; + padding: 0.75rem 1rem; + + code { + background: none; + color: inherit; + font-size: 0.8rem; + padding: 0; + } + } + + blockquote { + border-left: 3px solid var(--gray-3); + margin: 1.5rem 0; + padding-left: 1rem; + } + + hr { + border: none; + border-top: 1px solid var(--gray-2); + margin: 2rem 0; + } +} diff --git a/demos/src/Extensions/TrailingNode/Vue/index.html b/demos/src/Extensions/TrailingNode/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Experiments/TrailingNode/Vue/index.vue b/demos/src/Extensions/TrailingNode/Vue/index.vue similarity index 74% rename from demos/src/Experiments/TrailingNode/Vue/index.vue rename to demos/src/Extensions/TrailingNode/Vue/index.vue index 43725b0363..fdf5414b42 100644 --- a/demos/src/Experiments/TrailingNode/Vue/index.vue +++ b/demos/src/Extensions/TrailingNode/Vue/index.vue @@ -5,11 +5,15 @@ + ``` + +- 28c5418: Adds a new `delete` event which can detect content which has been deleted by the editor as a core extension +- 704f462: This introduces a new behavior for the editor, the ability to be safely run on the server-side (without rendering). + + `prosemirror-view` encapsulates all view (& DOM) related code, and cannot safely be SSR'd, but, the majority of the editor instance itself is in plain JS that does not require DOM APIs (unless your content is specified in HTML). + + But, we have so many convenient methods available for manipulating content. So, it is a shame that they could not be used on the server side too. With this change, the editor can be rendered on the server-side and will use a stub for select prosemirror-view methods. If accessing unsupported methods or values on the `editor.view`, you will encounter runtime errors, so it is important for you to test to see if the methods you call actually work. + + This is a step towards being able to server-side render content, but, it is not completely supported yet. This does not mean that you can render an editor instance on the server and expect it to just output any HTML. + + ## Usage + + If you pass `element: null` to your editor options: + + - the `editor.view` will not be initialized + - the editor will not emit it's `'create'` event + - the focus will not be initialized to it's first position + + You can however, later use the new `mount` function on the instance, which will mount the editor view to a DOM element. This obviously will not be allowed on the server which has no document object. + + Therefore, this will work on the server: + + ```ts + import { Editor } from '@tiptap/core' + import StarterKit from '@tiptap/starter-kit' + + const editor = new Editor({ + element: null, + content: { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, World!' }] }] }, + extensions: [StarterKit], + }) + + editor + .chain() + .selectAll() + .setContent({ type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'XYZ' }] }] }) + .run() + + console.log(editor.state.doc.toJSON()) + // { type: 'doc', content: [ { type: 'paragraph', content: [ { type: 'text', text: 'XYZ' } ] } ] } + ``` + + Any of these things will not work on the server, and result in a runtime error: + + ```ts + import { Editor } from '@tiptap/core' + import StarterKit from '@tiptap/starter-kit' + + const editor = new Editor({ + // document will not be defined in a server environment + element: document.createElement('div'), + content: { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, World!' }] }] }, + extensions: [StarterKit], + }) + + editor + .chain() + // focus is a command which depends on the editor-view, so it will not work in a server environment + .focus() + .run() + + console.log(editor.getHTML()) + // getHTML relies on the editor-view, so it will not work in a server environment + ``` + +- 32958d6: Extensions, Nodes and Marks no longer respect the deprecated `defaultOptions` config value + ## 3.0.0-next.4 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 99423aee42..6a68356693 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -51,7 +51,7 @@ "jsx-runtime" ], "devDependencies": { - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/pm": "^3.0.0-next.1" diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 6b7dd61356..8dfecbf88d 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index d615f53ada..8f5f611530 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 6c3d472ebb..3e85d112c8 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 46b73644ad..da351d3af3 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index e7b2f5fc4e..81c78f1057 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index fb4d491f1c..c2366dc825 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -37,8 +37,8 @@ }, "sideEffects": false, "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "dependencies": { "@floating-ui/dom": "^1.0.0" diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index f5210319a4..938e74068c 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,162 @@ # Change Log +## 3.0.0-next.5 + +### Major Changes + +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index f31f47ea85..574d69a456 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.4" + "@tiptap/extension-list": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-character-count/CHANGELOG.md b/packages/extension-character-count/CHANGELOG.md index 711a70833f..e43c76c2c3 100644 --- a/packages/extension-character-count/CHANGELOG.md +++ b/packages/extension-character-count/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-character-count/package.json b/packages/extension-character-count/package.json index 536b75dfd8..b4a70e98f3 100644 --- a/packages/extension-character-count/package.json +++ b/packages/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.4" + "@tiptap/extensions": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 9e0675580f..63aa2fa26e 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 837c7296d1..1b6cf3c967 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,9 +31,9 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/extension-code-block": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4", + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/extension-code-block": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5", "lowlight": "^3.3.0" }, "peerDependencies": { diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index c16acfb9bd..6686d3faf8 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 3b92cc54bd..0a22cb1931 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 69d4c36257..5f72fd6045 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 5c2280daa4..50e331dc4f 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-collaboration-cursor/CHANGELOG.md b/packages/extension-collaboration-cursor/CHANGELOG.md index e77baf2c94..9d3e370ffe 100644 --- a/packages/extension-collaboration-cursor/CHANGELOG.md +++ b/packages/extension-collaboration-cursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.5 + +### Major Changes + +- a33d20c: Replaced y-prosemirror with @tiptap/y-tiptap + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-collaboration-cursor/package.json b/packages/extension-collaboration-cursor/package.json index 13dd64c8b7..2eb098bc8c 100644 --- a/packages/extension-collaboration-cursor/package.json +++ b/packages/extension-collaboration-cursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-cursor", "description": "collaboration cursor extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4", + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5", "@tiptap/y-tiptap": "^1.0.0" }, "peerDependencies": { diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 28e531db61..db4deba044 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.5 + +### Major Changes + +- a33d20c: Replaced y-prosemirror with @tiptap/y-tiptap + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 3eede27a1c..87aee447a1 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4", + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5", "@tiptap/y-tiptap": "^1.0.0" }, "peerDependencies": { diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 89296a5077..20dfedb90e 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 4eee69a9c3..a949ce2067 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-text-style": "^3.0.0-next.4" + "@tiptap/extension-text-style": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-text-style": "^3.0.0-next.1" diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index d91f98a75e..28af1053b3 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 094b7effac..9988372652 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-dropcursor/CHANGELOG.md b/packages/extension-dropcursor/CHANGELOG.md index 01c8150fba..7b1aff2185 100644 --- a/packages/extension-dropcursor/CHANGELOG.md +++ b/packages/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-dropcursor/package.json b/packages/extension-dropcursor/package.json index b8965ff188..68f6b7ef73 100644 --- a/packages/extension-dropcursor/package.json +++ b/packages/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.4" + "@tiptap/extensions": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 4ce08d4968..190e8d7ea2 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 413d02fddf..373a7391bd 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -32,8 +32,8 @@ ], "devDependencies": { "@floating-ui/dom": "^1.6.12", - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@floating-ui/dom": "^1.0.0", diff --git a/packages/extension-focus/CHANGELOG.md b/packages/extension-focus/CHANGELOG.md index 0ea6ed4ca1..8b83d4f308 100644 --- a/packages/extension-focus/CHANGELOG.md +++ b/packages/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.5 + +### Patch Changes + +- @tiptap/extensions@3.0.0-next.5 + ## 3.0.0-next.4 ### Patch Changes diff --git a/packages/extension-focus/package.json b/packages/extension-focus/package.json index 21813e9e4d..5e058f6203 100644 --- a/packages/extension-focus/package.json +++ b/packages/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-next.4" + "@tiptap/extensions": "3.0.0-next.5" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-next.4" + "@tiptap/extensions": "3.0.0-next.5" }, "repository": { "type": "git", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index c24e3406cc..5a231e0940 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index d19ca7ab35..681e6d4365 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-text-style": "^3.0.0-next.4" + "@tiptap/extension-text-style": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-text-style": "^3.0.0-next.3" diff --git a/packages/extension-gapcursor/CHANGELOG.md b/packages/extension-gapcursor/CHANGELOG.md index d716af34b3..2be64053d6 100644 --- a/packages/extension-gapcursor/CHANGELOG.md +++ b/packages/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-gapcursor/package.json b/packages/extension-gapcursor/package.json index 4677fca213..1b1b72da8c 100644 --- a/packages/extension-gapcursor/package.json +++ b/packages/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.4" + "@tiptap/extensions": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 3541abdb19..2c64886b84 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index a4917d698b..a3e8c6d53f 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 87c676f84b..f956133036 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 3c3b05f8a7..4cc4d84548 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 97b14b6dcf..2e8a365570 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 38babea31c..731cf1bb52 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-history/CHANGELOG.md b/packages/extension-history/CHANGELOG.md index c32967550e..90a653e40d 100644 --- a/packages/extension-history/CHANGELOG.md +++ b/packages/extension-history/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-history/package.json b/packages/extension-history/package.json index 257d39a5c2..44d92be35d 100644 --- a/packages/extension-history/package.json +++ b/packages/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.4" + "@tiptap/extensions": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 295ad88ed1..1e67e38f28 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 231403caf7..96663deb56 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 6cdfce0d40..11d8ab1fa6 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 00c2e4401e..a922eda22d 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 031d7db685..eabcee2772 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 154316108d..1f68c662fc 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 418055bd4d..53ba7d5bb7 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 5132aa9d26..ddfb5e9ef6 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -34,8 +34,8 @@ "linkifyjs": "^4.2.0" }, "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-list-item/CHANGELOG.md b/packages/extension-list-item/CHANGELOG.md index 6bb8a7e1cb..ec169ee576 100644 --- a/packages/extension-list-item/CHANGELOG.md +++ b/packages/extension-list-item/CHANGELOG.md @@ -1,5 +1,162 @@ # Change Log +## 3.0.0-next.5 + +### Major Changes + +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-list-item/package.json b/packages/extension-list-item/package.json index 0e5783e694..386d45f4c4 100644 --- a/packages/extension-list-item/package.json +++ b/packages/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.4" + "@tiptap/extension-list": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-list-keymap/CHANGELOG.md b/packages/extension-list-keymap/CHANGELOG.md index 1541a4b1d9..24ba59a6f9 100644 --- a/packages/extension-list-keymap/CHANGELOG.md +++ b/packages/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,162 @@ # Change Log +## 3.0.0-next.5 + +### Major Changes + +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-list-keymap/package.json b/packages/extension-list-keymap/package.json index bcaabf09fa..c0c96bee04 100644 --- a/packages/extension-list-keymap/package.json +++ b/packages/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.4" + "@tiptap/extension-list": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 420e6f23d0..1a6b3c5867 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1 +1,3 @@ # Change Log + +## 3.0.0-next.5 diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index b746438af7..26c1b3e852 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -87,8 +87,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.4", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 2bdff7ea8b..50936c59d4 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 8b4d20c3b4..bfd51f1b2a 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,9 +31,9 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4", - "@tiptap/suggestion": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5", + "@tiptap/suggestion": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 85d4f436e8..141e22ffd1 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,162 @@ # Change Log +## 3.0.0-next.5 + +### Major Changes + +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index c1944451f4..0560e7f4b1 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.4" + "@tiptap/extension-list": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 5d4a850064..b1974e70d4 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 0dea1cb9d5..9b5be6dde5 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-placeholder/CHANGELOG.md b/packages/extension-placeholder/CHANGELOG.md index de8697e13d..fd6e78661e 100644 --- a/packages/extension-placeholder/CHANGELOG.md +++ b/packages/extension-placeholder/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-placeholder/package.json b/packages/extension-placeholder/package.json index 239513e21f..68034741fe 100644 --- a/packages/extension-placeholder/package.json +++ b/packages/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.4" + "@tiptap/extensions": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 4e0551dee4..a415fb3170 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 740b9366f6..39eaebdaed 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 7f230f5ead..f27ccf5e53 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 674b5477ed..a860c31618 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.3", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 58dea549eb..9263d43bcb 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 9efce9a0af..334c26b463 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.3", diff --git a/packages/extension-table-cell/CHANGELOG.md b/packages/extension-table-cell/CHANGELOG.md index 75d2af9cf5..c922529440 100644 --- a/packages/extension-table-cell/CHANGELOG.md +++ b/packages/extension-table-cell/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ### Minor Changes diff --git a/packages/extension-table-cell/package.json b/packages/extension-table-cell/package.json index c92c6111be..5a8a50edb1 100644 --- a/packages/extension-table-cell/package.json +++ b/packages/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-table": "^3.0.0-next.4" + "@tiptap/extension-table": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-table": "^3.0.0-next.3" diff --git a/packages/extension-table-header/CHANGELOG.md b/packages/extension-table-header/CHANGELOG.md index 90b65a4989..291961df0d 100644 --- a/packages/extension-table-header/CHANGELOG.md +++ b/packages/extension-table-header/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ### Minor Changes diff --git a/packages/extension-table-header/package.json b/packages/extension-table-header/package.json index e3d7db8b0f..0340241073 100644 --- a/packages/extension-table-header/package.json +++ b/packages/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-table": "^3.0.0-next.4" + "@tiptap/extension-table": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-table": "^3.0.0-next.3" diff --git a/packages/extension-table-row/CHANGELOG.md b/packages/extension-table-row/CHANGELOG.md index 6c8531921a..8a992af274 100644 --- a/packages/extension-table-row/CHANGELOG.md +++ b/packages/extension-table-row/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ### Minor Changes diff --git a/packages/extension-table-row/package.json b/packages/extension-table-row/package.json index 9087553a4f..e856ecac52 100644 --- a/packages/extension-table-row/package.json +++ b/packages/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-table": "^3.0.0-next.4" + "@tiptap/extension-table": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-table": "^3.0.0-next.3" diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index b0494cc0fc..ab7756be3c 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ### Minor Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 0c3d6eaa5c..32e725e707 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -71,8 +71,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-task-item/CHANGELOG.md b/packages/extension-task-item/CHANGELOG.md index d9f92e8e81..82062785d7 100644 --- a/packages/extension-task-item/CHANGELOG.md +++ b/packages/extension-task-item/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-task-item/package.json b/packages/extension-task-item/package.json index 833b6e3227..9da245db65 100644 --- a/packages/extension-task-item/package.json +++ b/packages/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.4" + "@tiptap/extension-list": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-task-list/CHANGELOG.md b/packages/extension-task-list/CHANGELOG.md index bfbcac55e2..eb806b9675 100644 --- a/packages/extension-task-list/CHANGELOG.md +++ b/packages/extension-task-list/CHANGELOG.md @@ -1,5 +1,162 @@ # Change Log +## 3.0.0-next.5 + +### Major Changes + +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-task-list/package.json b/packages/extension-task-list/package.json index c2c62567b1..f3c3ecfed8 100644 --- a/packages/extension-task-list/package.json +++ b/packages/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.4" + "@tiptap/extension-list": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index a22eebbdb3..7c32ae6fbe 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index fa16eff661..151d97d5eb 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 643bae3915..e835645d58 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.5 + +### Minor Changes + +- f77cbac: This updates the default value of the option `mergeNestedSpanStyles` to `true`, this will attempt to merge the styles of nested spans into the child span during HTML parsing. This prioritizes the style of the child span. This is used when parsing content created in other editors. (Fix for ProseMirror's default behavior.) + ## 3.0.0-next.4 ### Minor Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 3ce0c4d1c9..75ab1cdd82 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -87,7 +87,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 7ce1ac7ccc..cf96d6ad9b 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 23964be7db..4b0be6dc07 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 5c0ea3c9cb..e9227a6c98 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index bf18196e4c..0bcf6931a9 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 3f57b3f19b..4ba705697e 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index be813cc6e6..02435baea4 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 4e710a5881..d9e2af350d 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index dac2f07368..f39a252aa5 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 9046551e86..fcc18b5e01 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ### Major Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 661cd068c8..fc4b9ac3b2 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -95,8 +95,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.3", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index cf1851c1c6..9e281461d7 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ### Major Changes diff --git a/packages/html/package.json b/packages/html/package.json index bc36981aa6..d7b15ee487 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 33a0ce5364..b93f4e7b18 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/pm/package.json b/packages/pm/package.json index 1014706b5f..88fb0cf836 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index dac518578e..1659202100 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,156 @@ # Change Log +## 3.0.0-next.5 + +### Minor Changes + +- 0e3207f: Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), which allow you to render custom views for marks within the editor. This is useful for rendering custom UI for marks, like a color picker for a text color mark or a link editor for a link mark. + + Here is a plain JS markview example: + + ```ts + Mark.create({ + // Other options... + addMarkView() { + return ({ mark, HTMLAttributes }) => { + const dom = document.createElement('b') + const contentDOM = document.createElement('span') + + dom.appendChild(contentDOM) + + return { + dom, + contentDOM, + } + } + }, + }) + ``` + + ## React binding + + To use a React component for a markview, you can use the `@tiptap/react` package: + + ```ts + import { Mark } from '@tiptap/core' + import { ReactMarkViewRenderer } from '@tiptap/react' + + import Component from './Component.jsx' + + export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a React component: + + ```tsx + import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' + import React from 'react' + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) + } + ``` + + ## Vue 3 binding + + To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: + + ```ts + import { Mark } from '@tiptap/core' + import { VueMarkViewRenderer } from '@tiptap/vue-3' + + import Component from './Component.vue' + + export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a Vue 3 component: + + ```vue + + + + ``` + ## 3.0.0-next.4 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 798a98906a..0dd4ab089b 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -44,16 +44,16 @@ "use-sync-external-store": "^1.4.0" }, "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4", + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5", "@types/react": "^18.3.18", "@types/react-dom": "^18.3.5", "react": "^18.3.1", "react-dom": "^18.3.1" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "^3.0.0-next.4", - "@tiptap/extension-floating-menu": "^3.0.0-next.4" + "@tiptap/extension-bubble-menu": "^3.0.0-next.5", + "@tiptap/extension-floating-menu": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.4", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index a40de8b139..e08afca7c3 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,44 @@ # Change Log +## 3.0.0-next.5 + +### Patch Changes + +- Updated dependencies [0e3207f] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [062afaf] +- Updated dependencies [704f462] +- Updated dependencies [2c911d2] +- Updated dependencies [32958d6] +- Updated dependencies [062afaf] +- Updated dependencies [32958d6] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.0-next.5 + - @tiptap/extension-ordered-list@3.0.0-next.5 + - @tiptap/extension-bullet-list@3.0.0-next.5 + - @tiptap/extension-list-keymap@3.0.0-next.5 + - @tiptap/extension-list-item@3.0.0-next.5 + - @tiptap/extension-blockquote@3.0.0-next.5 + - @tiptap/extension-bold@3.0.0-next.5 + - @tiptap/extension-code@3.0.0-next.5 + - @tiptap/extension-code-block@3.0.0-next.5 + - @tiptap/extension-document@3.0.0-next.5 + - @tiptap/extension-dropcursor@3.0.0-next.5 + - @tiptap/extension-gapcursor@3.0.0-next.5 + - @tiptap/extension-hard-break@3.0.0-next.5 + - @tiptap/extension-heading@3.0.0-next.5 + - @tiptap/extension-history@3.0.0-next.5 + - @tiptap/extension-horizontal-rule@3.0.0-next.5 + - @tiptap/extension-italic@3.0.0-next.5 + - @tiptap/extension-link@3.0.0-next.5 + - @tiptap/extension-paragraph@3.0.0-next.5 + - @tiptap/extension-strike@3.0.0-next.5 + - @tiptap/extension-text@3.0.0-next.5 + - @tiptap/extension-underline@3.0.0-next.5 + - @tiptap/extensions@3.0.0-next.5 + - @tiptap/pm@3.0.0-next.5 + ## 3.0.0-next.4 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 22b774b024..1e9bd4337d 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,30 +31,30 @@ "dist" ], "dependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/extension-blockquote": "^3.0.0-next.4", - "@tiptap/extension-bold": "^3.0.0-next.4", - "@tiptap/extension-bullet-list": "^3.0.0-next.4", - "@tiptap/extension-code": "^3.0.0-next.4", - "@tiptap/extension-code-block": "^3.0.0-next.4", - "@tiptap/extension-document": "^3.0.0-next.4", - "@tiptap/extension-dropcursor": "^3.0.0-next.4", - "@tiptap/extension-gapcursor": "^3.0.0-next.4", - "@tiptap/extension-hard-break": "^3.0.0-next.4", - "@tiptap/extension-heading": "^3.0.0-next.4", - "@tiptap/extension-history": "^3.0.0-next.4", - "@tiptap/extension-horizontal-rule": "^3.0.0-next.4", - "@tiptap/extension-italic": "^3.0.0-next.4", - "@tiptap/extension-link": "^3.0.0-next.4", - "@tiptap/extension-list-item": "^3.0.0-next.4", - "@tiptap/extension-list-keymap": "^3.0.0-next.4", - "@tiptap/extension-ordered-list": "^3.0.0-next.4", - "@tiptap/extension-paragraph": "^3.0.0-next.4", - "@tiptap/extension-strike": "^3.0.0-next.4", - "@tiptap/extension-text": "^3.0.0-next.4", - "@tiptap/extension-underline": "^3.0.0-next.4", - "@tiptap/extensions": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/extension-blockquote": "^3.0.0-next.5", + "@tiptap/extension-bold": "^3.0.0-next.5", + "@tiptap/extension-bullet-list": "^3.0.0-next.5", + "@tiptap/extension-code": "^3.0.0-next.5", + "@tiptap/extension-code-block": "^3.0.0-next.5", + "@tiptap/extension-document": "^3.0.0-next.5", + "@tiptap/extension-dropcursor": "^3.0.0-next.5", + "@tiptap/extension-gapcursor": "^3.0.0-next.5", + "@tiptap/extension-hard-break": "^3.0.0-next.5", + "@tiptap/extension-heading": "^3.0.0-next.5", + "@tiptap/extension-history": "^3.0.0-next.5", + "@tiptap/extension-horizontal-rule": "^3.0.0-next.5", + "@tiptap/extension-italic": "^3.0.0-next.5", + "@tiptap/extension-link": "^3.0.0-next.5", + "@tiptap/extension-list-item": "^3.0.0-next.5", + "@tiptap/extension-list-keymap": "^3.0.0-next.5", + "@tiptap/extension-ordered-list": "^3.0.0-next.5", + "@tiptap/extension-paragraph": "^3.0.0-next.5", + "@tiptap/extension-strike": "^3.0.0-next.5", + "@tiptap/extension-text": "^3.0.0-next.5", + "@tiptap/extension-underline": "^3.0.0-next.5", + "@tiptap/extensions": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "repository": { "type": "git", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index db2ee867f4..9ff8520e8a 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ### Major Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index d3978a7a89..bdb3c52f15 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -72,8 +72,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4", + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5", "@types/react": "^18.2.14", "@types/react-dom": "^18.2.6", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 7be761173c..6d04b0faa0 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ## 3.0.0-next.3 diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 04ef376c73..f82e1fe6b5 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4" + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index e8f899d433..e26dfe7120 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-next.5 + ## 3.0.0-next.4 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index e6b1dd2654..97553d0f90 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -42,13 +42,13 @@ "vue-ts-types": "1.6.2" }, "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4", + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5", "vue": "^2.7.16" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "^3.0.0-next.4", - "@tiptap/extension-floating-menu": "^3.0.0-next.4" + "@tiptap/extension-bubble-menu": "^3.0.0-next.5", + "@tiptap/extension-floating-menu": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.4", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 645ba38e9e..96d3557b4e 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,156 @@ # Change Log +## 3.0.0-next.5 + +### Minor Changes + +- 0e3207f: Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), which allow you to render custom views for marks within the editor. This is useful for rendering custom UI for marks, like a color picker for a text color mark or a link editor for a link mark. + + Here is a plain JS markview example: + + ```ts + Mark.create({ + // Other options... + addMarkView() { + return ({ mark, HTMLAttributes }) => { + const dom = document.createElement('b') + const contentDOM = document.createElement('span') + + dom.appendChild(contentDOM) + + return { + dom, + contentDOM, + } + } + }, + }) + ``` + + ## React binding + + To use a React component for a markview, you can use the `@tiptap/react` package: + + ```ts + import { Mark } from '@tiptap/core' + import { ReactMarkViewRenderer } from '@tiptap/react' + + import Component from './Component.jsx' + + export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a React component: + + ```tsx + import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' + import React from 'react' + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) + } + ``` + + ## Vue 3 binding + + To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: + + ```ts + import { Mark } from '@tiptap/core' + import { VueMarkViewRenderer } from '@tiptap/vue-3' + + import Component from './Component.vue' + + export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a Vue 3 component: + + ```vue + + + + ``` + ## 3.0.0-next.4 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 7a40e174ef..15f8d7de90 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-next.4", + "version": "3.0.0-next.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -39,13 +39,13 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.4", - "@tiptap/pm": "^3.0.0-next.4", + "@tiptap/core": "^3.0.0-next.5", + "@tiptap/pm": "^3.0.0-next.5", "vue": "^3.5.13" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "^3.0.0-next.4", - "@tiptap/extension-floating-menu": "^3.0.0-next.4" + "@tiptap/extension-bubble-menu": "^3.0.0-next.5", + "@tiptap/extension-floating-menu": "^3.0.0-next.5" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9226ab8ebb..bb46d3137c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -301,19 +301,19 @@ importers: packages/core: devDependencies: '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-blockquote: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-bold: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-bubble-menu: @@ -323,37 +323,37 @@ importers: version: 1.6.13 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-bullet-list: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-list packages/extension-character-count: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extensions packages/extension-code: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-code-block: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-code-block-lowlight: @@ -363,13 +363,13 @@ importers: version: 11.11.1 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/extension-code-block': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-code-block '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm lowlight: specifier: ^3.3.0 @@ -382,10 +382,10 @@ importers: version: 13.6.23 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm '@tiptap/y-tiptap': specifier: ^1.0.0 @@ -394,10 +394,10 @@ importers: packages/extension-collaboration-cursor: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm '@tiptap/y-tiptap': specifier: ^1.0.0 @@ -406,19 +406,19 @@ importers: packages/extension-color: devDependencies: '@tiptap/extension-text-style': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-text-style packages/extension-document: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-dropcursor: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extensions packages/extension-floating-menu: @@ -427,73 +427,73 @@ importers: specifier: ^1.6.12 version: 1.6.13 '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-next.4 + specifier: 3.0.0-next.5 version: link:../extensions packages/extension-font-family: devDependencies: '@tiptap/extension-text-style': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-text-style packages/extension-gapcursor: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extensions packages/extension-hard-break: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-heading: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-highlight: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-history: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extensions packages/extension-horizontal-rule: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-image: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-italic: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-link: @@ -503,169 +503,169 @@ importers: version: 4.2.0 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-list: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-list-item: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-list packages/extension-list-keymap: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-list packages/extension-mention: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm '@tiptap/suggestion': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../suggestion packages/extension-ordered-list: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-list packages/extension-paragraph: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-placeholder: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extensions packages/extension-strike: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-subscript: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-superscript: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-table: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/extension-table-cell: devDependencies: '@tiptap/extension-table': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-table packages/extension-table-header: devDependencies: '@tiptap/extension-table': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-table packages/extension-table-row: devDependencies: '@tiptap/extension-table': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-table packages/extension-task-item: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-list packages/extension-task-list: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-list packages/extension-text: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-text-align: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-text-style: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-typography: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-underline: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extension-youtube: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core packages/extensions: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/html: @@ -675,10 +675,10 @@ importers: version: 14.12.3 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/pm: @@ -751,17 +751,17 @@ importers: version: 1.4.0(react@18.3.1) optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm '@types/react': specifier: ^18.3.18 @@ -779,76 +779,76 @@ importers: packages/starter-kit: dependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/extension-blockquote': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-blockquote '@tiptap/extension-bold': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-bold '@tiptap/extension-bullet-list': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-bullet-list '@tiptap/extension-code': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-code '@tiptap/extension-code-block': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-code-block '@tiptap/extension-document': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-document '@tiptap/extension-dropcursor': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-dropcursor '@tiptap/extension-gapcursor': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-gapcursor '@tiptap/extension-hard-break': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-hard-break '@tiptap/extension-heading': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-heading '@tiptap/extension-history': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-history '@tiptap/extension-horizontal-rule': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-horizontal-rule '@tiptap/extension-italic': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-italic '@tiptap/extension-link': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-link '@tiptap/extension-list-item': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-list-item '@tiptap/extension-list-keymap': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-list-keymap '@tiptap/extension-ordered-list': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-ordered-list '@tiptap/extension-paragraph': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-paragraph '@tiptap/extension-strike': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-strike '@tiptap/extension-text': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-text '@tiptap/extension-underline': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-underline '@tiptap/extensions': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extensions '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/static-renderer: @@ -867,19 +867,19 @@ importers: version: 18.3.1(react@18.3.1) devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/suggestion: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm packages/vue-2: @@ -889,17 +889,17 @@ importers: version: 1.6.2(vue@2.7.16) optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm vue: specifier: ^2.7.16 @@ -912,17 +912,17 @@ importers: version: 1.6.13 optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.4 + specifier: ^3.0.0-next.5 version: link:../pm vue: specifier: ^3.5.13 From 881a58fa391672befe99a8e4c305e8e6002ca256 Mon Sep 17 00:00:00 2001 From: Nick Perez Date: Wed, 29 Jan 2025 15:59:19 +0100 Subject: [PATCH 105/629] feat: add a codemod for transforming imports (#6067) --- .../tiptap-2-migrate-imports/.codemodrc.json | 14 + codemods/tiptap-2-migrate-imports/.gitignore | 4 + codemods/tiptap-2-migrate-imports/.prettierrc | 7 + codemods/tiptap-2-migrate-imports/README.md | 120 +++ .../__testfixtures__/fixture1.input | 4 + .../__testfixtures__/fixture1.output | 1 + .../__testfixtures__/fixture2.input | 4 + .../__testfixtures__/fixture2.output | 1 + .../__testfixtures__/fixture3.input | 4 + .../__testfixtures__/fixture3.output | 6 + .../__testfixtures__/fixture4.input | 3 + .../__testfixtures__/fixture4.output | 1 + .../__testfixtures__/fixture5.input | 2 + .../__testfixtures__/fixture5.output | 1 + .../__testfixtures__/fixture6.input | 2 + .../__testfixtures__/fixture6.output | 1 + .../__testfixtures__/fixture7.input | 1 + .../__testfixtures__/fixture7.output | 2 + .../__testfixtures__/fixture8.input | 1 + .../__testfixtures__/fixture8.output | 2 + .../__testfixtures__/fixture9.input | 1 + .../__testfixtures__/fixture9.output | 2 + .../tiptap-2-migrate-imports/package.json | 22 + .../tiptap-2-migrate-imports/src/index.ts | 142 ++++ .../tiptap-2-migrate-imports/test/test.ts | 165 ++++ .../tiptap-2-migrate-imports/tsconfig.json | 38 + .../tiptap-2-migrate-imports/vitest.config.ts | 7 + pnpm-lock.yaml | 739 ++++++++++++++++++ pnpm-workspace.yaml | 5 +- 29 files changed, 1300 insertions(+), 2 deletions(-) create mode 100644 codemods/tiptap-2-migrate-imports/.codemodrc.json create mode 100644 codemods/tiptap-2-migrate-imports/.gitignore create mode 100644 codemods/tiptap-2-migrate-imports/.prettierrc create mode 100644 codemods/tiptap-2-migrate-imports/README.md create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.output create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.output create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.output create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.output create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.output create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.output create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.output create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.input create mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.output create mode 100644 codemods/tiptap-2-migrate-imports/package.json create mode 100644 codemods/tiptap-2-migrate-imports/src/index.ts create mode 100644 codemods/tiptap-2-migrate-imports/test/test.ts create mode 100644 codemods/tiptap-2-migrate-imports/tsconfig.json create mode 100644 codemods/tiptap-2-migrate-imports/vitest.config.ts diff --git a/codemods/tiptap-2-migrate-imports/.codemodrc.json b/codemods/tiptap-2-migrate-imports/.codemodrc.json new file mode 100644 index 0000000000..6eea424d13 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/.codemodrc.json @@ -0,0 +1,14 @@ +{ + "$schema": "https://codemod-utils.s3.us-west-1.amazonaws.com/configuration_schema.json", + "name": "tiptap-2-migrate-imports", + "version": "1.0.1", + "engine": "jscodeshift", + "private": false, + "arguments": [], + "meta": { + "tags": [ + "tiptap" + ], + "git": "https://github.com/ueberdosis/tiptap.git" + } +} \ No newline at end of file diff --git a/codemods/tiptap-2-migrate-imports/.gitignore b/codemods/tiptap-2-migrate-imports/.gitignore new file mode 100644 index 0000000000..6e5c59b0a1 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/.gitignore @@ -0,0 +1,4 @@ +node_modules +cdmd_dist +pnpm-lock.yaml +package-lock.json \ No newline at end of file diff --git a/codemods/tiptap-2-migrate-imports/.prettierrc b/codemods/tiptap-2-migrate-imports/.prettierrc new file mode 100644 index 0000000000..d8175bd721 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/.prettierrc @@ -0,0 +1,7 @@ +{ + "tabWidth": 2, + "semi": true, + "singleQuote": false, + "arrowParens": "avoid", + "printWidth": 120 +} diff --git a/codemods/tiptap-2-migrate-imports/README.md b/codemods/tiptap-2-migrate-imports/README.md new file mode 100644 index 0000000000..b0e1d40a57 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/README.md @@ -0,0 +1,120 @@ + +This is a [codemod](https://codemod.com) created with [```codemod init```](https://docs.codemod.com/deploying-codemods/cli#codemod-init). + +## Using this codemod + +You can run this codemod with the following command: + +```bash +npx codemod tiptap-2-migrate-imports +``` + +### Before + +```ts +import Table from '@tiptap/extension-table'; +import TableRow from '@tiptap/extension-table-row'; +import TableCell from '@tiptap/extension-table-cell'; +import TableHeader from '@tiptap/extension-table-header'; +``` + +### After + +```ts +import { + Table, + TableRow, + TableCell, + TableHeader, +} from '@tiptap/extension-table'; +``` + +, + +### Before + +```ts +import { Table } from '@tiptap/extension-table'; +import { TableRow } from '@tiptap/extension-table-row'; +import { TableCell } from '@tiptap/extension-table-cell'; +import { TableHeader } from '@tiptap/extension-table-header'; +``` + +### After + +```ts +import { + Table, + TableRow, + TableCell, + TableHeader, +} from '@tiptap/extension-table'; +``` + +, + +### Before + +```ts +import Table1 from '@tiptap/extension-table'; +import TableR from '@tiptap/extension-table-row'; +import TableCel from '@tiptap/extension-table-cell'; +import TableHead from '@tiptap/extension-table-header'; +``` + +### After + +```ts +import { + Table as Table1, + TableRow as TableR, + TableCell as TableCel, + TableHeader as TableHead, +} from '@tiptap/extension-table'; +``` + +, + +### Before + +```ts +import BulletList from '@tiptap/extension-bullet-list'; +import OrderedList from '@tiptap/extension-ordered-list'; +import ListItem from '@tiptap/extension-list-item'; +``` + +### After + +```ts +import { BulletList, OrderedList, ListItem } from '@tiptap/extension-list'; +``` + +, + +### Before + +```ts +import TextStyle from '@tiptap/extension-text-style'; +import { Color } from '@tiptap/extension-color'; +``` + +### After + +```ts +import { TextStyle, Color } from '@tiptap/extension-text-style'; +``` + +, + +### Before + +```ts +import { PlaceHolder } from '@tiptap/extension-placeholder'; +import History from '@tiptap/extension-history'; +``` + +### After + +```ts +import { PlaceHolder, History } from '@tiptap/extensions'; +``` diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.input new file mode 100644 index 0000000000..d832c4151e --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.input @@ -0,0 +1,4 @@ +import Table from "@tiptap/extension-table"; +import TableCell from "@tiptap/extension-table-cell"; +import TableHeader from "@tiptap/extension-table-header"; +import TableRow from "@tiptap/extension-table-row"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.output new file mode 100644 index 0000000000..160b18dcf7 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.output @@ -0,0 +1 @@ +import { Table, TableCell, TableHeader, TableRow } from "@tiptap/extension-table"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.input new file mode 100644 index 0000000000..41161815bc --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.input @@ -0,0 +1,4 @@ +import { Table } from "@tiptap/extension-table"; +import { TableCell } from "@tiptap/extension-table-cell"; +import { TableHeader } from "@tiptap/extension-table-header"; +import { TableRow } from "@tiptap/extension-table-row"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.output new file mode 100644 index 0000000000..160b18dcf7 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.output @@ -0,0 +1 @@ +import { Table, TableCell, TableHeader, TableRow } from "@tiptap/extension-table"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.input new file mode 100644 index 0000000000..f70153979c --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.input @@ -0,0 +1,4 @@ +import Table1 from "@tiptap/extension-table"; +import TableCel from "@tiptap/extension-table-cell"; +import TableHead from "@tiptap/extension-table-header"; +import TableR from "@tiptap/extension-table-row"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.output new file mode 100644 index 0000000000..991c6c7d5f --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.output @@ -0,0 +1,6 @@ +import { + Table as Table1, + TableCell as TableCel, + TableHeader as TableHead, + TableRow as TableR, +} from "@tiptap/extension-table"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.input new file mode 100644 index 0000000000..9e5d063270 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.input @@ -0,0 +1,3 @@ +import BulletList from "@tiptap/extension-bullet-list"; +import ListItem from "@tiptap/extension-list-item"; +import OrderedList from "@tiptap/extension-ordered-list"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.output new file mode 100644 index 0000000000..55e4c70421 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.output @@ -0,0 +1 @@ +import { BulletList, ListItem, OrderedList } from "@tiptap/extension-list"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.input new file mode 100644 index 0000000000..a929fde2ad --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.input @@ -0,0 +1,2 @@ +import { Color } from "@tiptap/extension-color"; +import TextStyle from "@tiptap/extension-text-style"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.output new file mode 100644 index 0000000000..31d05c4b4e --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.output @@ -0,0 +1 @@ +import { Color, TextStyle } from "@tiptap/extension-text-style"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input new file mode 100644 index 0000000000..14384872da --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input @@ -0,0 +1,2 @@ +import History from "@tiptap/extension-history"; +import { Placeholder } from "@tiptap/extension-placeholder"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output new file mode 100644 index 0000000000..3254473733 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output @@ -0,0 +1 @@ +import { History, Placeholder } from "@tiptap/extensions"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.input new file mode 100644 index 0000000000..2670c2c954 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.input @@ -0,0 +1 @@ +import { FloatingMenu, BubbleMenu, useEditor } from "@tiptap/react"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.output new file mode 100644 index 0000000000..0f88144244 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.output @@ -0,0 +1,2 @@ +import { useEditor } from "@tiptap/react"; +import { FloatingMenu, BubbleMenu } from "@tiptap/react/menus"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.input new file mode 100644 index 0000000000..bade9f330b --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.input @@ -0,0 +1 @@ +import { FloatingMenu, BubbleMenu, useEditor } from "@tiptap/vue-3"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.output new file mode 100644 index 0000000000..1eacf663f4 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.output @@ -0,0 +1,2 @@ +import { useEditor } from "@tiptap/vue-3"; +import { FloatingMenu, BubbleMenu } from "@tiptap/vue-3/menus"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.input new file mode 100644 index 0000000000..5af77773d4 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.input @@ -0,0 +1 @@ +import { FloatingMenu, BubbleMenu, useEditor } from "@tiptap/vue-2"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.output new file mode 100644 index 0000000000..b86c3d7dd8 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.output @@ -0,0 +1,2 @@ +import { useEditor } from "@tiptap/vue-2"; +import { FloatingMenu, BubbleMenu } from "@tiptap/vue-2/menus"; diff --git a/codemods/tiptap-2-migrate-imports/package.json b/codemods/tiptap-2-migrate-imports/package.json new file mode 100644 index 0000000000..8401fb3403 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/package.json @@ -0,0 +1,22 @@ +{ + "name": "tiptap-2-migrate-imports", + "devDependencies": { + "@types/node": "20.9.0", + "typescript": "^5.2.2", + "vitest": "^1.0.1", + "@codemod.com/codemod-utils": "*", + "jscodeshift": "^0.15.1", + "@types/jscodeshift": "^0.11.10" + }, + "scripts": { + "test": "vitest run", + "test:watch": "vitest watch" + }, + "files": [ + "README.md", + ".codemodrc.json", + "/dist/index.cjs" + ], + "type": "module", + "author": "nperez0111" +} diff --git a/codemods/tiptap-2-migrate-imports/src/index.ts b/codemods/tiptap-2-migrate-imports/src/index.ts new file mode 100644 index 0000000000..e1a52f893b --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/src/index.ts @@ -0,0 +1,142 @@ +/* eslint-disable semi */ +export default function transform(file: any, api: any) { + const j = api.jscodeshift as typeof import("jscodeshift"); + const root = j(file.source); + let dirtyFlag = false; + + // Define the mapping of old module paths to the new consolidated module path + const moduleMapping = { + // extension-table + "@tiptap/extension-table": "Table", + "@tiptap/extension-table-row": "TableRow", + "@tiptap/extension-table-cell": "TableCell", + "@tiptap/extension-table-header": "TableHeader", + // extension-list + "@tiptap/extension-list-item": "ListItem", + "@tiptap/extension-bullet-list": "BulletList", + "@tiptap/extension-ordered-list": "OrderedList", + "@tiptap/extension-task-item": "TaskItem", + "@tiptap/extension-task-list": "TaskList", + "@tiptap/extension-list-keymap": "ListKeymap", + // extension-text-style + "@tiptap/extension-text-style": "TextStyle", + "@tiptap/extension-color": "Color", + "@tiptap/extension-font-family": "FontFamily", + // extensions + "@tiptap/extension-character-count": "CharacterCount", + "@tiptap/extension-dropcursor": "Dropcursor", + "@tiptap/extension-gapcursor": "Gapcursor", + "@tiptap/extension-focus": "Focus", + "@tiptap/extension-history": "History", + "@tiptap/extension-placeholder": "Placeholder", + }; + + const importMapping = { + // extension-table + "@tiptap/extension-table": "@tiptap/extension-table", + "@tiptap/extension-table-row": "@tiptap/extension-table", + "@tiptap/extension-table-cell": "@tiptap/extension-table", + "@tiptap/extension-table-header": "@tiptap/extension-table", + // extension-list + "@tiptap/extension-list-item": "@tiptap/extension-list", + "@tiptap/extension-bullet-list": "@tiptap/extension-list", + "@tiptap/extension-ordered-list": "@tiptap/extension-list", + "@tiptap/extension-task-item": "@tiptap/extension-list", + "@tiptap/extension-task-list": "@tiptap/extension-list", + "@tiptap/extension-list-keymap": "@tiptap/extension-list", + // extension-text-style + "@tiptap/extension-text-style": "@tiptap/extension-text-style", + "@tiptap/extension-color": "@tiptap/extension-text-style", + "@tiptap/extension-font-family": "@tiptap/extension-text-style", + // extensions + "@tiptap/extension-character-count": "@tiptap/extensions", + "@tiptap/extension-dropcursor": "@tiptap/extensions", + "@tiptap/extension-gapcursor": "@tiptap/extensions", + "@tiptap/extension-focus": "@tiptap/extensions", + "@tiptap/extension-history": "@tiptap/extensions", + "@tiptap/extension-placeholder": "@tiptap/extensions", + }; + + // Collect all import specifiers that need to be consolidated + const importSpecifiers = {} as Record<(typeof importMapping)[keyof typeof importMapping], Array | undefined>; + + // Find all relevant import declarations + root.find(j.ImportDeclaration).forEach(path => { + const sourceValue = path.node.source.value as keyof typeof moduleMapping; + if (moduleMapping[sourceValue]) { + path.node.specifiers?.forEach(specifier => { + if (j.ImportDefaultSpecifier.check(specifier) || j.ImportSpecifier.check(specifier)) { + const importedName = j.ImportDefaultSpecifier.check(specifier) + ? moduleMapping[sourceValue] + : specifier.imported.name; + const localName = specifier.local?.name; + if (!localName) { + return; + } + if (!importSpecifiers[importMapping[sourceValue]]) { + importSpecifiers[importMapping[sourceValue]] = []; + } + importSpecifiers[importMapping[sourceValue]]?.push( + j.importSpecifier(j.identifier(importedName), localName !== importedName ? j.identifier(localName) : null), + ); + } + }); + j(path).remove(); + dirtyFlag = true; + } + }); + + // If there are import specifiers to consolidate, create a new import declaration + Object.entries(importSpecifiers).forEach(([destinationModule, specifiers]) => { + if (Array.isArray(specifiers) && specifiers.length > 0) { + const newImportDeclaration = j.importDeclaration(specifiers, j.literal(destinationModule)); + root.get().node.program.body.unshift(newImportDeclaration); + } + }); + + // Find all import declarations from '@tiptap/react' + root + .find( + j.ImportDeclaration, + ({ source: { value } }) => value === "@tiptap/react" || value === "@tiptap/vue-3" || value === "@tiptap/vue-2", + ) + .forEach(path => { + const specifiers = path.node.specifiers; + const newSpecifiers: any[] = []; + const menusSpecifiers: any[] = []; + + if (!specifiers) { + return; + } + + // Separate specifiers into those that stay and those that move to '@tiptap/react/menus' + specifiers.forEach(specifier => { + if ( + j.ImportSpecifier.check(specifier) && + (specifier.imported.name === "FloatingMenu" || specifier.imported.name === "BubbleMenu") + ) { + menusSpecifiers.push(specifier); + } else { + newSpecifiers.push(specifier); + } + }); + + // If there are specifiers to move, create a new import declaration + if (menusSpecifiers.length > 0) { + dirtyFlag = true; + const menusImport = j.importDeclaration(menusSpecifiers, j.literal(`${path.value.source.value}/menus`)); + j(path).insertAfter(menusImport); + } + + // Update the original import declaration or remove it if empty + if (newSpecifiers.length > 0) { + path.node.specifiers = newSpecifiers; + } else { + j(path).remove(); + } + }); + + return dirtyFlag ? root.toSource() : undefined; +} + +export const parser = "tsx"; diff --git a/codemods/tiptap-2-migrate-imports/test/test.ts b/codemods/tiptap-2-migrate-imports/test/test.ts new file mode 100644 index 0000000000..0c5500dbbc --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/test/test.ts @@ -0,0 +1,165 @@ +/* eslint-disable semi */ +import jscodeshift, { type API } from "jscodeshift"; +import assert from "node:assert"; +import { readFile } from "node:fs/promises"; +import { join } from "node:path"; +import { describe, it } from "vitest"; + +import transform from "../src/index.js"; + +const buildApi = (parser: string | undefined): API => ({ + j: parser ? jscodeshift.withParser(parser) : jscodeshift, + jscodeshift: parser ? jscodeshift.withParser(parser) : jscodeshift, + stats: () => { + console.error("The stats function was called, which is not supported on purpose"); + }, + report: () => { + console.error("The report function was called, which is not supported on purpose"); + }, +}); + +describe("tiptap/2/consolidate-extensions", () => { + it("test #1", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture1.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture1.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); + + it("test #2", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture2.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture2.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); + + it("test #3", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture3.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture3.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); + + it("test #4", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture4.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture4.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); + + it("test #5", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture5.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture5.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), + // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); + + it("test #6", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture6.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture6.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); + + it("test #7", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture7.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture7.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); + + it("test #8", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture8.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture8.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); + it("test #9", async () => { + const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture9.input"), "utf-8"); + const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture9.output"), "utf-8"); + + const actualOutput = transform( + { + path: "index.js", + source: INPUT, + }, + buildApi("tsx"), // @ts-expect-error + {}, + ); + + assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); + }); +}); diff --git a/codemods/tiptap-2-migrate-imports/tsconfig.json b/codemods/tiptap-2-migrate-imports/tsconfig.json new file mode 100644 index 0000000000..b277021787 --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/tsconfig.json @@ -0,0 +1,38 @@ +{ + "compilerOptions": { + "module": "NodeNext", + "target": "ESNext", + "moduleResolution": "NodeNext", + "lib": [ + "ESNext", + "DOM" + ], + "skipLibCheck": true, + "esModuleInterop": true, + "resolveJsonModule": true, + "allowSyntheticDefaultImports": true, + "isolatedModules": true, + "jsx": "react-jsx", + "useDefineForClassFields": true, + "noFallthroughCasesInSwitch": true, + "noUnusedLocals": false, + "noUnusedParameters": false, + "preserveWatchOutput": true, + "strict": true, + "strictNullChecks": true, + "incremental": true, + "noUncheckedIndexedAccess": true, + "noPropertyAccessFromIndexSignature": false, + "allowJs": true + }, + "include": [ + "./src/**/*.ts", + "./src/**/*.js", + "./test/**/*.ts", + "./test/**/*.js" + ], + "exclude": ["node_modules", "./dist/**/*"], + "ts-node": { + "transpileOnly": true + } +} \ No newline at end of file diff --git a/codemods/tiptap-2-migrate-imports/vitest.config.ts b/codemods/tiptap-2-migrate-imports/vitest.config.ts new file mode 100644 index 0000000000..951b877bee --- /dev/null +++ b/codemods/tiptap-2-migrate-imports/vitest.config.ts @@ -0,0 +1,7 @@ +import { configDefaults, defineConfig } from 'vitest/config'; + +export default defineConfig({ + test: { + include: [...configDefaults.include, '**/test/*.ts'], + }, +}); \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bb46d3137c..a471bb9fc9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -129,6 +129,27 @@ importers: specifier: ^5.97.1 version: 5.97.1(esbuild@0.24.2) + codemods/tiptap-2-migrate-imports: + devDependencies: + '@codemod.com/codemod-utils': + specifier: '*' + version: 1.0.0(@babel/preset-env@7.26.0(@babel/core@7.26.0)) + '@types/jscodeshift': + specifier: ^0.11.10 + version: 0.11.11 + '@types/node': + specifier: 20.9.0 + version: 20.9.0 + jscodeshift: + specifier: ^0.15.1 + version: 0.15.2(@babel/preset-env@7.26.0(@babel/core@7.26.0)) + typescript: + specifier: ^5.2.2 + version: 5.7.3 + vitest: + specifier: ^1.0.1 + version: 1.6.0(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0) + demos: dependencies: '@floating-ui/dom': @@ -1092,6 +1113,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-flow@7.26.0': + resolution: {integrity: sha512-B+O2DnPc0iG+YXFqOxv2WNuNU97ToWjOomUQ78DouOENWUaM5sVrmet9mcomUGQFwpJd//gvUagXBSdzO1fRKg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-assertions@7.26.0': resolution: {integrity: sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==} engines: {node: '>=6.9.0'} @@ -1120,6 +1147,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-typescript@7.25.9': + resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-unicode-sets-regex@7.18.6': resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} engines: {node: '>=6.9.0'} @@ -1222,6 +1255,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-flow-strip-types@7.26.5': + resolution: {integrity: sha512-eGK26RsbIkYUns3Y8qKl362juDDYK+wEdPGHGrhzUl6CewZFo55VZ7hg+CyMFU4dd5QQakBN86nBMpRsFpRvbQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-for-of@7.25.9': resolution: {integrity: sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A==} engines: {node: '>=6.9.0'} @@ -1438,6 +1477,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-typescript@7.26.7': + resolution: {integrity: sha512-5cJurntg+AT+cgelGP9Bt788DKiAw9gIMSMU2NJrLAilnj0m8WZWUNZPSLOmadYsujHutpgElO+50foX+ib/Wg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-unicode-escapes@7.25.9': resolution: {integrity: sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==} engines: {node: '>=6.9.0'} @@ -1468,6 +1513,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/preset-flow@7.25.9': + resolution: {integrity: sha512-EASHsAhE+SSlEzJ4bzfusnXSHiU+JfAYzj+jbw2vgQKgq5HrUr8qs+vgtiEL5dOH6sEweI+PNt2D7AqrDSHyqQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/preset-modules@0.1.6-no-external-plugins': resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} peerDependencies: @@ -1479,6 +1530,18 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/preset-typescript@7.26.0': + resolution: {integrity: sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/register@7.25.9': + resolution: {integrity: sha512-8D43jXtGsYmEeDvm4MWHYUpWf8iiXgWYx3fW7E7Wb7Oe6FWqJPl5K6TuFW0dOwNZzEE5rjlaSJYH9JjrUKJszA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/runtime@7.26.0': resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==} engines: {node: '>=6.9.0'} @@ -1550,6 +1613,9 @@ packages: '@changesets/write@0.3.2': resolution: {integrity: sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==} + '@codemod.com/codemod-utils@1.0.0': + resolution: {integrity: sha512-Uo7oA2kgpfRJS5LFL9ARdsaeenRyEsRHINoTcIsHeBFBce+imLhrkYlEhXcrNYuTLVXmlGx2Mdn6NeUio4wpfw==} + '@colors/colors@1.5.0': resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} @@ -1979,6 +2045,10 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} + '@jest/schemas@29.6.3': + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jridgewell/gen-mapping@0.3.8': resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} @@ -2405,6 +2475,9 @@ packages: '@shikijs/vscode-textmate@10.0.1': resolution: {integrity: sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==} + '@sinclair/typebox@0.27.8': + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + '@sveltejs/vite-plugin-svelte-inspector@2.1.0': resolution: {integrity: sha512-9QX28IymvBlSCqsCll5t0kQVxipsfhFFL+L2t3nTWfXnddYwxBuAEtTtlaVQpRz9c37BhJjltSeY4AJSC03SSg==} engines: {node: ^18.0.0 || >=20} @@ -2465,6 +2538,9 @@ packages: '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + '@types/jscodeshift@0.11.11': + resolution: {integrity: sha512-d7CAfFGOupj5qCDqMODXxNz2/NwCv/Lha78ZFbnr6qpk3K98iSB8I+ig9ERE2+EeYML352VMRsjPyOpeA+04eQ==} + '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -2486,6 +2562,9 @@ packages: '@types/node@12.20.55': resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} + '@types/node@20.9.0': + resolution: {integrity: sha512-nekiGu2NDb1BcVofVcEKMIwzlx4NjHlcjhoxxKBNLtz15Y1z7MYf549DFvkHSId02Ax6kGwWntIBPC3l/JZcmw==} + '@types/node@22.10.3': resolution: {integrity: sha512-DifAyw4BkrufCILvD3ucnuN8eydUfc/C1GlyrnI+LK6543w5/L3VeVgf05o3B4fqSXP1dKYLOZsKfutpxPzZrw==} @@ -2579,6 +2658,21 @@ packages: vite: ^5.0.0 || ^6.0.0 vue: ^3.2.25 + '@vitest/expect@1.6.0': + resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} + + '@vitest/runner@1.6.0': + resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} + + '@vitest/snapshot@1.6.0': + resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} + + '@vitest/spy@1.6.0': + resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} + + '@vitest/utils@1.6.0': + resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} + '@vue/compiler-core@3.5.13': resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} @@ -2674,6 +2768,10 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + acorn-walk@8.3.4: + resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} + engines: {node: '>=0.4.0'} + acorn@8.14.0: resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} @@ -2807,6 +2905,17 @@ packages: resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} engines: {node: '>=0.8'} + assertion-error@1.1.0: + resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + + ast-types@0.14.2: + resolution: {integrity: sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==} + engines: {node: '>=4'} + + ast-types@0.16.1: + resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} + engines: {node: '>=4'} + astral-regex@2.0.0: resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} engines: {node: '>=8'} @@ -2845,6 +2954,11 @@ packages: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} engines: {node: '>= 0.4'} + babel-core@7.0.0-bridge.0: + resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + babel-loader@9.2.1: resolution: {integrity: sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==} engines: {node: '>= 14.15.0'} @@ -2983,6 +3097,10 @@ packages: ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + chai@4.5.0: + resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} + engines: {node: '>=4'} + chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -3004,6 +3122,9 @@ packages: chardet@0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + check-more-types@2.24.0: resolution: {integrity: sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==} engines: {node: '>= 0.8.0'} @@ -3064,6 +3185,10 @@ packages: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} + clone-deep@4.0.1: + resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} + engines: {node: '>=6'} + clone@1.0.4: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} engines: {node: '>=0.8'} @@ -3129,6 +3254,9 @@ packages: resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} engines: {node: '>=4.0.0'} + commondir@1.0.1: + resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} + compare-func@2.0.0: resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} @@ -3393,6 +3521,10 @@ packages: dedent@0.7.0: resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} + deep-eql@4.1.4: + resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} + engines: {node: '>=6'} + deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} @@ -3444,6 +3576,10 @@ packages: didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -3815,6 +3951,10 @@ packages: resolution: {integrity: sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==} engines: {node: '>=14.16'} + find-cache-dir@2.1.0: + resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} + engines: {node: '>=6'} + find-cache-dir@4.0.0: resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==} engines: {node: '>=14.16'} @@ -3825,6 +3965,10 @@ packages: find-root@1.1.0: resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} + find-up@3.0.0: + resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} + engines: {node: '>=6'} + find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -3852,6 +3996,10 @@ packages: flatted@3.3.2: resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} + flow-parser@0.259.1: + resolution: {integrity: sha512-xiXLmMH2Z7OmdE9Q+MjljUMr/rbemFqZIRxaeZieVScG4HzQrKKhNcCYZbWTGpoN7ZPi7z8ClQbeVPq6t5AszQ==} + engines: {node: '>=0.4.0'} + follow-redirects@1.15.9: resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} engines: {node: '>=4.0'} @@ -3927,6 +4075,9 @@ packages: resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} engines: {node: '>=18'} + get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + get-intrinsic@1.2.7: resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} engines: {node: '>= 0.4'} @@ -4273,6 +4424,10 @@ packages: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} engines: {node: '>=8'} + is-plain-object@2.0.4: + resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} + engines: {node: '>=0.10.0'} + is-reference@3.0.3: resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} @@ -4352,6 +4507,10 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + isobject@3.0.1: + resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} + engines: {node: '>=0.10.0'} + isomorphic.js@0.2.5: resolution: {integrity: sha512-PIeMbHqMt4DnUP3MA/Flc0HElYjMXArsw1qwJZcm9sqR8mq3l8NYizFMty0pWwE/tzIGH3EKK5+jes5mAr85yw==} @@ -4380,6 +4539,9 @@ packages: js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + js-tokens@9.0.1: + resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} + js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true @@ -4391,6 +4553,24 @@ packages: jsbn@0.1.1: resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} + jscodeshift@0.15.2: + resolution: {integrity: sha512-FquR7Okgmc4Sd0aEDwqho3rEiKR3BdvuG9jfdHjLJ6JQoWSMpavug3AoIfnfWhxFlf+5pzQh8qjqz0DWFrNQzA==} + hasBin: true + peerDependencies: + '@babel/preset-env': ^7.1.6 + peerDependenciesMeta: + '@babel/preset-env': + optional: true + + jscodeshift@0.16.1: + resolution: {integrity: sha512-oMQXySazy63awNBzMpXbbVv73u3irdxTeX2L5ueRyFRxi32qb9uzdZdOY5fTBYADBG19l5M/wnGknZSV1dzCdA==} + hasBin: true + peerDependencies: + '@babel/preset-env': ^7.1.6 + peerDependenciesMeta: + '@babel/preset-env': + optional: true + jsesc@3.0.2: resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} engines: {node: '>=6'} @@ -4448,6 +4628,10 @@ packages: keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + kleur@4.1.5: resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} @@ -4507,9 +4691,17 @@ packages: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} + local-pkg@0.5.1: + resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} + engines: {node: '>=14'} + locate-character@3.0.0: resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} + locate-path@3.0.0: + resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} + engines: {node: '>=6'} + locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -4584,6 +4776,9 @@ packages: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true + loupe@2.3.7: + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + lowlight@3.3.0: resolution: {integrity: sha512-0JNhgFoPvP6U6lE/UdVsSq99tn6DhjjpAj5MxG49ewd2mOBVtwWYIT8ClyABhq198aXXODMU6Ox8DrGy/CpTZQ==} @@ -4600,6 +4795,10 @@ packages: magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + make-dir@2.1.0: + resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} + engines: {node: '>=6'} + markdown-it@14.1.0: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true @@ -4726,6 +4925,10 @@ packages: node-addon-api@7.1.1: resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} + node-dir@0.1.17: + resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} + engines: {node: '>= 0.10.5'} + node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} @@ -4847,6 +5050,14 @@ packages: resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + p-limit@5.0.0: + resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} + engines: {node: '>=18'} + + p-locate@3.0.0: + resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} + engines: {node: '>=6'} + p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -4889,6 +5100,10 @@ packages: resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==} engines: {node: '>=0.10.0'} + path-exists@3.0.0: + resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} + engines: {node: '>=4'} + path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -4920,9 +5135,15 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} + pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + pathe@2.0.2: resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==} + pathval@1.1.1: + resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + pend@1.2.0: resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} @@ -4960,6 +5181,10 @@ packages: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} + pkg-dir@3.0.0: + resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} + engines: {node: '>=6'} + pkg-dir@7.0.0: resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} engines: {node: '>=14.16'} @@ -5060,6 +5285,10 @@ packages: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + pretty-format@29.7.0: + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + prismjs@1.29.0: resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} engines: {node: '>=6'} @@ -5183,6 +5412,9 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} + react-is@18.3.1: + resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + react-refresh@0.13.0: resolution: {integrity: sha512-XP8A9BT0CpRBD+NYLLeIhld/RqG9+gktUjW1FkE+Vm7OCinbG1SshcK5tb9ls4kzvjZr9mOQc7HYgBngEyPAXg==} engines: {node: '>=0.10.0'} @@ -5210,6 +5442,14 @@ packages: resolution: {integrity: sha512-h80JrZu/MHUZCyHu5ciuoI0+WxsCxzxJTILn6Fs8rxSnFPh+UVHYfeIxK1nVGugMqkfC4vJcBOYbkfkwYK0+gw==} engines: {node: '>= 14.18.0'} + recast@0.20.5: + resolution: {integrity: sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==} + engines: {node: '>= 4'} + + recast@0.23.9: + resolution: {integrity: sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==} + engines: {node: '>= 4'} + reflect.getprototypeof@1.0.10: resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} engines: {node: '>= 0.4'} @@ -5300,6 +5540,11 @@ packages: rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + rimraf@2.6.3: + resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} deprecated: Rimraf versions prior to v4 are no longer supported @@ -5369,6 +5614,10 @@ packages: secure-compare@3.0.1: resolution: {integrity: sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw==} + semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -5393,6 +5642,10 @@ packages: resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} engines: {node: '>= 0.4'} + shallow-clone@3.0.1: + resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} + engines: {node: '>=8'} + shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -5420,6 +5673,9 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} + siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -5487,6 +5743,12 @@ packages: engines: {node: '>=0.10.0'} hasBin: true + stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + + std-env@3.8.0: + resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} + string-argv@0.3.2: resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} engines: {node: '>=0.6.19'} @@ -5549,6 +5811,9 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} + strip-literal@2.1.1: + resolution: {integrity: sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==} + sucrase@3.35.0: resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} engines: {node: '>=16 || 14 >=14.17'} @@ -5589,6 +5854,14 @@ packages: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} + temp@0.8.4: + resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} + engines: {node: '>=6.0.0'} + + temp@0.9.4: + resolution: {integrity: sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==} + engines: {node: '>=6.0.0'} + term-size@2.2.1: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} engines: {node: '>=8'} @@ -5637,6 +5910,9 @@ packages: tiny-invariant@1.3.3: resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} + tinybench@2.9.0: + resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} + tinyexec@0.3.2: resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} @@ -5644,6 +5920,14 @@ packages: resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} engines: {node: '>=12.0.0'} + tinypool@0.8.4: + resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} + engines: {node: '>=14.0.0'} + + tinyspy@2.2.1: + resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} + engines: {node: '>=14.0.0'} + tldts-core@6.1.73: resolution: {integrity: sha512-k1g5eX87vxu3g//6XMn62y4qjayu4cYby/PF7Ksnh4F4uUK1Z1ze/mJ4a+y5OjdJ+cXRp+YTInZhH+FGdUWy1w==} @@ -5809,6 +6093,9 @@ packages: resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} engines: {node: '>= 0.4'} + undici-types@5.26.5: + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@6.20.0: resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} @@ -5912,6 +6199,11 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + vite-node@1.6.0: + resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + vite-plugin-checker@0.6.4: resolution: {integrity: sha512-2zKHH5oxr+ye43nReRbC2fny1nyARwhxdm0uNYp/ERy4YvU9iZpNOsueoi/luXw5gnpqRSvjcEPxXbS153O2wA==} engines: {node: '>=14.16'} @@ -5982,6 +6274,31 @@ packages: vite: optional: true + vitest@1.6.0: + resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': 1.6.0 + '@vitest/ui': 1.6.0 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + vscode-jsonrpc@6.0.0: resolution: {integrity: sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==} engines: {node: '>=8.0.0 || >=10.0.0'} @@ -6105,6 +6422,11 @@ packages: engines: {node: '>= 8'} hasBin: true + why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} + engines: {node: '>=8'} + hasBin: true + word-wrap@1.2.5: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} @@ -6128,6 +6450,13 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + write-file-atomic@2.4.3: + resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==} + + write-file-atomic@5.0.1: + resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + ws@8.18.0: resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} engines: {node: '>=10.0.0'} @@ -6426,6 +6755,11 @@ snapshots: dependencies: '@babel/core': 7.26.0 + '@babel/plugin-syntax-flow@7.26.0(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-syntax-import-assertions@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -6451,6 +6785,11 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -6561,6 +6900,12 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-transform-flow-strip-types@7.26.5(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-syntax-flow': 7.26.0(@babel/core@7.26.0) + '@babel/plugin-transform-for-of@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -6792,6 +7137,17 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-transform-typescript@7.26.7(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.26.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0) + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-unicode-escapes@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -6890,6 +7246,13 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/preset-flow@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-transform-flow-strip-types': 7.26.5(@babel/core@7.26.0) + '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -6909,6 +7272,26 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/preset-typescript@7.26.0(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) + '@babel/plugin-transform-typescript': 7.26.7(@babel/core@7.26.0) + transitivePeerDependencies: + - supports-color + + '@babel/register@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + clone-deep: 4.0.1 + find-cache-dir: 2.1.0 + make-dir: 2.1.0 + pirates: 4.0.6 + source-map-support: 0.5.21 + '@babel/runtime@7.26.0': dependencies: regenerator-runtime: 0.14.1 @@ -7078,6 +7461,15 @@ snapshots: human-id: 1.0.2 prettier: 2.8.8 + '@codemod.com/codemod-utils@1.0.0(@babel/preset-env@7.26.0(@babel/core@7.26.0))': + dependencies: + '@babel/parser': 7.26.5 + '@types/jscodeshift': 0.11.11 + jscodeshift: 0.16.1(@babel/preset-env@7.26.0(@babel/core@7.26.0)) + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color + '@colors/colors@1.5.0': optional: true @@ -7446,6 +7838,10 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 + '@jest/schemas@29.6.3': + dependencies: + '@sinclair/typebox': 0.27.8 + '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 @@ -7881,6 +8277,8 @@ snapshots: '@shikijs/vscode-textmate@10.0.1': {} + '@sinclair/typebox@0.27.8': {} + '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.13(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.13(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))': dependencies: '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.13(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) @@ -7954,6 +8352,11 @@ snapshots: dependencies: '@types/unist': 3.0.3 + '@types/jscodeshift@0.11.11': + dependencies: + ast-types: 0.14.2 + recast: 0.20.5 + '@types/json-schema@7.0.15': {} '@types/json5@0.0.29': {} @@ -7973,6 +8376,10 @@ snapshots: '@types/node@12.20.55': {} + '@types/node@20.9.0': + dependencies: + undici-types: 5.26.5 + '@types/node@22.10.3': dependencies: undici-types: 6.20.0 @@ -8100,6 +8507,35 @@ snapshots: vite: 5.4.13(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) vue: 3.5.13(typescript@5.7.3) + '@vitest/expect@1.6.0': + dependencies: + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + chai: 4.5.0 + + '@vitest/runner@1.6.0': + dependencies: + '@vitest/utils': 1.6.0 + p-limit: 5.0.0 + pathe: 1.1.2 + + '@vitest/snapshot@1.6.0': + dependencies: + magic-string: 0.30.17 + pathe: 1.1.2 + pretty-format: 29.7.0 + + '@vitest/spy@1.6.0': + dependencies: + tinyspy: 2.2.1 + + '@vitest/utils@1.6.0': + dependencies: + diff-sequences: 29.6.3 + estree-walker: 3.0.3 + loupe: 2.3.7 + pretty-format: 29.7.0 + '@vue/compiler-core@3.5.13': dependencies: '@babel/parser': 7.26.5 @@ -8253,6 +8689,10 @@ snapshots: dependencies: acorn: 8.14.0 + acorn-walk@8.3.4: + dependencies: + acorn: 8.14.0 + acorn@8.14.0: {} aggregate-error@3.1.0: @@ -8393,6 +8833,16 @@ snapshots: assert-plus@1.0.0: {} + assertion-error@1.1.0: {} + + ast-types@0.14.2: + dependencies: + tslib: 2.8.1 + + ast-types@0.16.1: + dependencies: + tslib: 2.8.1 + astral-regex@2.0.0: {} async@2.6.4: @@ -8425,6 +8875,10 @@ snapshots: axobject-query@4.1.0: {} + babel-core@7.0.0-bridge.0(@babel/core@7.26.0): + dependencies: + '@babel/core': 7.26.0 + babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.97.1(esbuild@0.24.2)): dependencies: '@babel/core': 7.26.0 @@ -8564,6 +9018,16 @@ snapshots: ccount@2.0.1: {} + chai@4.5.0: + dependencies: + assertion-error: 1.1.0 + check-error: 1.0.3 + deep-eql: 4.1.4 + get-func-name: 2.0.2 + loupe: 2.3.7 + pathval: 1.1.1 + type-detect: 4.1.0 + chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -8583,6 +9047,10 @@ snapshots: chardet@0.7.0: {} + check-error@1.0.3: + dependencies: + get-func-name: 2.0.2 + check-more-types@2.24.0: {} chokidar@3.6.0: @@ -8643,6 +9111,12 @@ snapshots: strip-ansi: 6.0.1 wrap-ansi: 7.0.0 + clone-deep@4.0.1: + dependencies: + is-plain-object: 2.0.4 + kind-of: 6.0.3 + shallow-clone: 3.0.1 + clone@1.0.4: {} code-red@1.0.4: @@ -8709,6 +9183,8 @@ snapshots: common-tags@1.8.2: {} + commondir@1.0.1: {} + compare-func@2.0.0: dependencies: array-ify: 1.0.0 @@ -9036,6 +9512,10 @@ snapshots: dedent@0.7.0: {} + deep-eql@4.1.4: + dependencies: + type-detect: 4.1.0 + deep-is@0.1.4: {} deepmerge@4.3.1: {} @@ -9079,6 +9559,8 @@ snapshots: didyoumean@1.2.2: {} + diff-sequences@29.6.3: {} + dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -9591,6 +10073,12 @@ snapshots: filter-obj@5.1.0: {} + find-cache-dir@2.1.0: + dependencies: + commondir: 1.0.1 + make-dir: 2.1.0 + pkg-dir: 3.0.0 + find-cache-dir@4.0.0: dependencies: common-path-prefix: 3.0.0 @@ -9603,6 +10091,10 @@ snapshots: find-root@1.1.0: {} + find-up@3.0.0: + dependencies: + locate-path: 3.0.0 + find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -9639,6 +10131,8 @@ snapshots: flatted@3.3.2: {} + flow-parser@0.259.1: {} + follow-redirects@1.15.9: {} for-each@0.3.3: @@ -9711,6 +10205,8 @@ snapshots: get-east-asian-width@1.3.0: {} + get-func-name@2.0.2: {} + get-intrinsic@1.2.7: dependencies: call-bind-apply-helpers: 1.0.1 @@ -10098,6 +10594,10 @@ snapshots: is-path-inside@3.0.3: {} + is-plain-object@2.0.4: + dependencies: + isobject: 3.0.1 + is-reference@3.0.3: dependencies: '@types/estree': 1.0.6 @@ -10167,6 +10667,8 @@ snapshots: isexe@2.0.0: {} + isobject@3.0.1: {} + isomorphic.js@0.2.5: {} isstream@0.1.2: {} @@ -10191,6 +10693,8 @@ snapshots: js-tokens@4.0.0: {} + js-tokens@9.0.1: {} + js-yaml@3.14.1: dependencies: argparse: 1.0.10 @@ -10202,6 +10706,59 @@ snapshots: jsbn@0.1.1: {} + jscodeshift@0.15.2(@babel/preset-env@7.26.0(@babel/core@7.26.0)): + dependencies: + '@babel/core': 7.26.0 + '@babel/parser': 7.26.5 + '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) + '@babel/plugin-transform-nullish-coalescing-operator': 7.26.6(@babel/core@7.26.0) + '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.26.0) + '@babel/preset-flow': 7.25.9(@babel/core@7.26.0) + '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) + '@babel/register': 7.25.9(@babel/core@7.26.0) + babel-core: 7.0.0-bridge.0(@babel/core@7.26.0) + chalk: 4.1.2 + flow-parser: 0.259.1 + graceful-fs: 4.2.11 + micromatch: 4.0.8 + neo-async: 2.6.2 + node-dir: 0.1.17 + recast: 0.23.9 + temp: 0.8.4 + write-file-atomic: 2.4.3 + optionalDependencies: + '@babel/preset-env': 7.26.0(@babel/core@7.26.0) + transitivePeerDependencies: + - supports-color + + jscodeshift@0.16.1(@babel/preset-env@7.26.0(@babel/core@7.26.0)): + dependencies: + '@babel/core': 7.26.0 + '@babel/parser': 7.26.5 + '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) + '@babel/plugin-transform-nullish-coalescing-operator': 7.26.6(@babel/core@7.26.0) + '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.26.0) + '@babel/preset-flow': 7.25.9(@babel/core@7.26.0) + '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) + '@babel/register': 7.25.9(@babel/core@7.26.0) + chalk: 4.1.2 + flow-parser: 0.259.1 + graceful-fs: 4.2.11 + micromatch: 4.0.8 + neo-async: 2.6.2 + node-dir: 0.1.17 + recast: 0.23.9 + temp: 0.9.4 + write-file-atomic: 5.0.1 + optionalDependencies: + '@babel/preset-env': 7.26.0(@babel/core@7.26.0) + transitivePeerDependencies: + - supports-color + jsesc@3.0.2: {} jsesc@3.1.0: {} @@ -10249,6 +10806,8 @@ snapshots: dependencies: json-buffer: 3.0.1 + kind-of@6.0.3: {} + kleur@4.1.5: {} lazy-ass@1.6.0: {} @@ -10315,8 +10874,18 @@ snapshots: loader-runner@4.3.0: {} + local-pkg@0.5.1: + dependencies: + mlly: 1.7.4 + pkg-types: 1.3.1 + locate-character@3.0.0: {} + locate-path@3.0.0: + dependencies: + p-locate: 3.0.0 + path-exists: 3.0.0 + locate-path@5.0.0: dependencies: p-locate: 4.1.0 @@ -10383,6 +10952,10 @@ snapshots: dependencies: js-tokens: 4.0.0 + loupe@2.3.7: + dependencies: + get-func-name: 2.0.2 + lowlight@3.3.0: dependencies: '@types/hast': 3.0.4 @@ -10401,6 +10974,11 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + make-dir@2.1.0: + dependencies: + pify: 4.0.1 + semver: 5.7.2 + markdown-it@14.1.0: dependencies: argparse: 2.0.1 @@ -10518,6 +11096,10 @@ snapshots: node-addon-api@7.1.1: optional: true + node-dir@0.1.17: + dependencies: + minimatch: 3.1.2 + node-releases@2.0.19: {} normalize-path@3.0.0: {} @@ -10654,6 +11236,14 @@ snapshots: dependencies: yocto-queue: 1.1.1 + p-limit@5.0.0: + dependencies: + yocto-queue: 1.1.1 + + p-locate@3.0.0: + dependencies: + p-limit: 2.3.0 + p-locate@4.1.0: dependencies: p-limit: 2.3.0 @@ -10691,6 +11281,8 @@ snapshots: parse-passwd@1.0.0: {} + path-exists@3.0.0: {} + path-exists@4.0.0: {} path-exists@5.0.0: {} @@ -10710,8 +11302,12 @@ snapshots: path-type@4.0.0: {} + pathe@1.1.2: {} + pathe@2.0.2: {} + pathval@1.1.1: {} + pend@1.2.0: {} performance-now@2.1.0: {} @@ -10736,6 +11332,10 @@ snapshots: pirates@4.0.6: {} + pkg-dir@3.0.0: + dependencies: + find-up: 3.0.0 + pkg-dir@7.0.0: dependencies: find-up: 6.3.0 @@ -10825,6 +11425,12 @@ snapshots: ansi-styles: 5.2.0 react-is: 17.0.2 + pretty-format@29.7.0: + dependencies: + '@jest/schemas': 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.3.1 + prismjs@1.29.0: {} process@0.11.10: {} @@ -10989,6 +11595,8 @@ snapshots: react-is@17.0.2: {} + react-is@18.3.1: {} + react-refresh@0.13.0: {} react@18.3.1: @@ -11018,6 +11626,21 @@ snapshots: readdirp@4.1.1: {} + recast@0.20.5: + dependencies: + ast-types: 0.14.2 + esprima: 4.0.1 + source-map: 0.6.1 + tslib: 2.8.1 + + recast@0.23.9: + dependencies: + ast-types: 0.16.1 + esprima: 4.0.1 + source-map: 0.6.1 + tiny-invariant: 1.3.3 + tslib: 2.8.1 + reflect.getprototypeof@1.0.10: dependencies: call-bind: 1.0.8 @@ -11117,6 +11740,10 @@ snapshots: rfdc@1.4.1: {} + rimraf@2.6.3: + dependencies: + glob: 7.2.3 + rimraf@3.0.2: dependencies: glob: 7.2.3 @@ -11214,6 +11841,8 @@ snapshots: secure-compare@3.0.1: {} + semver@5.7.2: {} + semver@6.3.1: {} semver@7.6.3: {} @@ -11244,6 +11873,10 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.1.1 + shallow-clone@3.0.1: + dependencies: + kind-of: 6.0.3 + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 @@ -11289,6 +11922,8 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 + siginfo@2.0.0: {} + signal-exit@3.0.7: {} signal-exit@4.1.0: {} @@ -11367,6 +12002,10 @@ snapshots: safer-buffer: 2.1.2 tweetnacl: 0.14.5 + stackback@0.0.2: {} + + std-env@3.8.0: {} + string-argv@0.3.2: {} string-width@4.2.3: @@ -11437,6 +12076,10 @@ snapshots: strip-json-comments@3.1.1: {} + strip-literal@2.1.1: + dependencies: + js-tokens: 9.0.1 + sucrase@3.35.0: dependencies: '@jridgewell/gen-mapping': 0.3.8 @@ -11511,6 +12154,15 @@ snapshots: tapable@2.2.1: {} + temp@0.8.4: + dependencies: + rimraf: 2.6.3 + + temp@0.9.4: + dependencies: + mkdirp: 0.5.6 + rimraf: 2.6.3 + term-size@2.2.1: {} terser-webpack-plugin@5.3.11(esbuild@0.24.2)(webpack@5.97.1(esbuild@0.24.2)): @@ -11549,6 +12201,8 @@ snapshots: tiny-invariant@1.3.3: {} + tinybench@2.9.0: {} + tinyexec@0.3.2: {} tinyglobby@0.2.10: @@ -11556,6 +12210,10 @@ snapshots: fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 + tinypool@0.8.4: {} + + tinyspy@2.2.1: {} + tldts-core@6.1.73: {} tldts@6.1.73: @@ -11728,6 +12386,8 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 + undici-types@5.26.5: {} + undici-types@6.20.0: {} undici@6.21.1: {} @@ -11820,6 +12480,24 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 + vite-node@1.6.0(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0): + dependencies: + cac: 6.7.14 + debug: 4.4.0(supports-color@8.1.1) + pathe: 1.1.2 + picocolors: 1.1.1 + vite: 5.4.13(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + vite-plugin-checker@0.6.4(eslint@8.57.1)(optionator@0.9.4)(typescript@5.7.3)(vite@5.4.13(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)): dependencies: '@babel/code-frame': 7.26.2 @@ -11843,6 +12521,17 @@ snapshots: optionator: 0.9.4 typescript: 5.7.3 + vite@5.4.13(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0): + dependencies: + esbuild: 0.21.5 + postcss: 8.5.1 + rollup: 4.31.0 + optionalDependencies: + '@types/node': 20.9.0 + fsevents: 2.3.3 + sass: 1.83.4 + terser: 5.37.0 + vite@5.4.13(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0): dependencies: esbuild: 0.21.5 @@ -11858,6 +12547,40 @@ snapshots: optionalDependencies: vite: 5.4.13(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) + vitest@1.6.0(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0): + dependencies: + '@vitest/expect': 1.6.0 + '@vitest/runner': 1.6.0 + '@vitest/snapshot': 1.6.0 + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + acorn-walk: 8.3.4 + chai: 4.5.0 + debug: 4.4.0(supports-color@8.1.1) + execa: 8.0.1 + local-pkg: 0.5.1 + magic-string: 0.30.17 + pathe: 1.1.2 + picocolors: 1.1.1 + std-env: 3.8.0 + strip-literal: 2.1.1 + tinybench: 2.9.0 + tinypool: 0.8.4 + vite: 5.4.13(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0) + vite-node: 1.6.0(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 20.9.0 + transitivePeerDependencies: + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + vscode-jsonrpc@6.0.0: {} vscode-languageclient@7.0.0: @@ -12030,6 +12753,11 @@ snapshots: dependencies: isexe: 2.0.0 + why-is-node-running@2.3.0: + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + word-wrap@1.2.5: {} wrap-ansi@6.2.0: @@ -12058,6 +12786,17 @@ snapshots: wrappy@1.0.2: {} + write-file-atomic@2.4.3: + dependencies: + graceful-fs: 4.2.11 + imurmurhash: 0.1.4 + signal-exit: 3.0.7 + + write-file-atomic@5.0.1: + dependencies: + imurmurhash: 0.1.4 + signal-exit: 4.1.0 + ws@8.18.0: {} xml-name-validator@4.0.0: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index ec54c079dc..e5f34d20fa 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,3 +1,4 @@ packages: - - 'packages/*' - - 'demos' + - "packages/*" + - "demos" + - "codemods/*" From 73f06715c3e4787c1c68ea8a6acab43dd465b657 Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Thu, 30 Jan 2025 18:09:17 +0100 Subject: [PATCH 106/629] remove unexisting package from changesets ignore list --- .changeset/config.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.changeset/config.json b/.changeset/config.json index 4e6ed5f2fc..b19d97d86a 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -7,10 +7,7 @@ "access": "public", "baseBranch": "main", "updateInternalDependencies": "patch", - "ignore": [ - "tiptap-demos", - "@tiptap-shared/rollup-config" - ], + "ignore": ["tiptap-demos"], "___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH": { "onlyUpdatePeerDependentsWhenOutOfRange": true } From 8c522f828c845b1b623bf82b586bbd2de8a7953f Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Thu, 30 Jan 2025 18:10:48 +0100 Subject: [PATCH 107/629] fix merge conflicts, remove tiptap-demos from config --- .changeset/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/config.json b/.changeset/config.json index b19d97d86a..7828f76af3 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -7,7 +7,7 @@ "access": "public", "baseBranch": "main", "updateInternalDependencies": "patch", - "ignore": ["tiptap-demos"], + "ignore": [], "___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH": { "onlyUpdatePeerDependentsWhenOutOfRange": true } From 108983112e3f183d679c1b17b56f67357ea95d90 Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Thu, 30 Jan 2025 18:16:42 +0100 Subject: [PATCH 108/629] add version to codemod --- codemods/tiptap-2-migrate-imports/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/codemods/tiptap-2-migrate-imports/package.json b/codemods/tiptap-2-migrate-imports/package.json index 8401fb3403..abc29b35a3 100644 --- a/codemods/tiptap-2-migrate-imports/package.json +++ b/codemods/tiptap-2-migrate-imports/package.json @@ -1,5 +1,6 @@ { "name": "tiptap-2-migrate-imports", + "version": "1.0.0", "devDependencies": { "@types/node": "20.9.0", "typescript": "^5.2.2", From 3ac7e290e93b0a16958d03d8e17aefc4de11ce10 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 30 Jan 2025 18:19:05 +0100 Subject: [PATCH 109/629] chore(release): publish a new pre-release version (next) (#6071) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 38 ++- demos/CHANGELOG.md | 6 + demos/package.json | 2 +- packages/core/CHANGELOG.md | 290 ++++++++++++++++++ packages/core/package.json | 4 +- packages/extension-blockquote/CHANGELOG.md | 6 + packages/extension-blockquote/package.json | 4 +- packages/extension-bold/CHANGELOG.md | 6 + packages/extension-bold/package.json | 4 +- packages/extension-bubble-menu/CHANGELOG.md | 32 ++ packages/extension-bubble-menu/package.json | 6 +- packages/extension-bullet-list/CHANGELOG.md | 158 ++++++++++ packages/extension-bullet-list/package.json | 4 +- .../extension-character-count/CHANGELOG.md | 6 + .../extension-character-count/package.json | 4 +- .../CHANGELOG.md | 6 + .../package.json | 8 +- packages/extension-code-block/CHANGELOG.md | 6 + packages/extension-code-block/package.json | 6 +- packages/extension-code/CHANGELOG.md | 6 + packages/extension-code/package.json | 4 +- .../CHANGELOG.md | 7 + .../package.json | 6 +- packages/extension-collaboration/CHANGELOG.md | 7 + packages/extension-collaboration/package.json | 6 +- packages/extension-color/CHANGELOG.md | 6 + packages/extension-color/package.json | 4 +- packages/extension-document/CHANGELOG.md | 6 + packages/extension-document/package.json | 4 +- packages/extension-dropcursor/CHANGELOG.md | 6 + packages/extension-dropcursor/package.json | 4 +- packages/extension-floating-menu/CHANGELOG.md | 32 ++ packages/extension-floating-menu/package.json | 6 +- packages/extension-focus/CHANGELOG.md | 11 + packages/extension-focus/package.json | 6 +- packages/extension-font-family/CHANGELOG.md | 6 + packages/extension-font-family/package.json | 4 +- packages/extension-gapcursor/CHANGELOG.md | 6 + packages/extension-gapcursor/package.json | 4 +- packages/extension-hard-break/CHANGELOG.md | 6 + packages/extension-hard-break/package.json | 4 +- packages/extension-heading/CHANGELOG.md | 6 + packages/extension-heading/package.json | 4 +- packages/extension-highlight/CHANGELOG.md | 6 + packages/extension-highlight/package.json | 4 +- packages/extension-history/CHANGELOG.md | 6 + packages/extension-history/package.json | 4 +- .../extension-horizontal-rule/CHANGELOG.md | 6 + .../extension-horizontal-rule/package.json | 6 +- packages/extension-image/CHANGELOG.md | 6 + packages/extension-image/package.json | 4 +- packages/extension-italic/CHANGELOG.md | 6 + packages/extension-italic/package.json | 4 +- packages/extension-link/CHANGELOG.md | 6 + packages/extension-link/package.json | 6 +- packages/extension-list-item/CHANGELOG.md | 158 ++++++++++ packages/extension-list-item/package.json | 4 +- packages/extension-list-keymap/CHANGELOG.md | 158 ++++++++++ packages/extension-list-keymap/package.json | 4 +- packages/extension-list/CHANGELOG.md | 2 + packages/extension-list/package.json | 6 +- packages/extension-mention/CHANGELOG.md | 32 ++ packages/extension-mention/package.json | 8 +- packages/extension-ordered-list/CHANGELOG.md | 158 ++++++++++ packages/extension-ordered-list/package.json | 4 +- packages/extension-paragraph/CHANGELOG.md | 6 + packages/extension-paragraph/package.json | 4 +- packages/extension-placeholder/CHANGELOG.md | 7 + packages/extension-placeholder/package.json | 4 +- packages/extension-strike/CHANGELOG.md | 6 + packages/extension-strike/package.json | 4 +- packages/extension-subscript/CHANGELOG.md | 6 + packages/extension-subscript/package.json | 6 +- packages/extension-superscript/CHANGELOG.md | 6 + packages/extension-superscript/package.json | 6 +- packages/extension-table-cell/CHANGELOG.md | 131 ++++++++ packages/extension-table-cell/package.json | 4 +- packages/extension-table-header/CHANGELOG.md | 131 ++++++++ packages/extension-table-header/package.json | 4 +- packages/extension-table-row/CHANGELOG.md | 131 ++++++++ packages/extension-table-row/package.json | 4 +- packages/extension-table/CHANGELOG.md | 131 ++++++++ packages/extension-table/package.json | 6 +- packages/extension-task-item/CHANGELOG.md | 6 + packages/extension-task-item/package.json | 4 +- packages/extension-task-list/CHANGELOG.md | 158 ++++++++++ packages/extension-task-list/package.json | 4 +- packages/extension-text-align/CHANGELOG.md | 6 + packages/extension-text-align/package.json | 4 +- packages/extension-text-style/CHANGELOG.md | 117 +++++++ packages/extension-text-style/package.json | 4 +- packages/extension-text/CHANGELOG.md | 6 + packages/extension-text/package.json | 4 +- packages/extension-typography/CHANGELOG.md | 6 + packages/extension-typography/package.json | 4 +- packages/extension-underline/CHANGELOG.md | 6 + packages/extension-underline/package.json | 4 +- packages/extension-youtube/CHANGELOG.md | 6 + packages/extension-youtube/package.json | 4 +- packages/extensions/CHANGELOG.md | 124 ++++++++ packages/extensions/package.json | 6 +- packages/html/CHANGELOG.md | 7 + packages/html/package.json | 6 +- packages/pm/CHANGELOG.md | 6 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 183 +++++++++++ packages/react/package.json | 10 +- packages/starter-kit/CHANGELOG.md | 60 ++++ packages/starter-kit/package.json | 50 +-- packages/static-renderer/CHANGELOG.md | 274 +++++++++++++++++ packages/static-renderer/package.json | 6 +- packages/suggestion/CHANGELOG.md | 32 ++ packages/suggestion/package.json | 6 +- packages/vue-2/CHANGELOG.md | 32 ++ packages/vue-2/package.json | 10 +- packages/vue-3/CHANGELOG.md | 181 +++++++++++ packages/vue-3/package.json | 10 +- pnpm-lock.yaml | 214 ++++++------- 118 files changed, 3239 insertions(+), 275 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index f70057d8f6..c0197b5028 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -57,7 +57,41 @@ "@tiptap/suggestion": "2.11.4", "@tiptap/vue-2": "2.11.4", "@tiptap/vue-3": "2.11.4", - "@tiptap-shared/rollup-config": "1.0.0" + "@tiptap-shared/rollup-config": "1.0.0", + "tiptap-2-migrate-imports": "1.0.0", + "@tiptap/extension-list": "3.0.0-next.5", + "@tiptap/extensions": "3.0.0-next.5", + "@tiptap/static-renderer": "3.0.0-next.5" }, - "changesets": [] + "changesets": [ + "big-wolves-design", + "blue-shrimps-rush", + "chilled-trees-agree", + "chilly-lemons-remember", + "cool-bananas-breathe", + "curly-adults-move", + "dirty-bats-look", + "dirty-colts-shave", + "eighty-gifts-matter", + "fair-jars-shout", + "gold-ads-own", + "green-wolves-arrive", + "healthy-pigs-work", + "large-kangaroos-battle", + "lazy-needles-train", + "moody-geckos-sort", + "nervous-hairs-walk", + "orange-spoons-rescue", + "perfect-rice-vanish", + "quick-days-matter", + "red-ants-wonder", + "red-rivers-exist", + "seven-llamas-love", + "sixty-news-ring", + "tame-worms-applaud", + "tidy-fireants-hang", + "twenty-moose-invent", + "weak-books-eat", + "witty-eels-cheer" + ] } diff --git a/demos/CHANGELOG.md b/demos/CHANGELOG.md index ac3349a5da..804e8cd68e 100644 --- a/demos/CHANGELOG.md +++ b/demos/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.0 ### Major Changes diff --git a/demos/package.json b/demos/package.json index 909c72cdc3..75a3558e1c 100644 --- a/demos/package.json +++ b/demos/package.json @@ -1,6 +1,6 @@ { "name": "tiptap-demos", - "version": "3.0.0-next.0", + "version": "3.0.0-next.1", "private": true, "type": "module", "scripts": { diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 92a1cd420e..b8aec43dd1 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,295 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 37913d5: `getPos` in `NodeViewRendererProps` type now includes `undefined` as possible return value + + Before + + ```ts + const pos = nodeViewProps.getPos() // Type was () => number + ``` + + After + + ```ts + const pos = nodeViewProps.getPos() // Type is () => number | undefined + + if (pos !== undefined) { + // Safe to use pos here + } + ``` + +- 32958d6: `Node`, `Mark` and `Extension` config options now are strongly typed and do not allow arbitrary keys on the options object. + + To add keys, like when using `extendNodeSchema` or `extendMarkSchema`, you can do this: + + ```ts + declare module '@tiptap/core' { + interface NodeConfig { + /** + * This key will be added to all NodeConfig objects in your project + */ + newKey?: string + } + interface MarkConfig { + /** + * This key will be added to all MarkConfig objects in your project + */ + newKey?: string + } + interface ExtensionConfig { + /** + * This key will be added to all ExtensionConfig objects in your project + */ + newKey?: string + } + } + ``` + +- 12bb31a: `insertContent` and `insertContentAt` commands should not split text nodes like paragraphs into multiple nodes when the inserted content is at the beginning of the text to avoid empty nodes being created +- 062afaf: `clearContent` command defaults to emitting updates now +- 062afaf: Change signature of `setContent` command to `(content, options)` and default to emitting updates +- 32958d6: `editor.storage` is now strongly typed `Storage` instances, using a similar pattern as commands, where you can define the type of the storage value using namespaces like: + + ```ts + declare module '@tiptap/core' { + interface Storage { + extensionName: StorageValue + } + } + ``` + +- 32958d6: `editor.storage` is instantiated per editor rather than per extension. + + Previously, the storage value was a singleton per extension instance, this caused strange bugs when using multiple editor instances on a single page. + + Now, storage instances are _per editor instance_, so changing the value on one `editor.storage` instance will not affect another editor's value. + +### Minor Changes + +- 0e3207f: Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), which allow you to render custom views for marks within the editor. This is useful for rendering custom UI for marks, like a color picker for a text color mark or a link editor for a link mark. + + Here is a plain JS markview example: + + ```ts + Mark.create({ + // Other options... + addMarkView() { + return ({ mark, HTMLAttributes }) => { + const dom = document.createElement('b') + const contentDOM = document.createElement('span') + + dom.appendChild(contentDOM) + + return { + dom, + contentDOM, + } + } + }, + }) + ``` + + ## React binding + + To use a React component for a markview, you can use the `@tiptap/react` package: + + ```ts + import { Mark } from '@tiptap/core' + import { ReactMarkViewRenderer } from '@tiptap/react' + + import Component from './Component.jsx' + + export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a React component: + + ```tsx + import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' + import React from 'react' + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) + } + ``` + + ## Vue 3 binding + + To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: + + ```ts + import { Mark } from '@tiptap/core' + import { VueMarkViewRenderer } from '@tiptap/vue-3' + + import Component from './Component.vue' + + export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a Vue 3 component: + + ```vue + + + + ``` + +- 28c5418: Adds a new `delete` event which can detect content which has been deleted by the editor as a core extension +- ff8eed6: Support [`validate` option](https://prosemirror.net/docs/ref/#model.AttributeSpec.validate) in node and mark attribute definitions. +- 704f462: This introduces a new behavior for the editor, the ability to be safely run on the server-side (without rendering). + + `prosemirror-view` encapsulates all view (& DOM) related code, and cannot safely be SSR'd, but, the majority of the editor instance itself is in plain JS that does not require DOM APIs (unless your content is specified in HTML). + + But, we have so many convenient methods available for manipulating content. So, it is a shame that they could not be used on the server side too. With this change, the editor can be rendered on the server-side and will use a stub for select prosemirror-view methods. If accessing unsupported methods or values on the `editor.view`, you will encounter runtime errors, so it is important for you to test to see if the methods you call actually work. + + This is a step towards being able to server-side render content, but, it is not completely supported yet. This does not mean that you can render an editor instance on the server and expect it to just output any HTML. + + ## Usage + + If you pass `element: null` to your editor options: + + - the `editor.view` will not be initialized + - the editor will not emit it's `'create'` event + - the focus will not be initialized to it's first position + + You can however, later use the new `mount` function on the instance, which will mount the editor view to a DOM element. This obviously will not be allowed on the server which has no document object. + + Therefore, this will work on the server: + + ```ts + import { Editor } from '@tiptap/core' + import StarterKit from '@tiptap/starter-kit' + + const editor = new Editor({ + element: null, + content: { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, World!' }] }] }, + extensions: [StarterKit], + }) + + editor + .chain() + .selectAll() + .setContent({ type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'XYZ' }] }] }) + .run() + + console.log(editor.state.doc.toJSON()) + // { type: 'doc', content: [ { type: 'paragraph', content: [ { type: 'text', text: 'XYZ' } ] } ] } + ``` + + Any of these things will not work on the server, and result in a runtime error: + + ```ts + import { Editor } from '@tiptap/core' + import StarterKit from '@tiptap/starter-kit' + + const editor = new Editor({ + // document will not be defined in a server environment + element: document.createElement('div'), + content: { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, World!' }] }] }, + extensions: [StarterKit], + }) + + editor + .chain() + // focus is a command which depends on the editor-view, so it will not work in a server environment + .focus() + .run() + + console.log(editor.getHTML()) + // getHTML relies on the editor-view, so it will not work in a server environment + ``` + +- 32958d6: Extensions, Nodes and Marks no longer respect the deprecated `defaultOptions` config value + +### Patch Changes + +- 20f68f6: Remove `editor.getCharacterCount()` which was already deprecated and incorrectly implemented +- d6c7558: For performance, if a transaction results in the exact same editor state (either filtered out or failed to apply), then do not attempt to re-apply the same editor state and do not emit any events associated to the transaction. + ## 3.0.0-next.5 ### Major Changes diff --git a/packages/core/package.json b/packages/core/package.json index 6a68356693..1107b685b0 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -51,7 +51,7 @@ "jsx-runtime" ], "devDependencies": { - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/pm": "^3.0.0-next.1" diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index a9efb1cbc4..fc435b0c38 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 8f5f611530..7e25fa635f 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 1106e0ce46..cd39c39b45 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index da351d3af3..a84a6313ad 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index b164721ef3..38ca851eb4 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,37 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index c2366dc825..ea4f4e8f92 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -37,8 +37,8 @@ }, "sideEffects": false, "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "dependencies": { "@floating-ui/dom": "^1.0.0" diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index cf2cd9457c..27df578108 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,163 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.5 ### Major Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 574d69a456..b3b4d341b3 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.5" + "@tiptap/extension-list": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-character-count/CHANGELOG.md b/packages/extension-character-count/CHANGELOG.md index dd58e74ea1..b3438348ee 100644 --- a/packages/extension-character-count/CHANGELOG.md +++ b/packages/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-character-count/package.json b/packages/extension-character-count/package.json index b4a70e98f3..47981eb761 100644 --- a/packages/extension-character-count/package.json +++ b/packages/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.5" + "@tiptap/extensions": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 66a0a0395a..0e35be21ec 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 1b6cf3c967..8657ddfa65 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,9 +31,9 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/extension-code-block": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5", + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/extension-code-block": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6", "lowlight": "^3.3.0" }, "peerDependencies": { diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 7d1a910e4f..ce01dc8e24 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 0a22cb1931..0ebe9d4a04 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index b59cb5c5d3..84cffa6dfe 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 50e331dc4f..5c15100ea1 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-collaboration-cursor/CHANGELOG.md b/packages/extension-collaboration-cursor/CHANGELOG.md index d0a305b6fb..0ef4ad5a26 100644 --- a/packages/extension-collaboration-cursor/CHANGELOG.md +++ b/packages/extension-collaboration-cursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- a33d20c: Replaced y-prosemirror with @tiptap/y-tiptap + ## 3.0.0-next.5 ### Major Changes diff --git a/packages/extension-collaboration-cursor/package.json b/packages/extension-collaboration-cursor/package.json index 2eb098bc8c..ddb8f442a5 100644 --- a/packages/extension-collaboration-cursor/package.json +++ b/packages/extension-collaboration-cursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-cursor", "description": "collaboration cursor extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5", + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6", "@tiptap/y-tiptap": "^1.0.0" }, "peerDependencies": { diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index a5b699aa27..7efdde1ffa 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- a33d20c: Replaced y-prosemirror with @tiptap/y-tiptap + ## 3.0.0-next.5 ### Major Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 87aee447a1..85d5a3eee4 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5", + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6", "@tiptap/y-tiptap": "^1.0.0" }, "peerDependencies": { diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 9e0915d3eb..dc84026233 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index a949ce2067..3e8afd42f2 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-text-style": "^3.0.0-next.5" + "@tiptap/extension-text-style": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-text-style": "^3.0.0-next.1" diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 20be2aa683..aa61ae2bbf 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 9988372652..ba43f91929 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-dropcursor/CHANGELOG.md b/packages/extension-dropcursor/CHANGELOG.md index 56de7fb3c5..a57513733d 100644 --- a/packages/extension-dropcursor/CHANGELOG.md +++ b/packages/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-dropcursor/package.json b/packages/extension-dropcursor/package.json index 68f6b7ef73..204e8d485f 100644 --- a/packages/extension-dropcursor/package.json +++ b/packages/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.5" + "@tiptap/extensions": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 7539effc02..c9658276cf 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,37 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 373a7391bd..0ef436c51f 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -32,8 +32,8 @@ ], "devDependencies": { "@floating-ui/dom": "^1.6.12", - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@floating-ui/dom": "^1.0.0", diff --git a/packages/extension-focus/CHANGELOG.md b/packages/extension-focus/CHANGELOG.md index 4528900464..03ecb1047c 100644 --- a/packages/extension-focus/CHANGELOG.md +++ b/packages/extension-focus/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- Updated dependencies [bfec9b2] + - @tiptap/extensions@3.0.0-next.6 + ## 3.0.0-next.5 ### Patch Changes diff --git a/packages/extension-focus/package.json b/packages/extension-focus/package.json index 5e058f6203..c3c823523b 100644 --- a/packages/extension-focus/package.json +++ b/packages/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-next.5" + "@tiptap/extensions": "3.0.0-next.6" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-next.5" + "@tiptap/extensions": "3.0.0-next.6" }, "repository": { "type": "git", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 245730696b..c78d970fcf 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 681e6d4365..a3e3941e64 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-text-style": "^3.0.0-next.5" + "@tiptap/extension-text-style": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-text-style": "^3.0.0-next.3" diff --git a/packages/extension-gapcursor/CHANGELOG.md b/packages/extension-gapcursor/CHANGELOG.md index d93d65296e..4fa0e530ea 100644 --- a/packages/extension-gapcursor/CHANGELOG.md +++ b/packages/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-gapcursor/package.json b/packages/extension-gapcursor/package.json index 1b1b72da8c..2c814f7e42 100644 --- a/packages/extension-gapcursor/package.json +++ b/packages/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.5" + "@tiptap/extensions": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index dd6b57d14f..0e697175a0 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index a3e8c6d53f..01f57e4cae 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 2e25208653..3ef16af41c 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 4cc4d84548..4203e9516b 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 1f678f6923..4700d4e92c 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 731cf1bb52..ab07a78a49 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-history/CHANGELOG.md b/packages/extension-history/CHANGELOG.md index e00c3f5582..69c2df7857 100644 --- a/packages/extension-history/CHANGELOG.md +++ b/packages/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-history/package.json b/packages/extension-history/package.json index 44d92be35d..2732d1dee2 100644 --- a/packages/extension-history/package.json +++ b/packages/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.5" + "@tiptap/extensions": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index ed14b5a0f1..67d6999e4d 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 96663deb56..187ed48745 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index ade3922a80..a928ec51e6 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index a922eda22d..c102575660 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index bc5af1d287..1a6cb0febb 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 1f68c662fc..2b916231bd 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 75d8608a71..737c0592b0 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index ddfb5e9ef6..b37d8bccc5 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -34,8 +34,8 @@ "linkifyjs": "^4.2.0" }, "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-list-item/CHANGELOG.md b/packages/extension-list-item/CHANGELOG.md index 12f8359ae0..51651644fd 100644 --- a/packages/extension-list-item/CHANGELOG.md +++ b/packages/extension-list-item/CHANGELOG.md @@ -1,5 +1,163 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.5 ### Major Changes diff --git a/packages/extension-list-item/package.json b/packages/extension-list-item/package.json index 386d45f4c4..ce3c3c4184 100644 --- a/packages/extension-list-item/package.json +++ b/packages/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.5" + "@tiptap/extension-list": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-list-keymap/CHANGELOG.md b/packages/extension-list-keymap/CHANGELOG.md index abcc97f2f3..71d9ad6795 100644 --- a/packages/extension-list-keymap/CHANGELOG.md +++ b/packages/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,163 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.5 ### Major Changes diff --git a/packages/extension-list-keymap/package.json b/packages/extension-list-keymap/package.json index c0c96bee04..d0926d1b35 100644 --- a/packages/extension-list-keymap/package.json +++ b/packages/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.5" + "@tiptap/extension-list": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 1a6b3c5867..78292d0614 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,3 +1,5 @@ # Change Log +## 3.0.0-next.6 + ## 3.0.0-next.5 diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 26c1b3e852..bcfbf84863 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -87,8 +87,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.4", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index dbc32c7665..d920da1cd3 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,37 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index bfd51f1b2a..5480e3e450 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,9 +31,9 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5", - "@tiptap/suggestion": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6", + "@tiptap/suggestion": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 43c39abe2b..2e8f5529cd 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,163 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.5 ### Major Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 0560e7f4b1..8f7c3d282a 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.5" + "@tiptap/extension-list": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 96e333b961..b8e5a41175 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 9b5be6dde5..8383610a36 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-placeholder/CHANGELOG.md b/packages/extension-placeholder/CHANGELOG.md index 71cddc386b..cfb151efea 100644 --- a/packages/extension-placeholder/CHANGELOG.md +++ b/packages/extension-placeholder/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- 96601f7: Remove the `considerAnyAsEmpty` option from placeholder, which has been unused since version 2.5 +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-placeholder/package.json b/packages/extension-placeholder/package.json index 68034741fe..65d97b4841 100644 --- a/packages/extension-placeholder/package.json +++ b/packages/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "^3.0.0-next.5" + "@tiptap/extensions": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extensions": "^3.0.0-next.3" diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index bc3e1c0b11..4d582861c9 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 39eaebdaed..4535ef0b15 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 600483856c..423d917911 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index a860c31618..5ab3c11a75 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.3", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 5be7d2589c..01ea819769 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 334c26b463..4cb6e73f2a 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.3", diff --git a/packages/extension-table-cell/CHANGELOG.md b/packages/extension-table-cell/CHANGELOG.md index a8427df5d4..6c69268933 100644 --- a/packages/extension-table-cell/CHANGELOG.md +++ b/packages/extension-table-cell/CHANGELOG.md @@ -1,5 +1,136 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Minor Changes + +- 131c7d0: This adds all of the table packages to the `@tiptap/extension-table` package. + + ## TableKit + + The `TableKit` export allows configuring the entire table with one extension, and is the recommended way of using the table extensions. + + ```ts + import { TableKit } from '@tiptap/extension-table' + + new Editor({ + extensions: [ + TableKit.configure({ + table: { + HTMLAttributes: { + class: 'table', + }, + }, + tableCell: { + HTMLAttributes: { + class: 'table-cell', + }, + }, + tableHeader: { + HTMLAttributes: { + class: 'table-header', + }, + }, + tableRow: { + HTMLAttributes: { + class: 'table-row', + }, + }, + }), + ], + }) + ``` + + ## Table repackaging + + Since we've moved the code out of the table extensions to the `@tiptap/extension-table` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-table-header @tiptap/extension-table-cell @tiptap/extension-table-row + ``` + + And replace them with the new `@tiptap/extension-table` package: + + ```bash + npm install @tiptap/extension-table + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### Table + + This extension adds a table to the editor. + + Migrate from default export to named export: + + ```diff + - import Table from '@tiptap/extension-table' + + import { Table } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { Table } from '@tiptap/extension-table' + ``` + + ### TableCell + + This extension adds a table cell to the editor. + + Migrate from `@tiptap/extension-table-cell` to `@tiptap/extension-table`: + + ```diff + - import TableCell from '@tiptap/extension-table-cell' + + import { TableCell } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableCell } from '@tiptap/extension-table' + ``` + + ### TableHeader + + This extension adds a table header to the editor. + + Migrate from `@tiptap/extension-table-header` to `@tiptap/extension-table`: + + ```diff + - import TableHeader from '@tiptap/extension-table-header' + + import { TableHeader } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableHeader } from '@tiptap/extension-table' + ``` + + ### TableRow + + This extension adds a table row to the editor. + + Migrate from `@tiptap/extension-table-row` to `@tiptap/extension-table`: + + ```diff + - import TableRow from '@tiptap/extension-table-row' + + import { TableRow } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableRow } from '@tiptap/extension-table' + ``` + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-table-cell/package.json b/packages/extension-table-cell/package.json index 5a8a50edb1..02aa5e64b9 100644 --- a/packages/extension-table-cell/package.json +++ b/packages/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-table": "^3.0.0-next.5" + "@tiptap/extension-table": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-table": "^3.0.0-next.3" diff --git a/packages/extension-table-header/CHANGELOG.md b/packages/extension-table-header/CHANGELOG.md index f0d0390fc3..372a915c43 100644 --- a/packages/extension-table-header/CHANGELOG.md +++ b/packages/extension-table-header/CHANGELOG.md @@ -1,5 +1,136 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Minor Changes + +- 131c7d0: This adds all of the table packages to the `@tiptap/extension-table` package. + + ## TableKit + + The `TableKit` export allows configuring the entire table with one extension, and is the recommended way of using the table extensions. + + ```ts + import { TableKit } from '@tiptap/extension-table' + + new Editor({ + extensions: [ + TableKit.configure({ + table: { + HTMLAttributes: { + class: 'table', + }, + }, + tableCell: { + HTMLAttributes: { + class: 'table-cell', + }, + }, + tableHeader: { + HTMLAttributes: { + class: 'table-header', + }, + }, + tableRow: { + HTMLAttributes: { + class: 'table-row', + }, + }, + }), + ], + }) + ``` + + ## Table repackaging + + Since we've moved the code out of the table extensions to the `@tiptap/extension-table` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-table-header @tiptap/extension-table-cell @tiptap/extension-table-row + ``` + + And replace them with the new `@tiptap/extension-table` package: + + ```bash + npm install @tiptap/extension-table + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### Table + + This extension adds a table to the editor. + + Migrate from default export to named export: + + ```diff + - import Table from '@tiptap/extension-table' + + import { Table } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { Table } from '@tiptap/extension-table' + ``` + + ### TableCell + + This extension adds a table cell to the editor. + + Migrate from `@tiptap/extension-table-cell` to `@tiptap/extension-table`: + + ```diff + - import TableCell from '@tiptap/extension-table-cell' + + import { TableCell } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableCell } from '@tiptap/extension-table' + ``` + + ### TableHeader + + This extension adds a table header to the editor. + + Migrate from `@tiptap/extension-table-header` to `@tiptap/extension-table`: + + ```diff + - import TableHeader from '@tiptap/extension-table-header' + + import { TableHeader } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableHeader } from '@tiptap/extension-table' + ``` + + ### TableRow + + This extension adds a table row to the editor. + + Migrate from `@tiptap/extension-table-row` to `@tiptap/extension-table`: + + ```diff + - import TableRow from '@tiptap/extension-table-row' + + import { TableRow } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableRow } from '@tiptap/extension-table' + ``` + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-table-header/package.json b/packages/extension-table-header/package.json index 0340241073..8df8ffdb05 100644 --- a/packages/extension-table-header/package.json +++ b/packages/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-table": "^3.0.0-next.5" + "@tiptap/extension-table": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-table": "^3.0.0-next.3" diff --git a/packages/extension-table-row/CHANGELOG.md b/packages/extension-table-row/CHANGELOG.md index 7f3c7fe585..ccca42679a 100644 --- a/packages/extension-table-row/CHANGELOG.md +++ b/packages/extension-table-row/CHANGELOG.md @@ -1,5 +1,136 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Minor Changes + +- 131c7d0: This adds all of the table packages to the `@tiptap/extension-table` package. + + ## TableKit + + The `TableKit` export allows configuring the entire table with one extension, and is the recommended way of using the table extensions. + + ```ts + import { TableKit } from '@tiptap/extension-table' + + new Editor({ + extensions: [ + TableKit.configure({ + table: { + HTMLAttributes: { + class: 'table', + }, + }, + tableCell: { + HTMLAttributes: { + class: 'table-cell', + }, + }, + tableHeader: { + HTMLAttributes: { + class: 'table-header', + }, + }, + tableRow: { + HTMLAttributes: { + class: 'table-row', + }, + }, + }), + ], + }) + ``` + + ## Table repackaging + + Since we've moved the code out of the table extensions to the `@tiptap/extension-table` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-table-header @tiptap/extension-table-cell @tiptap/extension-table-row + ``` + + And replace them with the new `@tiptap/extension-table` package: + + ```bash + npm install @tiptap/extension-table + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### Table + + This extension adds a table to the editor. + + Migrate from default export to named export: + + ```diff + - import Table from '@tiptap/extension-table' + + import { Table } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { Table } from '@tiptap/extension-table' + ``` + + ### TableCell + + This extension adds a table cell to the editor. + + Migrate from `@tiptap/extension-table-cell` to `@tiptap/extension-table`: + + ```diff + - import TableCell from '@tiptap/extension-table-cell' + + import { TableCell } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableCell } from '@tiptap/extension-table' + ``` + + ### TableHeader + + This extension adds a table header to the editor. + + Migrate from `@tiptap/extension-table-header` to `@tiptap/extension-table`: + + ```diff + - import TableHeader from '@tiptap/extension-table-header' + + import { TableHeader } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableHeader } from '@tiptap/extension-table' + ``` + + ### TableRow + + This extension adds a table row to the editor. + + Migrate from `@tiptap/extension-table-row` to `@tiptap/extension-table`: + + ```diff + - import TableRow from '@tiptap/extension-table-row' + + import { TableRow } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableRow } from '@tiptap/extension-table' + ``` + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-table-row/package.json b/packages/extension-table-row/package.json index e856ecac52..7e62e3571d 100644 --- a/packages/extension-table-row/package.json +++ b/packages/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-table": "^3.0.0-next.5" + "@tiptap/extension-table": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-table": "^3.0.0-next.3" diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index cd90ce43e7..1450a9a487 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,136 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Minor Changes + +- 131c7d0: This adds all of the table packages to the `@tiptap/extension-table` package. + + ## TableKit + + The `TableKit` export allows configuring the entire table with one extension, and is the recommended way of using the table extensions. + + ```ts + import { TableKit } from '@tiptap/extension-table' + + new Editor({ + extensions: [ + TableKit.configure({ + table: { + HTMLAttributes: { + class: 'table', + }, + }, + tableCell: { + HTMLAttributes: { + class: 'table-cell', + }, + }, + tableHeader: { + HTMLAttributes: { + class: 'table-header', + }, + }, + tableRow: { + HTMLAttributes: { + class: 'table-row', + }, + }, + }), + ], + }) + ``` + + ## Table repackaging + + Since we've moved the code out of the table extensions to the `@tiptap/extension-table` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-table-header @tiptap/extension-table-cell @tiptap/extension-table-row + ``` + + And replace them with the new `@tiptap/extension-table` package: + + ```bash + npm install @tiptap/extension-table + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### Table + + This extension adds a table to the editor. + + Migrate from default export to named export: + + ```diff + - import Table from '@tiptap/extension-table' + + import { Table } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { Table } from '@tiptap/extension-table' + ``` + + ### TableCell + + This extension adds a table cell to the editor. + + Migrate from `@tiptap/extension-table-cell` to `@tiptap/extension-table`: + + ```diff + - import TableCell from '@tiptap/extension-table-cell' + + import { TableCell } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableCell } from '@tiptap/extension-table' + ``` + + ### TableHeader + + This extension adds a table header to the editor. + + Migrate from `@tiptap/extension-table-header` to `@tiptap/extension-table`: + + ```diff + - import TableHeader from '@tiptap/extension-table-header' + + import { TableHeader } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableHeader } from '@tiptap/extension-table' + ``` + + ### TableRow + + This extension adds a table row to the editor. + + Migrate from `@tiptap/extension-table-row` to `@tiptap/extension-table`: + + ```diff + - import TableRow from '@tiptap/extension-table-row' + + import { TableRow } from '@tiptap/extension-table' + ``` + + Usage: + + ```ts + import { TableRow } from '@tiptap/extension-table' + ``` + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 32e725e707..a24ff9ed86 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -71,8 +71,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/extension-task-item/CHANGELOG.md b/packages/extension-task-item/CHANGELOG.md index 501675c5f8..7afe216de0 100644 --- a/packages/extension-task-item/CHANGELOG.md +++ b/packages/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-task-item/package.json b/packages/extension-task-item/package.json index 9da245db65..24c7f1b172 100644 --- a/packages/extension-task-item/package.json +++ b/packages/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.5" + "@tiptap/extension-list": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-task-list/CHANGELOG.md b/packages/extension-task-list/CHANGELOG.md index 7e232e39de..b746325507 100644 --- a/packages/extension-task-list/CHANGELOG.md +++ b/packages/extension-task-list/CHANGELOG.md @@ -1,5 +1,163 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + ## 3.0.0-next.5 ### Major Changes diff --git a/packages/extension-task-list/package.json b/packages/extension-task-list/package.json index f3c3ecfed8..95d9e3f5ee 100644 --- a/packages/extension-task-list/package.json +++ b/packages/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "^3.0.0-next.5" + "@tiptap/extension-list": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/extension-list": "^3.0.0-next.4" diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index e2c56dace5..25a748fec4 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 151d97d5eb..0a2b02f8ac 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index c45140bce2..33554a8eb3 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,122 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Minor Changes + +- f77cbac: This updates the default value of the option `mergeNestedSpanStyles` to `true`, this will attempt to merge the styles of nested spans into the child span during HTML parsing. This prioritizes the style of the child span. This is used when parsing content created in other editors. (Fix for ProseMirror's default behavior.) +- 0b4981c: Add `toggleTextStyle` command and add typings for the commands parameters based on the installed extensions that include `textStyle` +- 3b4e06c: This adds several extensions to the `text-style` package, which can be used to style text in the editor. + + ## TextStyleKit + + This extension adds a group of text style extensions to the editor, and is the recommended way of using the text style extensions. For easy configuration, you can pass an object with the following keys: + + `backgroundColor`, `color`, `fontFamily`, `fontSize`, `lineHeight`, `textStyle` + + Usage: + + ```ts + import { TextStyleKit } from '@tiptap/extension-text-style' + + new Editor({ + extensions: [ + TextStyleKit.configure({ + backgroundColor: { + types: ['textStyle'], + }, + color: { + types: ['textStyle'], + }, + fontFamily: { + types: ['textStyle'], + }, + fontSize: { + types: ['textStyle'], + }, + lineHeight: { + types: ['textStyle'], + }, + textStyle: { + types: ['textStyle'], + }, + }), + ], + }) + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BackgroundColor + + This extension controls the background-color of a range of text in the editor. + + Usage: + + ```ts + import { BackgroundColor } from '@tiptap/extension-text-style' + ``` + + ### Color + + This extension controls the color of a range of text in the editor. + + Migrate from `@tiptap/extension-color` to `@tiptap/extension-text-style`: + + ```diff + - import Color from '@tiptap/extension-color' + + import { Color } from '@tiptap/extension-text-style' + ``` + + Usage: + + ```ts + import { Color } from '@tiptap/extension-text-style' + ``` + + ### FontFamily + + This extension controls the font-family of a range of text in the editor. + + Migration from `@tiptap/extension-font-family` to `@tiptap/extension-text-style`: + + ```diff + - import FontFamily from '@tiptap/extension-font-family' + + import { FontFamily } from '@tiptap/extension-text-style' + ``` + + Usage: + + ```ts + import { FontFamily } from '@tiptap/extension-text-style' + ``` + + ### FontSize + + This extension controls the font-size of a range of text in the editor. + + ```ts + import { FontSize } from '@tiptap/extension-text-style' + ``` + + ### LineHeight + + This extension controls the line-height of a range of text in the editor. + + ```ts + import { LineHeight } from '@tiptap/extension-text-style' + ``` + +### Patch Changes + +- 0bad53e: The text-style extension, now will match elements with a style tag, but not consume them to allow other elements to match [per this comment](https://github.com/ueberdosis/tiptap/discussions/5912#discussioncomment-11716337). + ## 3.0.0-next.5 ### Minor Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 75ab1cdd82..75bb80b451 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -87,7 +87,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 482253e242..22a15be65c 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 4b0be6dc07..dc9fc85230 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 0c053c7698..df5ce5756e 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 0bcf6931a9..d5ec8570d6 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 9d9e0b2a63..faffe4fc03 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 02435baea4..cfda078c38 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index d9265db484..5e158ffc8f 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index f39a252aa5..0ca977120b 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,7 +31,7 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1" diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index fcc18b5e01..289c7e6e4c 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,129 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- bfec9b2: Adds the new `@tiptap/extensions` package which packages multiple utility extensions like `History`, `Placeholder`, `CharacterCount`, `DropCursor`, `GapCursor`, `TrailingNode`, `Focus`, and `Selection`. + + ## CharacterCount + + This extension adds a cursor that indicates where a new node will be inserted when dragging and dropping. + + Migrate from `@tiptap/extension-character-count` to `@tiptap/extensions`: + + ```diff + - import CharacterCount from '@tiptap/extension-character-count' + + import { CharacterCount } from '@tiptap/extensions' + ``` + + Usage: + + ```ts + import { CharacterCount, CharacterCountOptions } from '@tiptap/extensions' + ``` + + ## DropCursor + + This extension adds a cursor that indicates where a new node will be inserted when dragging and dropping. + + Migrate from `@tiptap/extension-dropcursor` to `@tiptap/extensions`: + + ```diff + - import DropCursor from '@tiptap/extension-dropcursor' + + import { DropCursor } from '@tiptap/extensions' + ``` + + Usage: + + ```ts + import { DropCursor, DropCursorOptions } from '@tiptap/extensions' + ``` + + ## GapCursor + + This extension adds a cursor that appears when you click on a place where no content is present, for example in-between nodes. + + Migrate from `@tiptap/extension-gapcursor` to `@tiptap/extensions`: + + ```diff + - import GapCursor from '@tiptap/extension-gapcursor' + + import { GapCursor } from '@tiptap/extensions' + ``` + + Usage: + + ```ts + import { GapCursor } from '@tiptap/extensions' + ``` + + ## History + + This extension adds undo and redo functionality to the editor. + + Migrate from `@tiptap/extension-history` to `@tiptap/extensions`: + + ```diff + - import History from '@tiptap/extension-history' + + import { History } from '@tiptap/extensions' + ``` + + Usage: + + ```ts + import { History, HistoryOptions } from '@tiptap/extensions' + ``` + + ## Placeholder + + This extension adds a placeholder text to the editor, which is displayed when the editor is empty. + + Migrate from `@tiptap/extension-placeholder` to `@tiptap/extensions`: + + ```diff + - import Placeholder from '@tiptap/extension-placeholder' + + import { Placeholder } from '@tiptap/extensions' + ``` + + Usage: + + ```ts + import { Placeholder, PlaceholderOptions } from '@tiptap/extensions' + ``` + + ## TrailingNode + + This extension adds a node at the end of the editor, which can be used to add a trailing node like a paragraph. + + ```ts + import { TrailingNode, TrailingNodeOptions } from '@tiptap/extensions' + ``` + + ## Focus + + This extension adds a focus state to the editor, which can be used to style the editor when it's focused. + + Migrate from `@tiptap/extension-focus` to `@tiptap/extensions`: + + ```diff + - import Focus from '@tiptap/extension-focus' + + import { Focus } from '@tiptap/extensions' + ``` + + Usage: + + ```ts + import { Focus, FocusOptions } from '@tiptap/extensions' + ``` + + ## Selection + + This extension adds a selection state to the editor, which can be used to style the editor when there's a selection. + + ```ts + import { Selection, SelectionOptions } from '@tiptap/extensions' + ``` + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/extensions/package.json b/packages/extensions/package.json index fc4b9ac3b2..d43862f4a6 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -95,8 +95,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.3", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 28a9c0ed59..8a63cbe3ee 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- bf040b9: Replace `zeed-dom` with `happy-dom-without-node` for broader compatibility of the HTML parser. The only difference you should see is that `happy-dom-without-node` will output `xmlns="http://www.w3.org/1999/xhtml"` on root elements, which makes it compliant with the HTML5 specification. + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/html/package.json b/packages/html/package.json index d7b15ee487..824be4b58a 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 3320d73d78..2bf45ab398 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/pm/package.json b/packages/pm/package.json index 88fb0cf836..a170d1b3c9 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 7aece3995d..9c90e7377a 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,188 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + +### Minor Changes + +- 0e3207f: Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), which allow you to render custom views for marks within the editor. This is useful for rendering custom UI for marks, like a color picker for a text color mark or a link editor for a link mark. + + Here is a plain JS markview example: + + ```ts + Mark.create({ + // Other options... + addMarkView() { + return ({ mark, HTMLAttributes }) => { + const dom = document.createElement('b') + const contentDOM = document.createElement('span') + + dom.appendChild(contentDOM) + + return { + dom, + contentDOM, + } + } + }, + }) + ``` + + ## React binding + + To use a React component for a markview, you can use the `@tiptap/react` package: + + ```ts + import { Mark } from '@tiptap/core' + import { ReactMarkViewRenderer } from '@tiptap/react' + + import Component from './Component.jsx' + + export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a React component: + + ```tsx + import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' + import React from 'react' + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) + } + ``` + + ## Vue 3 binding + + To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: + + ```ts + import { Mark } from '@tiptap/core' + import { VueMarkViewRenderer } from '@tiptap/vue-3' + + import Component from './Component.vue' + + export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a Vue 3 component: + + ```vue + + + + ``` + +- 08593a2: Throw an error in development mode if `immediatelyRender` is not set in SSR mode + ## 3.0.0-next.5 ### Minor Changes diff --git a/packages/react/package.json b/packages/react/package.json index 0dd4ab089b..46a6c623ce 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -44,16 +44,16 @@ "use-sync-external-store": "^1.4.0" }, "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5", + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6", "@types/react": "^18.3.18", "@types/react-dom": "^18.3.5", "react": "^18.3.1", "react-dom": "^18.3.1" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "^3.0.0-next.5", - "@tiptap/extension-floating-menu": "^3.0.0-next.5" + "@tiptap/extension-bubble-menu": "^3.0.0-next.6", + "@tiptap/extension-floating-menu": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.4", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 3f51c54704..30b2a530a9 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,65 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 64a74f6: We have now added the `Link`, `ListKeymap`, and `Underline` extensions to the starter kit for a smoother onboarding experience + + If you have theses extensions in your project, you can remove them from your project and use the ones from the starter kit instead. + + ```diff + - import Link from '@tiptap/extension-link' + - import ListKeymap from '@tiptap/extension-list-keymap' + - import Underline from '@tiptap/extension-underline' + + import { StarterKit } from '@tiptap/starter-kit' + ``` + +### Patch Changes + +- Updated dependencies [a92f4a6] +- Updated dependencies [bfec9b2] +- Updated dependencies [20f68f6] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [2c911d2] +- Updated dependencies [32958d6] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [32958d6] +- Updated dependencies [32958d6] + - @tiptap/extension-horizontal-rule@3.0.0-next.6 + - @tiptap/extension-ordered-list@3.0.0-next.6 + - @tiptap/extension-bullet-list@3.0.0-next.6 + - @tiptap/extension-list-keymap@3.0.0-next.6 + - @tiptap/extension-blockquote@3.0.0-next.6 + - @tiptap/extension-code-block@3.0.0-next.6 + - @tiptap/extension-dropcursor@3.0.0-next.6 + - @tiptap/extension-hard-break@3.0.0-next.6 + - @tiptap/extension-gapcursor@3.0.0-next.6 + - @tiptap/extension-list-item@3.0.0-next.6 + - @tiptap/extension-paragraph@3.0.0-next.6 + - @tiptap/extension-underline@3.0.0-next.6 + - @tiptap/extension-document@3.0.0-next.6 + - @tiptap/extension-heading@3.0.0-next.6 + - @tiptap/extension-history@3.0.0-next.6 + - @tiptap/extension-italic@3.0.0-next.6 + - @tiptap/extension-strike@3.0.0-next.6 + - @tiptap/extension-bold@3.0.0-next.6 + - @tiptap/extension-code@3.0.0-next.6 + - @tiptap/extension-link@3.0.0-next.6 + - @tiptap/extension-text@3.0.0-next.6 + - @tiptap/core@3.0.0-next.6 + - @tiptap/pm@3.0.0-next.6 + - @tiptap/extensions@3.0.0-next.6 + ## 3.0.0-next.5 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 1e9bd4337d..9c9281af98 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,30 +31,30 @@ "dist" ], "dependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/extension-blockquote": "^3.0.0-next.5", - "@tiptap/extension-bold": "^3.0.0-next.5", - "@tiptap/extension-bullet-list": "^3.0.0-next.5", - "@tiptap/extension-code": "^3.0.0-next.5", - "@tiptap/extension-code-block": "^3.0.0-next.5", - "@tiptap/extension-document": "^3.0.0-next.5", - "@tiptap/extension-dropcursor": "^3.0.0-next.5", - "@tiptap/extension-gapcursor": "^3.0.0-next.5", - "@tiptap/extension-hard-break": "^3.0.0-next.5", - "@tiptap/extension-heading": "^3.0.0-next.5", - "@tiptap/extension-history": "^3.0.0-next.5", - "@tiptap/extension-horizontal-rule": "^3.0.0-next.5", - "@tiptap/extension-italic": "^3.0.0-next.5", - "@tiptap/extension-link": "^3.0.0-next.5", - "@tiptap/extension-list-item": "^3.0.0-next.5", - "@tiptap/extension-list-keymap": "^3.0.0-next.5", - "@tiptap/extension-ordered-list": "^3.0.0-next.5", - "@tiptap/extension-paragraph": "^3.0.0-next.5", - "@tiptap/extension-strike": "^3.0.0-next.5", - "@tiptap/extension-text": "^3.0.0-next.5", - "@tiptap/extension-underline": "^3.0.0-next.5", - "@tiptap/extensions": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/extension-blockquote": "^3.0.0-next.6", + "@tiptap/extension-bold": "^3.0.0-next.6", + "@tiptap/extension-bullet-list": "^3.0.0-next.6", + "@tiptap/extension-code": "^3.0.0-next.6", + "@tiptap/extension-code-block": "^3.0.0-next.6", + "@tiptap/extension-document": "^3.0.0-next.6", + "@tiptap/extension-dropcursor": "^3.0.0-next.6", + "@tiptap/extension-gapcursor": "^3.0.0-next.6", + "@tiptap/extension-hard-break": "^3.0.0-next.6", + "@tiptap/extension-heading": "^3.0.0-next.6", + "@tiptap/extension-history": "^3.0.0-next.6", + "@tiptap/extension-horizontal-rule": "^3.0.0-next.6", + "@tiptap/extension-italic": "^3.0.0-next.6", + "@tiptap/extension-link": "^3.0.0-next.6", + "@tiptap/extension-list-item": "^3.0.0-next.6", + "@tiptap/extension-list-keymap": "^3.0.0-next.6", + "@tiptap/extension-ordered-list": "^3.0.0-next.6", + "@tiptap/extension-paragraph": "^3.0.0-next.6", + "@tiptap/extension-strike": "^3.0.0-next.6", + "@tiptap/extension-text": "^3.0.0-next.6", + "@tiptap/extension-underline": "^3.0.0-next.6", + "@tiptap/extensions": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "repository": { "type": "git", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 9ff8520e8a..613b7de420 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,279 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- 6a53bb2: # @tiptap/static-renderer + + The `@tiptap/static-renderer` package provides a way to render a Tiptap/ProseMirror document to any target format, like an HTML string, a React component, or even markdown. It does so, by taking the original JSON of a document (or document partial) and attempts to map this to the output format, by matching against a list of nodes & marks. + + ## Why Static Render? + + The main use case for static rendering is to render a Tiptap/ProseMirror document on the server-side, for example in a Next.js or Nuxt.js application. This way, you can render the content of your editor to HTML before sending it to the client, which can improve the performance of your application. + + Another use case is to render the content of your editor to another format like markdown, which can be useful if you want to send it to a markdown-based API. + + But what makes it static? The static renderer doesn't require a browser or a DOM to render the content. It's a pure JavaScript function that takes a document (as JSON or Prosemirror Node instance) and returns the target format back. + + ## Example + + Render a Tiptap document to an HTML string: + + ```js + import StarterKit from '@tiptap/starter-kit' + import { renderToHTMLString } from '@tiptap/static-renderer' + + renderToHTMLString({ + extensions: [StarterKit], // using your extensions + // we can map nodes and marks to HTML elements + options: { + nodeMapping: { + // custom node mappings + }, + markMapping: { + // custom mark mappings + }, + unhandledNode: ({ node }) => { + // handle unhandled nodes + return `[unknown node ${node.type.name}]` + }, + unhandledMark: ({ mark }) => { + // handle unhandled marks + return `[unknown node ${mark.type.name}]` + }, + }, + // the source content to render + content: { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Hello World!', + }, + ], + }, + ], + }, + }) + // returns: '

Hello World!

' + ``` + + Render to a React component: + + ```js + import StarterKit from '@tiptap/starter-kit' + import { renderToReactElement } from '@tiptap/static-renderer' + + renderToReactElement({ + extensions: [StarterKit], // using your extensions + // we can map nodes and marks to HTML elements + options: { + nodeMapping: { + // custom node mappings + }, + markMapping: { + // custom mark mappings + }, + unhandledNode: ({ node }) => { + // handle unhandled nodes + return `[unknown node ${node.type.name}]` + }, + unhandledMark: ({ mark }) => { + // handle unhandled marks + return `[unknown node ${mark.type.name}]` + }, + }, + // the source content to render + content: { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Hello World!', + }, + ], + }, + ], + }, + }) + // returns a react node that, when evaluated, would be equivalent to: '

Hello World!

' + ``` + + There are a number of options available to customize the output, like custom node and mark mappings, or handling unhandled nodes and marks. + + ## API + + ### `renderToHTMLString` + + ```ts + function renderToHTMLString(options: { + extensions: Extension[] + content: ProsemirrorNode | JSONContent + options?: TiptapHTMLStaticRendererOptions + }): string + ``` + + #### `renderToHTMLString` Options + + - `extensions`: An array of Tiptap extensions that are used to render the content. + - `content`: The content to render. Can be a Prosemirror Node instance or a JSON representation of a Prosemirror document. + - `options`: An object with additional options. + - `options.nodeMapping`: An object that maps Prosemirror nodes to HTML strings. + - `options.markMapping`: An object that maps Prosemirror marks to HTML strings. + - `options.unhandledNode`: A function that is called when an unhandled node is encountered. + - `options.unhandledMark`: A function that is called when an unhandled mark is encountered. + + ### `renderToReactElement` + + ```ts + function renderToReactElement(options: { + extensions: Extension[] + content: ProsemirrorNode | JSONContent + options?: TiptapReactStaticRendererOptions + }): ReactElement + ``` + + #### `renderToReactElement` Options + + - `extensions`: An array of Tiptap extensions that are used to render the content. + - `content`: The content to render. Can be a Prosemirror Node instance or a JSON representation of a Prosemirror document. + - `options`: An object with additional options. + - `options.nodeMapping`: An object that maps Prosemirror nodes to React components. + - `options.markMapping`: An object that maps Prosemirror marks to React components. + - `options.unhandledNode`: A function that is called when an unhandled node is encountered. + - `options.unhandledMark`: A function that is called when an unhandled mark is encountered. + + ## How does it work? + + Each Tiptap node/mark extension can define a `renderHTML` method which is used to generate default mappings of Prosemirror nodes/marks to the target format. These can be overridden by providing custom mappings in the options. One thing to note is that the static renderer doesn't support node views automatically, so you need to provide a mapping for each node type that you want rendered as a node view. Here is an example of how you can render a node view as a React component: + + ```js + import { Node } from '@tiptap/core' + import { ReactNodeViewRenderer } from '@tiptap/react' + import StarterKit from '@tiptap/starter-kit' + import { renderToReactElement } from '@tiptap/static-renderer' + + // This component does not have a NodeViewContent, so it does not render it's children's rich text content + function MyCustomComponentWithoutContent() { + const [count, setCount] = React.useState(200) + + return ( +
setCount(a => a + 1)}> + {count} This is a react component! +
+ ) + } + + const CustomNodeExtensionWithoutContent = Node.create({ + name: 'customNodeExtensionWithoutContent', + atom: true, + renderHTML() { + return ['div', { class: 'my-custom-component-without-content' }] as const + }, + addNodeView() { + return ReactNodeViewRenderer(MyCustomComponentWithoutContent) + }, + }) + + renderToReactElement({ + extensions: [StarterKit, CustomNodeExtensionWithoutContent], + options: { + nodeMapping: { + // render the custom node with the intended node view React component + customNodeExtensionWithoutContent: MyCustomComponentWithoutContent, + }, + }, + content: { + type: 'doc', + content: [ + { + type: 'customNodeExtensionWithoutContent', + }, + ], + }, + }) + // returns:
200 This is a react component!
+ ``` + + But what if you want to render the rich text content of the node view? You can do that by providing a `NodeViewContent` component as a child of the node view component: + + ```js + import { Node } from '@tiptap/core' + import { + NodeViewContent, + ReactNodeViewContentProvider, + ReactNodeViewRenderer + } from '@tiptap/react' + import StarterKit from '@tiptap/starter-kit' + import { renderToReactElement } from '@tiptap/static-renderer' + + + // This component does have a NodeViewContent, so it will render it's children's rich text content + function MyCustomComponentWithContent() { + return ( +
+ Custom component with content in React! + +
+ ) + } + + + const CustomNodeExtensionWithContent = Node.create({ + name: 'customNodeExtensionWithContent', + content: 'text*', + group: 'block', + renderHTML() { + return ['div', { class: 'my-custom-component-with-content' }, 0] as const + }, + addNodeView() { + return ReactNodeViewRenderer(MyCustomComponentWithContent) + }, + }) + + + renderToReactElement({ + extensions: [StarterKit, CustomNodeExtensionWithContent], + options: { + nodeMapping: { + customNodeExtensionWithContent: ({ children }) => { + // To pass the content down into the NodeViewContent component, we need to wrap the custom component with the ReactNodeViewContentProvider + return ( + + + + ) + }, + }, + }, + content: { + type: 'doc', + content: [ + { + type: 'customNodeExtensionWithContent', + // rich text content + content: [ + { + type: 'text', + text: 'Hello, world!', + }, + ], + }, + ], + }, + }) + + // returns:
Custom component with content in React!
Hello, world!
+ // Note: The NodeViewContent component is rendered as a div with the attribute data-node-view-content, and the rich text content is rendered inside of it + ``` + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index bdb3c52f15..eb1d102ed8 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -72,8 +72,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5", + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6", "@types/react": "^18.2.14", "@types/react-dom": "^18.2.6", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index cf6a1f58c4..a317f996fa 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,37 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index f82e1fe6b5..33b48c728f 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,8 +31,8 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5" + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.1", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index c286a3a604..6276f452eb 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,37 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + ## 3.0.0-next.5 ## 3.0.0-next.4 diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 97553d0f90..cba89a6b3e 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -42,13 +42,13 @@ "vue-ts-types": "1.6.2" }, "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5", + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6", "vue": "^2.7.16" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "^3.0.0-next.5", - "@tiptap/extension-floating-menu": "^3.0.0-next.5" + "@tiptap/extension-bubble-menu": "^3.0.0-next.6", + "@tiptap/extension-floating-menu": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.4", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 6875a95eb6..d9cac1f21c 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,186 @@ # Change Log +## 3.0.0-next.6 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + +### Minor Changes + +- 0e3207f: Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), which allow you to render custom views for marks within the editor. This is useful for rendering custom UI for marks, like a color picker for a text color mark or a link editor for a link mark. + + Here is a plain JS markview example: + + ```ts + Mark.create({ + // Other options... + addMarkView() { + return ({ mark, HTMLAttributes }) => { + const dom = document.createElement('b') + const contentDOM = document.createElement('span') + + dom.appendChild(contentDOM) + + return { + dom, + contentDOM, + } + } + }, + }) + ``` + + ## React binding + + To use a React component for a markview, you can use the `@tiptap/react` package: + + ```ts + import { Mark } from '@tiptap/core' + import { ReactMarkViewRenderer } from '@tiptap/react' + + import Component from './Component.jsx' + + export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a React component: + + ```tsx + import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' + import React from 'react' + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) + } + ``` + + ## Vue 3 binding + + To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: + + ```ts + import { Mark } from '@tiptap/core' + import { VueMarkViewRenderer } from '@tiptap/vue-3' + + import Component from './Component.vue' + + export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a Vue 3 component: + + ```vue + + + + ``` + ## 3.0.0-next.5 ### Minor Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 15f8d7de90..698e29aa3f 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-next.5", + "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -39,13 +39,13 @@ "dist" ], "devDependencies": { - "@tiptap/core": "^3.0.0-next.5", - "@tiptap/pm": "^3.0.0-next.5", + "@tiptap/core": "^3.0.0-next.6", + "@tiptap/pm": "^3.0.0-next.6", "vue": "^3.5.13" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "^3.0.0-next.5", - "@tiptap/extension-floating-menu": "^3.0.0-next.5" + "@tiptap/extension-bubble-menu": "^3.0.0-next.6", + "@tiptap/extension-floating-menu": "^3.0.0-next.6" }, "peerDependencies": { "@tiptap/core": "^3.0.0-next.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a471bb9fc9..5990be4afd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -322,19 +322,19 @@ importers: packages/core: devDependencies: '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-blockquote: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-bold: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-bubble-menu: @@ -344,37 +344,37 @@ importers: version: 1.6.13 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-bullet-list: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-list packages/extension-character-count: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extensions packages/extension-code: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-code-block: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-code-block-lowlight: @@ -384,13 +384,13 @@ importers: version: 11.11.1 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/extension-code-block': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-code-block '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm lowlight: specifier: ^3.3.0 @@ -403,10 +403,10 @@ importers: version: 13.6.23 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm '@tiptap/y-tiptap': specifier: ^1.0.0 @@ -415,10 +415,10 @@ importers: packages/extension-collaboration-cursor: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm '@tiptap/y-tiptap': specifier: ^1.0.0 @@ -427,19 +427,19 @@ importers: packages/extension-color: devDependencies: '@tiptap/extension-text-style': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-text-style packages/extension-document: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-dropcursor: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extensions packages/extension-floating-menu: @@ -448,73 +448,73 @@ importers: specifier: ^1.6.12 version: 1.6.13 '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-next.5 + specifier: 3.0.0-next.6 version: link:../extensions packages/extension-font-family: devDependencies: '@tiptap/extension-text-style': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-text-style packages/extension-gapcursor: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extensions packages/extension-hard-break: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-heading: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-highlight: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-history: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extensions packages/extension-horizontal-rule: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-image: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-italic: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-link: @@ -524,169 +524,169 @@ importers: version: 4.2.0 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-list: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-list-item: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-list packages/extension-list-keymap: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-list packages/extension-mention: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm '@tiptap/suggestion': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../suggestion packages/extension-ordered-list: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-list packages/extension-paragraph: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-placeholder: devDependencies: '@tiptap/extensions': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extensions packages/extension-strike: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-subscript: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-superscript: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-table: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/extension-table-cell: devDependencies: '@tiptap/extension-table': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-table packages/extension-table-header: devDependencies: '@tiptap/extension-table': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-table packages/extension-table-row: devDependencies: '@tiptap/extension-table': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-table packages/extension-task-item: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-list packages/extension-task-list: devDependencies: '@tiptap/extension-list': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-list packages/extension-text: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-text-align: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-text-style: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-typography: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-underline: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extension-youtube: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core packages/extensions: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/html: @@ -696,10 +696,10 @@ importers: version: 14.12.3 devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/pm: @@ -772,17 +772,17 @@ importers: version: 1.4.0(react@18.3.1) optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm '@types/react': specifier: ^18.3.18 @@ -800,76 +800,76 @@ importers: packages/starter-kit: dependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/extension-blockquote': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-blockquote '@tiptap/extension-bold': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-bold '@tiptap/extension-bullet-list': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-bullet-list '@tiptap/extension-code': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-code '@tiptap/extension-code-block': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-code-block '@tiptap/extension-document': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-document '@tiptap/extension-dropcursor': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-dropcursor '@tiptap/extension-gapcursor': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-gapcursor '@tiptap/extension-hard-break': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-hard-break '@tiptap/extension-heading': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-heading '@tiptap/extension-history': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-history '@tiptap/extension-horizontal-rule': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-horizontal-rule '@tiptap/extension-italic': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-italic '@tiptap/extension-link': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-link '@tiptap/extension-list-item': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-list-item '@tiptap/extension-list-keymap': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-list-keymap '@tiptap/extension-ordered-list': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-ordered-list '@tiptap/extension-paragraph': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-paragraph '@tiptap/extension-strike': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-strike '@tiptap/extension-text': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-text '@tiptap/extension-underline': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-underline '@tiptap/extensions': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extensions '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/static-renderer: @@ -888,19 +888,19 @@ importers: version: 18.3.1(react@18.3.1) devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/suggestion: devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm packages/vue-2: @@ -910,17 +910,17 @@ importers: version: 1.6.2(vue@2.7.16) optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm vue: specifier: ^2.7.16 @@ -933,17 +933,17 @@ importers: version: 1.6.13 optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../core '@tiptap/pm': - specifier: ^3.0.0-next.5 + specifier: ^3.0.0-next.6 version: link:../pm vue: specifier: ^3.5.13 From ff8a24a5e075c0172b01412c77afc473be7b9b58 Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Thu, 30 Jan 2025 18:32:22 +0100 Subject: [PATCH 110/629] make import codemod private for now --- codemods/tiptap-2-migrate-imports/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/codemods/tiptap-2-migrate-imports/package.json b/codemods/tiptap-2-migrate-imports/package.json index abc29b35a3..07e0dd6a9f 100644 --- a/codemods/tiptap-2-migrate-imports/package.json +++ b/codemods/tiptap-2-migrate-imports/package.json @@ -1,6 +1,7 @@ { "name": "tiptap-2-migrate-imports", "version": "1.0.0", + "private": true, "devDependencies": { "@types/node": "20.9.0", "typescript": "^5.2.2", From 89bd9c7d299a21a8e62d88eda91e67f184be7dc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 3 Mar 2025 15:15:30 +0100 Subject: [PATCH 111/629] Fix/enforce-type-imports-so-that-bundler-ignores-types (#6132) * fix: enforce type imports so that the bundler ignores types * chore: add changeset * fix: export types with export type keyword --- .changeset/cuddly-impalas-heal.md | 63 +++++++++++++++++++ .eslintrc.js | 1 + .../Accessibility/React/InsertMenu.tsx | 3 +- .../Examples/Accessibility/React/MenuBar.tsx | 2 +- .../Examples/Accessibility/React/TextMenu.tsx | 3 +- .../Accessibility/React/useMenubarNav.ts | 5 +- demos/src/Examples/Default/React/index.tsx | 3 +- demos/src/Examples/Savvy/React/findColors.ts | 2 +- demos/src/Examples/Savvy/Vue/findColors.ts | 2 +- .../Examples/StaticRendering/React/index.tsx | 3 +- .../Vue/extension/AnnotationPlugin.ts | 4 +- .../Vue/extension/AnnotationState.ts | 6 +- .../Vue/extension/collaboration-annotation.ts | 2 +- .../Linter/Vue/extension/Linter.ts | 5 +- .../Linter/Vue/extension/LinterPlugin.ts | 2 +- .../Vue/extension/plugins/HeadingLevel.ts | 5 +- .../Vue/extension/plugins/Punctuation.ts | 5 +- .../ReactComponent/React/Component.tsx | 3 +- .../ReactComponent/React/Component.tsx | 3 +- .../ReactComponentContext/React/Component.tsx | 3 +- .../src/Tutorials/1-1-textarea/React/Note.tsx | 2 +- .../Tutorials/1-1-textarea/React/index.tsx | 2 +- demos/src/Tutorials/1-1-textarea/Vue/Note.vue | 2 +- .../src/Tutorials/1-1-textarea/Vue/index.vue | 2 +- demos/src/Tutorials/1-2-tiptap/React/Note.tsx | 2 +- .../src/Tutorials/1-2-tiptap/React/index.tsx | 2 +- demos/src/Tutorials/1-2-tiptap/Vue/index.vue | 2 +- .../1-2-tiptap_lexical/Lexical-React/Note.tsx | 7 ++- .../Lexical-React/index.tsx | 2 +- demos/src/Tutorials/1-3-yjs/React/Note.tsx | 2 +- demos/src/Tutorials/1-3-yjs/React/index.tsx | 2 +- demos/src/Tutorials/1-3-yjs/Vue/index.vue | 2 +- .../1-3-yjs_lexical/Lexical-React/Note.tsx | 5 +- .../1-3-yjs_lexical/Lexical-React/index.tsx | 2 +- demos/src/Tutorials/1-4-collab/React/Note.tsx | 2 +- .../src/Tutorials/1-4-collab/React/index.tsx | 2 +- demos/src/Tutorials/1-4-collab/Vue/index.vue | 2 +- packages/core/src/CommandManager.ts | 6 +- packages/core/src/Editor.ts | 7 ++- packages/core/src/Extendable.ts | 4 +- packages/core/src/ExtensionManager.ts | 14 +++-- packages/core/src/InputRule.ts | 10 +-- packages/core/src/MarkView.ts | 6 +- packages/core/src/NodePos.ts | 6 +- packages/core/src/NodeView.ts | 6 +- packages/core/src/PasteRule.ts | 10 +-- packages/core/src/Tracker.ts | 2 +- packages/core/src/commands/blur.ts | 2 +- packages/core/src/commands/clearContent.ts | 2 +- packages/core/src/commands/clearNodes.ts | 2 +- packages/core/src/commands/command.ts | 2 +- .../core/src/commands/createParagraphNear.ts | 2 +- packages/core/src/commands/cut.ts | 2 +- .../core/src/commands/deleteCurrentNode.ts | 2 +- packages/core/src/commands/deleteNode.ts | 4 +- packages/core/src/commands/deleteRange.ts | 2 +- packages/core/src/commands/deleteSelection.ts | 2 +- packages/core/src/commands/enter.ts | 2 +- packages/core/src/commands/exitCode.ts | 2 +- packages/core/src/commands/extendMarkRange.ts | 4 +- packages/core/src/commands/first.ts | 2 +- packages/core/src/commands/focus.ts | 2 +- packages/core/src/commands/forEach.ts | 2 +- packages/core/src/commands/insertContent.ts | 4 +- packages/core/src/commands/insertContentAt.ts | 5 +- packages/core/src/commands/join.ts | 2 +- .../core/src/commands/joinItemBackward.ts | 2 +- packages/core/src/commands/joinItemForward.ts | 2 +- .../src/commands/joinTextblockBackward.ts | 2 +- .../core/src/commands/joinTextblockForward.ts | 2 +- .../core/src/commands/keyboardShortcut.ts | 2 +- packages/core/src/commands/lift.ts | 4 +- packages/core/src/commands/liftEmptyBlock.ts | 2 +- packages/core/src/commands/liftListItem.ts | 4 +- packages/core/src/commands/newlineInCode.ts | 2 +- packages/core/src/commands/resetAttributes.ts | 4 +- packages/core/src/commands/scrollIntoView.ts | 2 +- packages/core/src/commands/selectAll.ts | 2 +- .../core/src/commands/selectNodeBackward.ts | 2 +- .../core/src/commands/selectNodeForward.ts | 2 +- .../core/src/commands/selectParentNode.ts | 2 +- .../core/src/commands/selectTextblockEnd.ts | 2 +- .../core/src/commands/selectTextblockStart.ts | 2 +- packages/core/src/commands/setContent.ts | 4 +- packages/core/src/commands/setMark.ts | 6 +- packages/core/src/commands/setMeta.ts | 2 +- packages/core/src/commands/setNode.ts | 4 +- .../core/src/commands/setNodeSelection.ts | 2 +- .../core/src/commands/setTextSelection.ts | 2 +- packages/core/src/commands/sinkListItem.ts | 4 +- packages/core/src/commands/splitBlock.ts | 5 +- packages/core/src/commands/splitListItem.ts | 5 +- packages/core/src/commands/toggleList.ts | 6 +- packages/core/src/commands/toggleMark.ts | 4 +- packages/core/src/commands/toggleNode.ts | 4 +- packages/core/src/commands/toggleWrap.ts | 4 +- packages/core/src/commands/undoInputRule.ts | 2 +- packages/core/src/commands/unsetAllMarks.ts | 2 +- packages/core/src/commands/unsetMark.ts | 4 +- .../core/src/commands/updateAttributes.ts | 6 +- packages/core/src/commands/wrapIn.ts | 4 +- packages/core/src/commands/wrapInList.ts | 4 +- .../src/helpers/combineTransactionSteps.ts | 4 +- .../core/src/helpers/createChainableState.ts | 2 +- packages/core/src/helpers/createDocument.ts | 4 +- .../core/src/helpers/createNodeFromContent.ts | 5 +- packages/core/src/helpers/defaultBlockAt.ts | 2 +- packages/core/src/helpers/findChildren.ts | 4 +- .../core/src/helpers/findChildrenInRange.ts | 4 +- packages/core/src/helpers/findParentNode.ts | 4 +- .../src/helpers/findParentNodeClosestToPos.ts | 4 +- .../core/src/helpers/flattenExtensions.ts | 2 +- packages/core/src/helpers/generateHTML.ts | 2 +- packages/core/src/helpers/generateJSON.ts | 2 +- packages/core/src/helpers/generateText.ts | 2 +- packages/core/src/helpers/getAttributes.ts | 4 +- .../helpers/getAttributesFromExtensions.ts | 2 +- packages/core/src/helpers/getChangedRanges.ts | 4 +- packages/core/src/helpers/getDebugJSON.ts | 4 +- .../core/src/helpers/getExtensionField.ts | 8 +-- .../core/src/helpers/getHTMLFromFragment.ts | 3 +- .../core/src/helpers/getMarkAttributes.ts | 4 +- packages/core/src/helpers/getMarkRange.ts | 4 +- packages/core/src/helpers/getMarkType.ts | 2 +- packages/core/src/helpers/getMarksBetween.ts | 4 +- .../core/src/helpers/getNodeAtPosition.ts | 4 +- .../core/src/helpers/getNodeAttributes.ts | 4 +- packages/core/src/helpers/getNodeType.ts | 2 +- .../core/src/helpers/getRenderedAttributes.ts | 4 +- packages/core/src/helpers/getSchema.ts | 6 +- .../helpers/getSchemaByResolvedExtensions.ts | 5 +- .../core/src/helpers/getSchemaTypeByName.ts | 2 +- .../src/helpers/getSchemaTypeNameByName.ts | 2 +- .../core/src/helpers/getSplittedAttributes.ts | 2 +- packages/core/src/helpers/getText.ts | 4 +- packages/core/src/helpers/getTextBetween.ts | 4 +- .../src/helpers/getTextContentFromNodes.ts | 2 +- .../helpers/getTextSerializersFromSchema.ts | 4 +- .../injectExtensionAttributesToParseRule.ts | 4 +- packages/core/src/helpers/isActive.ts | 2 +- packages/core/src/helpers/isAtEndOfNode.ts | 2 +- packages/core/src/helpers/isAtStartOfNode.ts | 2 +- .../src/helpers/isExtensionRulesEnabled.ts | 2 +- packages/core/src/helpers/isList.ts | 2 +- packages/core/src/helpers/isMarkActive.ts | 6 +- packages/core/src/helpers/isNodeActive.ts | 6 +- packages/core/src/helpers/isNodeEmpty.ts | 2 +- packages/core/src/helpers/posToDOMRect.ts | 2 +- .../core/src/helpers/resolveExtensions.ts | 2 +- .../core/src/helpers/resolveFocusPosition.ts | 4 +- .../src/helpers/selectionToInsertionEnd.ts | 3 +- packages/core/src/helpers/sortExtensions.ts | 2 +- packages/core/src/helpers/splitExtensions.ts | 8 +-- packages/core/src/inputRules/markInputRule.ts | 7 ++- packages/core/src/inputRules/nodeInputRule.ts | 7 ++- packages/core/src/inputRules/textInputRule.ts | 3 +- .../src/inputRules/textblockTypeInputRule.ts | 7 ++- .../core/src/inputRules/wrappingInputRule.ts | 9 +-- packages/core/src/pasteRules/markPasteRule.ts | 7 ++- packages/core/src/pasteRules/nodePasteRule.ts | 7 ++- packages/core/src/pasteRules/textPasteRule.ts | 3 +- packages/core/src/types.ts | 18 +++--- packages/core/src/utilities/callOrReturn.ts | 2 +- .../src/bubble-menu-plugin.ts | 8 ++- .../extension-bubble-menu/src/bubble-menu.ts | 3 +- packages/extension-bullet-list/src/index.ts | 3 +- .../extension-character-count/src/index.ts | 3 +- .../src/code-block-lowlight.ts | 3 +- .../src/lowlight-plugin.ts | 2 +- .../src/collaboration-cursor.ts | 2 +- .../src/collaboration.ts | 4 +- .../src/helpers/isChangeOrigin.ts | 2 +- packages/extension-color/src/index.ts | 3 +- packages/extension-dropcursor/src/index.ts | 3 +- .../src/floating-menu-plugin.ts | 8 ++- .../src/floating-menu.ts | 3 +- packages/extension-focus/src/index.ts | 3 +- packages/extension-font-family/src/index.ts | 5 +- packages/extension-history/src/index.ts | 3 +- .../extension-link/src/helpers/autolink.ts | 14 ++--- .../src/helpers/clickHandler.ts | 2 +- .../src/helpers/pasteHandler.ts | 4 +- packages/extension-link/src/link.ts | 5 +- packages/extension-list-item/src/index.ts | 3 +- packages/extension-list-keymap/src/index.ts | 3 +- .../src/keymap/listHelpers/findListItemPos.ts | 4 +- .../keymap/listHelpers/getNextListDepth.ts | 2 +- .../src/keymap/listHelpers/handleBackspace.ts | 5 +- .../src/keymap/listHelpers/handleDelete.ts | 3 +- .../src/keymap/listHelpers/hasListBefore.ts | 2 +- .../keymap/listHelpers/hasListItemAfter.ts | 2 +- .../keymap/listHelpers/hasListItemBefore.ts | 2 +- .../keymap/listHelpers/listItemHasSubList.ts | 4 +- .../keymap/listHelpers/nextListIsDeeper.ts | 2 +- .../keymap/listHelpers/nextListIsHigher.ts | 2 +- packages/extension-list/src/kit/index.ts | 18 ++++-- .../extension-list/src/task-item/task-item.ts | 5 +- packages/extension-mention/src/mention.ts | 5 +- packages/extension-ordered-list/src/index.ts | 3 +- packages/extension-placeholder/src/index.ts | 3 +- packages/extension-table-cell/src/index.ts | 3 +- packages/extension-table-header/src/index.ts | 3 +- packages/extension-table-row/src/index.ts | 3 +- packages/extension-table/src/kit/index.ts | 12 ++-- .../extension-table/src/table/TableView.ts | 4 +- packages/extension-table/src/table/table.ts | 4 +- .../src/table/utilities/createCell.ts | 2 +- .../src/table/utilities/createColGroup.ts | 2 +- .../src/table/utilities/createTable.ts | 2 +- .../deleteTableWhenAllCellsSelected.ts | 3 +- .../src/table/utilities/getTableNodeTypes.ts | 2 +- packages/extension-table/src/types.ts | 2 +- packages/extension-task-item/src/index.ts | 3 +- packages/extension-task-list/src/index.ts | 3 +- .../src/text-style-kit/index.ts | 18 ++++-- .../src/character-count/character-count.ts | 2 +- .../extensions/src/gap-cursor/gap-cursor.ts | 3 +- .../extensions/src/placeholder/placeholder.ts | 5 +- .../src/trailing-node/trailing-node.ts | 2 +- packages/html/src/generateHTML.ts | 3 +- packages/html/src/generateJSON.ts | 6 +- packages/html/src/getHTMLFromFragment.ts | 3 +- packages/react/src/Context.tsx | 8 ++- packages/react/src/Editor.ts | 6 +- packages/react/src/EditorContent.tsx | 9 +-- packages/react/src/NodeViewContent.tsx | 3 +- packages/react/src/ReactMarkViewRenderer.tsx | 3 +- packages/react/src/ReactNodeViewRenderer.tsx | 25 +++----- packages/react/src/ReactRenderer.tsx | 4 +- packages/react/src/menus/FloatingMenu.tsx | 3 +- packages/react/src/useEditor.ts | 3 +- packages/react/src/useReactNodeView.ts | 3 +- packages/starter-kit/src/starter-kit.ts | 59 +++++++++-------- .../src/json/html-string/string.ts | 3 +- .../static-renderer/src/json/react/react.ts | 3 +- .../src/pm/extensionRenderer.ts | 15 +++-- .../src/pm/html-string/html-string.ts | 2 +- .../src/pm/markdown/markdown.ts | 4 +- .../static-renderer/src/pm/react/react.ts | 2 +- .../suggestion/src/findSuggestionMatch.ts | 5 +- packages/suggestion/src/suggestion.ts | 8 ++- packages/vue-2/src/Editor.ts | 2 +- packages/vue-2/src/EditorContent.ts | 5 +- packages/vue-2/src/NodeViewContent.ts | 3 +- packages/vue-2/src/NodeViewWrapper.ts | 3 +- packages/vue-2/src/VueNodeViewRenderer.ts | 11 ++-- packages/vue-2/src/VueRenderer.ts | 2 +- packages/vue-2/src/menus/BubbleMenu.ts | 6 +- packages/vue-2/src/menus/FloatingMenu.ts | 6 +- packages/vue-3/src/Editor.ts | 8 ++- packages/vue-3/src/EditorContent.ts | 18 ++---- packages/vue-3/src/VueMarkViewRenderer.ts | 8 ++- packages/vue-3/src/VueNodeViewRenderer.ts | 14 +++-- packages/vue-3/src/VueRenderer.ts | 7 ++- packages/vue-3/src/menus/BubbleMenu.ts | 6 +- packages/vue-3/src/menus/FloatingMenu.ts | 6 +- packages/vue-3/src/useEditor.ts | 2 +- .../integration/core/generateText.spec.ts | 3 +- .../static-renderer/json-string.spec.ts | 2 +- 259 files changed, 664 insertions(+), 500 deletions(-) create mode 100644 .changeset/cuddly-impalas-heal.md diff --git a/.changeset/cuddly-impalas-heal.md b/.changeset/cuddly-impalas-heal.md new file mode 100644 index 0000000000..1f89c1e229 --- /dev/null +++ b/.changeset/cuddly-impalas-heal.md @@ -0,0 +1,63 @@ +--- +'tiptap-2-migrate-imports': patch +'tiptap-demos': patch +'@tiptap/core': patch +'@tiptap/extension-blockquote': patch +'@tiptap/extension-bold': patch +'@tiptap/extension-bubble-menu': patch +'@tiptap/extension-bullet-list': patch +'@tiptap/extension-character-count': patch +'@tiptap/extension-code': patch +'@tiptap/extension-code-block': patch +'@tiptap/extension-code-block-lowlight': patch +'@tiptap/extension-collaboration': patch +'@tiptap/extension-collaboration-cursor': patch +'@tiptap/extension-color': patch +'@tiptap/extension-document': patch +'@tiptap/extension-dropcursor': patch +'@tiptap/extension-floating-menu': patch +'@tiptap/extension-focus': patch +'@tiptap/extension-font-family': patch +'@tiptap/extension-gapcursor': patch +'@tiptap/extension-hard-break': patch +'@tiptap/extension-heading': patch +'@tiptap/extension-highlight': patch +'@tiptap/extension-history': patch +'@tiptap/extension-horizontal-rule': patch +'@tiptap/extension-image': patch +'@tiptap/extension-italic': patch +'@tiptap/extension-link': patch +'@tiptap/extension-list': patch +'@tiptap/extension-list-item': patch +'@tiptap/extension-list-keymap': patch +'@tiptap/extension-mention': patch +'@tiptap/extension-ordered-list': patch +'@tiptap/extension-paragraph': patch +'@tiptap/extension-placeholder': patch +'@tiptap/extension-strike': patch +'@tiptap/extension-subscript': patch +'@tiptap/extension-superscript': patch +'@tiptap/extension-table': patch +'@tiptap/extension-table-cell': patch +'@tiptap/extension-table-header': patch +'@tiptap/extension-table-row': patch +'@tiptap/extension-task-item': patch +'@tiptap/extension-task-list': patch +'@tiptap/extension-text': patch +'@tiptap/extension-text-align': patch +'@tiptap/extension-text-style': patch +'@tiptap/extension-typography': patch +'@tiptap/extension-underline': patch +'@tiptap/extension-youtube': patch +'@tiptap/extensions': patch +'@tiptap/html': patch +'@tiptap/pm': patch +'@tiptap/react': patch +'@tiptap/starter-kit': patch +'@tiptap/static-renderer': patch +'@tiptap/suggestion': patch +'@tiptap/vue-2': patch +'@tiptap/vue-3': patch +--- + +Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory diff --git a/.eslintrc.js b/.eslintrc.js index 233613d607..40937856e9 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -90,6 +90,7 @@ module.exports = { '@typescript-eslint/ban-ts-comment': 'off', '@typescript-eslint/ban-types': 'off', '@typescript-eslint/explicit-module-boundary-types': 'off', + '@typescript-eslint/consistent-type-imports': ['error', { disallowTypeAnnotations: false }], 'simple-import-sort/imports': 'error', 'simple-import-sort/exports': 'error', }, diff --git a/demos/src/Examples/Accessibility/React/InsertMenu.tsx b/demos/src/Examples/Accessibility/React/InsertMenu.tsx index 9d8ef409fc..3873603002 100644 --- a/demos/src/Examples/Accessibility/React/InsertMenu.tsx +++ b/demos/src/Examples/Accessibility/React/InsertMenu.tsx @@ -1,4 +1,5 @@ -import { Editor, useEditorState } from '@tiptap/react' +import type { Editor } from '@tiptap/react' +import { useEditorState } from '@tiptap/react' import { FloatingMenu } from '@tiptap/react/menus' import React, { useRef } from 'react' diff --git a/demos/src/Examples/Accessibility/React/MenuBar.tsx b/demos/src/Examples/Accessibility/React/MenuBar.tsx index 0dc023472d..0f7ccaff99 100644 --- a/demos/src/Examples/Accessibility/React/MenuBar.tsx +++ b/demos/src/Examples/Accessibility/React/MenuBar.tsx @@ -1,4 +1,4 @@ -import { Editor } from '@tiptap/core' +import type { Editor } from '@tiptap/core' import { useEditorState } from '@tiptap/react' import React, { useEffect, useRef, useState } from 'react' diff --git a/demos/src/Examples/Accessibility/React/TextMenu.tsx b/demos/src/Examples/Accessibility/React/TextMenu.tsx index 32d7f739ab..1bc3b576dd 100644 --- a/demos/src/Examples/Accessibility/React/TextMenu.tsx +++ b/demos/src/Examples/Accessibility/React/TextMenu.tsx @@ -1,5 +1,6 @@ import { Selection } from '@tiptap/pm/state' -import { Editor, useEditorState } from '@tiptap/react' +import type { Editor } from '@tiptap/react' +import { useEditorState } from '@tiptap/react' import { BubbleMenu } from '@tiptap/react/menus' import React, { useRef } from 'react' diff --git a/demos/src/Examples/Accessibility/React/useMenubarNav.ts b/demos/src/Examples/Accessibility/React/useMenubarNav.ts index 1c0541ed6b..c1f5ed3c65 100644 --- a/demos/src/Examples/Accessibility/React/useMenubarNav.ts +++ b/demos/src/Examples/Accessibility/React/useMenubarNav.ts @@ -1,5 +1,6 @@ -import { Editor } from '@tiptap/core' -import React, { useCallback, useEffect, useRef } from 'react' +import type { Editor } from '@tiptap/core' +import type React from 'react' +import { useCallback, useEffect, useRef } from 'react' /** * Handle arrow navigation within a menu bar container, and allow to escape to the editor diff --git a/demos/src/Examples/Default/React/index.tsx b/demos/src/Examples/Default/React/index.tsx index 8d17d38364..bf0b455ff3 100644 --- a/demos/src/Examples/Default/React/index.tsx +++ b/demos/src/Examples/Default/React/index.tsx @@ -1,7 +1,8 @@ import './styles.scss' import { TextStyleKit } from '@tiptap/extension-text-style' -import { Editor, EditorContent, useEditor, useEditorState } from '@tiptap/react' +import type { Editor } from '@tiptap/react' +import { EditorContent, useEditor, useEditorState } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React from 'react' diff --git a/demos/src/Examples/Savvy/React/findColors.ts b/demos/src/Examples/Savvy/React/findColors.ts index 66ae2846c0..7470c91f47 100644 --- a/demos/src/Examples/Savvy/React/findColors.ts +++ b/demos/src/Examples/Savvy/React/findColors.ts @@ -1,4 +1,4 @@ -import { Node } from '@tiptap/pm/model' +import type { Node } from '@tiptap/pm/model' import { Decoration, DecorationSet } from '@tiptap/pm/view' export default function (doc: Node): DecorationSet { diff --git a/demos/src/Examples/Savvy/Vue/findColors.ts b/demos/src/Examples/Savvy/Vue/findColors.ts index 66ae2846c0..7470c91f47 100644 --- a/demos/src/Examples/Savvy/Vue/findColors.ts +++ b/demos/src/Examples/Savvy/Vue/findColors.ts @@ -1,4 +1,4 @@ -import { Node } from '@tiptap/pm/model' +import type { Node } from '@tiptap/pm/model' import { Decoration, DecorationSet } from '@tiptap/pm/view' export default function (doc: Node): DecorationSet { diff --git a/demos/src/Examples/StaticRendering/React/index.tsx b/demos/src/Examples/StaticRendering/React/index.tsx index b33f6c8402..2f399505e6 100644 --- a/demos/src/Examples/StaticRendering/React/index.tsx +++ b/demos/src/Examples/StaticRendering/React/index.tsx @@ -1,6 +1,7 @@ import './styles.scss' -import { EditorProvider, JSONContent, useCurrentEditor, useEditorState } from '@tiptap/react' +import type { JSONContent } from '@tiptap/react' +import { EditorProvider, useCurrentEditor, useEditorState } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import { renderToHTMLString, renderToMarkdown, renderToReactElement } from '@tiptap/static-renderer' import React, { useState } from 'react' diff --git a/demos/src/Experiments/CollaborationAnnotation/Vue/extension/AnnotationPlugin.ts b/demos/src/Experiments/CollaborationAnnotation/Vue/extension/AnnotationPlugin.ts index 8b25841db4..0d82d16780 100644 --- a/demos/src/Experiments/CollaborationAnnotation/Vue/extension/AnnotationPlugin.ts +++ b/demos/src/Experiments/CollaborationAnnotation/Vue/extension/AnnotationPlugin.ts @@ -1,8 +1,8 @@ import { Plugin, PluginKey } from '@tiptap/pm/state' import { DecorationSet } from '@tiptap/pm/view' -import * as Y from 'yjs' +import type * as Y from 'yjs' -import { AnnotationItem } from './AnnotationItem.js' +import type { AnnotationItem } from './AnnotationItem.js' import { AnnotationState } from './AnnotationState.js' export const AnnotationPluginKey = new PluginKey('annotation') diff --git a/demos/src/Experiments/CollaborationAnnotation/Vue/extension/AnnotationState.ts b/demos/src/Experiments/CollaborationAnnotation/Vue/extension/AnnotationState.ts index c882d1491e..c726dca364 100644 --- a/demos/src/Experiments/CollaborationAnnotation/Vue/extension/AnnotationState.ts +++ b/demos/src/Experiments/CollaborationAnnotation/Vue/extension/AnnotationState.ts @@ -1,15 +1,15 @@ -import { EditorState, Transaction } from '@tiptap/pm/state' +import type { EditorState, Transaction } from '@tiptap/pm/state' import { Decoration, DecorationSet } from '@tiptap/pm/view' import { absolutePositionToRelativePosition, relativePositionToAbsolutePosition, ySyncPluginKey, } from '@tiptap/y-tiptap' -import * as Y from 'yjs' +import type * as Y from 'yjs' import { AnnotationItem } from './AnnotationItem.js' import { AnnotationPluginKey } from './AnnotationPlugin.js' -import { AddAnnotationAction, DeleteAnnotationAction, UpdateAnnotationAction } from './collaboration-annotation.js' +import type { AddAnnotationAction, DeleteAnnotationAction, UpdateAnnotationAction } from './collaboration-annotation.js' export interface AnnotationStateOptions { HTMLAttributes: { diff --git a/demos/src/Experiments/CollaborationAnnotation/Vue/extension/collaboration-annotation.ts b/demos/src/Experiments/CollaborationAnnotation/Vue/extension/collaboration-annotation.ts index 8c062419f3..aaba09f7a1 100644 --- a/demos/src/Experiments/CollaborationAnnotation/Vue/extension/collaboration-annotation.ts +++ b/demos/src/Experiments/CollaborationAnnotation/Vue/extension/collaboration-annotation.ts @@ -1,5 +1,5 @@ import { Extension } from '@tiptap/core' -import * as Y from 'yjs' +import type * as Y from 'yjs' import { AnnotationPlugin, AnnotationPluginKey } from './AnnotationPlugin.js' diff --git a/demos/src/Experiments/Linter/Vue/extension/Linter.ts b/demos/src/Experiments/Linter/Vue/extension/Linter.ts index e51aca406b..98cc25e7df 100644 --- a/demos/src/Experiments/Linter/Vue/extension/Linter.ts +++ b/demos/src/Experiments/Linter/Vue/extension/Linter.ts @@ -1,9 +1,10 @@ import { Extension } from '@tiptap/core' -import { Node as ProsemirrorNode } from '@tiptap/pm/model' +import type { Node as ProsemirrorNode } from '@tiptap/pm/model' import { Plugin, PluginKey, TextSelection } from '@tiptap/pm/state' import { Decoration, DecorationSet } from '@tiptap/pm/view' -import LinterPlugin, { Result as Issue } from './LinterPlugin.js' +import type { Result as Issue } from './LinterPlugin.js' +import type LinterPlugin from './LinterPlugin.js' interface IconDivElement extends HTMLDivElement { issue?: Issue diff --git a/demos/src/Experiments/Linter/Vue/extension/LinterPlugin.ts b/demos/src/Experiments/Linter/Vue/extension/LinterPlugin.ts index d30f0d6c1d..c9ce5aaa7c 100644 --- a/demos/src/Experiments/Linter/Vue/extension/LinterPlugin.ts +++ b/demos/src/Experiments/Linter/Vue/extension/LinterPlugin.ts @@ -1,4 +1,4 @@ -import { Node as ProsemirrorNode } from '@tiptap/pm/model' +import type { Node as ProsemirrorNode } from '@tiptap/pm/model' export interface Result { message: string diff --git a/demos/src/Experiments/Linter/Vue/extension/plugins/HeadingLevel.ts b/demos/src/Experiments/Linter/Vue/extension/plugins/HeadingLevel.ts index 34802fdc62..c03132aca0 100644 --- a/demos/src/Experiments/Linter/Vue/extension/plugins/HeadingLevel.ts +++ b/demos/src/Experiments/Linter/Vue/extension/plugins/HeadingLevel.ts @@ -1,6 +1,7 @@ -import { EditorView } from '@tiptap/pm/view' +import type { EditorView } from '@tiptap/pm/view' -import LinterPlugin, { Result as Issue } from '../LinterPlugin.js' +import type { Result as Issue } from '../LinterPlugin.js' +import LinterPlugin from '../LinterPlugin.js' export class HeadingLevel extends LinterPlugin { fixHeader(level: number) { diff --git a/demos/src/Experiments/Linter/Vue/extension/plugins/Punctuation.ts b/demos/src/Experiments/Linter/Vue/extension/plugins/Punctuation.ts index 506e0abaa8..87e1ef1f31 100644 --- a/demos/src/Experiments/Linter/Vue/extension/plugins/Punctuation.ts +++ b/demos/src/Experiments/Linter/Vue/extension/plugins/Punctuation.ts @@ -1,6 +1,7 @@ -import { EditorView } from '@tiptap/pm/view' +import type { EditorView } from '@tiptap/pm/view' -import LinterPlugin, { Result as Issue } from '../LinterPlugin.js' +import type { Result as Issue } from '../LinterPlugin.js' +import LinterPlugin from '../LinterPlugin.js' export class Punctuation extends LinterPlugin { public regex = / ([,.!?:]) ?/g diff --git a/demos/src/GuideMarkViews/ReactComponent/React/Component.tsx b/demos/src/GuideMarkViews/ReactComponent/React/Component.tsx index 95d4f0da03..a2af8cf65c 100644 --- a/demos/src/GuideMarkViews/ReactComponent/React/Component.tsx +++ b/demos/src/GuideMarkViews/ReactComponent/React/Component.tsx @@ -1,4 +1,5 @@ -import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' +import type { MarkViewRendererProps } from '@tiptap/react' +import { MarkViewContent } from '@tiptap/react' import React from 'react' // eslint-disable-next-line @typescript-eslint/no-unused-vars diff --git a/demos/src/GuideNodeViews/ReactComponent/React/Component.tsx b/demos/src/GuideNodeViews/ReactComponent/React/Component.tsx index 10598cf7ba..94e0a9c51f 100644 --- a/demos/src/GuideNodeViews/ReactComponent/React/Component.tsx +++ b/demos/src/GuideNodeViews/ReactComponent/React/Component.tsx @@ -1,4 +1,5 @@ -import { NodeViewProps, NodeViewWrapper } from '@tiptap/react' +import type { NodeViewProps } from '@tiptap/react' +import { NodeViewWrapper } from '@tiptap/react' import React from 'react' export default (props: NodeViewProps) => { diff --git a/demos/src/GuideNodeViews/ReactComponentContext/React/Component.tsx b/demos/src/GuideNodeViews/ReactComponentContext/React/Component.tsx index fcbbf3a2db..bda196d814 100644 --- a/demos/src/GuideNodeViews/ReactComponentContext/React/Component.tsx +++ b/demos/src/GuideNodeViews/ReactComponentContext/React/Component.tsx @@ -1,4 +1,5 @@ -import { NodeViewProps, NodeViewWrapper } from '@tiptap/react' +import type { NodeViewProps } from '@tiptap/react' +import { NodeViewWrapper } from '@tiptap/react' import React, { useContext } from 'react' import { Context } from './Context.js' diff --git a/demos/src/Tutorials/1-1-textarea/React/Note.tsx b/demos/src/Tutorials/1-1-textarea/React/Note.tsx index 78e71c5323..368b678aa0 100644 --- a/demos/src/Tutorials/1-1-textarea/React/Note.tsx +++ b/demos/src/Tutorials/1-1-textarea/React/Note.tsx @@ -1,6 +1,6 @@ import React, { useState } from 'react' -import { TNote } from './types.js' +import type { TNote } from './types.js' export default ({ note }: { note: TNote }) => { const [modelValue, setModelValue] = useState(note.content) diff --git a/demos/src/Tutorials/1-1-textarea/React/index.tsx b/demos/src/Tutorials/1-1-textarea/React/index.tsx index 0cdaa9edc2..ab06a56a48 100644 --- a/demos/src/Tutorials/1-1-textarea/React/index.tsx +++ b/demos/src/Tutorials/1-1-textarea/React/index.tsx @@ -3,7 +3,7 @@ import './styles.scss' import React from 'react' import Note from './Note.jsx' -import { TNote } from './types.js' +import type { TNote } from './types.js' const notes: TNote[] = [ { diff --git a/demos/src/Tutorials/1-1-textarea/Vue/Note.vue b/demos/src/Tutorials/1-1-textarea/Vue/Note.vue index 03b5bdadbe..20a16f1059 100644 --- a/demos/src/Tutorials/1-1-textarea/Vue/Note.vue +++ b/demos/src/Tutorials/1-1-textarea/Vue/Note.vue @@ -1,7 +1,7 @@ diff --git a/packages/core/src/CommandManager.ts b/packages/core/src/CommandManager.ts index 4f08079f40..988426ee06 100644 --- a/packages/core/src/CommandManager.ts +++ b/packages/core/src/CommandManager.ts @@ -1,8 +1,8 @@ -import { EditorState, Transaction } from '@tiptap/pm/state' +import type { EditorState, Transaction } from '@tiptap/pm/state' -import { Editor } from './Editor.js' +import type { Editor } from './Editor.js' import { createChainableState } from './helpers/createChainableState.js' -import { AnyCommands, CanCommands, ChainedCommands, CommandProps, SingleCommands } from './types.js' +import type { AnyCommands, CanCommands, ChainedCommands, CommandProps, SingleCommands } from './types.js' export class CommandManager { editor: Editor diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index be5f7f3889..64c8f96ec9 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/no-empty-object-type */ -import { MarkType, Node as ProseMirrorNode, NodeType, Schema } from '@tiptap/pm/model' -import { EditorState, Plugin, PluginKey, Transaction } from '@tiptap/pm/state' +import type { MarkType, Node as ProseMirrorNode, NodeType, Schema } from '@tiptap/pm/model' +import type { Plugin, PluginKey, Transaction } from '@tiptap/pm/state' +import { EditorState } from '@tiptap/pm/state' import { EditorView } from '@tiptap/pm/view' import { CommandManager } from './CommandManager.js' @@ -28,7 +29,7 @@ import { resolveFocusPosition } from './helpers/resolveFocusPosition.js' import type { Storage } from './index.js' import { NodePos } from './NodePos.js' import { style } from './style.js' -import { +import type { CanCommands, ChainedCommands, DocumentType, diff --git a/packages/core/src/Extendable.ts b/packages/core/src/Extendable.ts index ec613b5693..f1b3124534 100644 --- a/packages/core/src/Extendable.ts +++ b/packages/core/src/Extendable.ts @@ -2,12 +2,13 @@ import type { Plugin } from '@tiptap/pm/state' import type { Editor } from './Editor.js' import { getExtensionField } from './helpers/getExtensionField.js' -import { ExtensionConfig, MarkConfig, NodeConfig } from './index.js' +import type { ExtensionConfig, MarkConfig, NodeConfig } from './index.js' import type { InputRule } from './InputRule.js' import type { Mark } from './Mark.js' import type { Node } from './Node.js' import type { PasteRule } from './PasteRule.js' import type { + AnyConfig, EditorEvents, Extensions, GlobalAttributes, @@ -15,7 +16,6 @@ import type { ParentConfig, RawCommands, } from './types.js' -import { AnyConfig } from './types.js' import { callOrReturn } from './utilities/callOrReturn.js' import { mergeDeep } from './utilities/mergeDeep.js' diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts index b8f7e4a2f2..25a1d958e0 100644 --- a/packages/core/src/ExtensionManager.ts +++ b/packages/core/src/ExtensionManager.ts @@ -1,7 +1,7 @@ import { keymap } from '@tiptap/pm/keymap' -import { Schema } from '@tiptap/pm/model' -import { Plugin } from '@tiptap/pm/state' -import { MarkViewConstructor, NodeViewConstructor } from '@tiptap/pm/view' +import type { Schema } from '@tiptap/pm/model' +import type { Plugin } from '@tiptap/pm/state' +import type { MarkViewConstructor, NodeViewConstructor } from '@tiptap/pm/view' import type { Editor } from './Editor.js' import { @@ -18,10 +18,12 @@ import { splitExtensions, } from './helpers/index.js' import { type MarkConfig, type NodeConfig, type Storage, getMarkType } from './index.js' -import { InputRule, inputRulesPlugin } from './InputRule.js' +import type { InputRule } from './InputRule.js' +import { inputRulesPlugin } from './InputRule.js' import { Mark } from './Mark.js' -import { PasteRule, pasteRulesPlugin } from './PasteRule.js' -import { AnyConfig, Extensions, RawCommands } from './types.js' +import type { PasteRule } from './PasteRule.js' +import { pasteRulesPlugin } from './PasteRule.js' +import type { AnyConfig, Extensions, RawCommands } from './types.js' import { callOrReturn } from './utilities/callOrReturn.js' export class ExtensionManager { diff --git a/packages/core/src/InputRule.ts b/packages/core/src/InputRule.ts index ac0149b38f..e192124d87 100644 --- a/packages/core/src/InputRule.ts +++ b/packages/core/src/InputRule.ts @@ -1,12 +1,14 @@ -import { Fragment, Node as ProseMirrorNode } from '@tiptap/pm/model' -import { EditorState, Plugin, TextSelection } from '@tiptap/pm/state' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' +import { Fragment } from '@tiptap/pm/model' +import type { EditorState, TextSelection } from '@tiptap/pm/state' +import { Plugin } from '@tiptap/pm/state' import { CommandManager } from './CommandManager.js' -import { Editor } from './Editor.js' +import type { Editor } from './Editor.js' import { createChainableState } from './helpers/createChainableState.js' import { getHTMLFromFragment } from './helpers/getHTMLFromFragment.js' import { getTextContentFromNodes } from './helpers/getTextContentFromNodes.js' -import { CanCommands, ChainedCommands, ExtendedRegExpMatchArray, Range, SingleCommands } from './types.js' +import type { CanCommands, ChainedCommands, ExtendedRegExpMatchArray, Range, SingleCommands } from './types.js' import { isRegExp } from './utilities/isRegExp.js' export type InputRuleMatch = { diff --git a/packages/core/src/MarkView.ts b/packages/core/src/MarkView.ts index 0ca5cc298e..0ded3e027f 100644 --- a/packages/core/src/MarkView.ts +++ b/packages/core/src/MarkView.ts @@ -1,7 +1,7 @@ -import { ViewMutationRecord } from '@tiptap/pm/view' +import type { ViewMutationRecord } from '@tiptap/pm/view' -import { Editor } from './Editor.js' -import { MarkViewProps, MarkViewRendererOptions } from './types.js' +import type { Editor } from './Editor.js' +import type { MarkViewProps, MarkViewRendererOptions } from './types.js' import { isAndroid, isiOS } from './utilities/index.js' export class MarkView { diff --git a/packages/core/src/NodePos.ts b/packages/core/src/NodePos.ts index 56d9ae5adb..e38bc9a078 100644 --- a/packages/core/src/NodePos.ts +++ b/packages/core/src/NodePos.ts @@ -1,7 +1,7 @@ -import { Fragment, Node, ResolvedPos } from '@tiptap/pm/model' +import type { Fragment, Node, ResolvedPos } from '@tiptap/pm/model' -import { Editor } from './Editor.js' -import { Content, Range } from './types.js' +import type { Editor } from './Editor.js' +import type { Content, Range } from './types.js' export class NodePos { private resolvedPos: ResolvedPos diff --git a/packages/core/src/NodeView.ts b/packages/core/src/NodeView.ts index 31f234e63e..8074d9a592 100644 --- a/packages/core/src/NodeView.ts +++ b/packages/core/src/NodeView.ts @@ -1,8 +1,8 @@ import { NodeSelection } from '@tiptap/pm/state' -import { NodeView as ProseMirrorNodeView, ViewMutationRecord } from '@tiptap/pm/view' +import type { NodeView as ProseMirrorNodeView, ViewMutationRecord } from '@tiptap/pm/view' -import { Editor as CoreEditor } from './Editor.js' -import { DecorationWithType, NodeViewRendererOptions, NodeViewRendererProps } from './types.js' +import type { Editor as CoreEditor } from './Editor.js' +import type { DecorationWithType, NodeViewRendererOptions, NodeViewRendererProps } from './types.js' import { isAndroid } from './utilities/isAndroid.js' import { isiOS } from './utilities/isiOS.js' diff --git a/packages/core/src/PasteRule.ts b/packages/core/src/PasteRule.ts index f1ce505585..40b59195b6 100644 --- a/packages/core/src/PasteRule.ts +++ b/packages/core/src/PasteRule.ts @@ -1,11 +1,13 @@ -import { Fragment, Node as ProseMirrorNode } from '@tiptap/pm/model' -import { EditorState, Plugin } from '@tiptap/pm/state' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' +import { Fragment } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' +import { Plugin } from '@tiptap/pm/state' import { CommandManager } from './CommandManager.js' -import { Editor } from './Editor.js' +import type { Editor } from './Editor.js' import { createChainableState } from './helpers/createChainableState.js' import { getHTMLFromFragment } from './helpers/getHTMLFromFragment.js' -import { CanCommands, ChainedCommands, ExtendedRegExpMatchArray, Range, SingleCommands } from './types.js' +import type { CanCommands, ChainedCommands, ExtendedRegExpMatchArray, Range, SingleCommands } from './types.js' import { isNumber } from './utilities/isNumber.js' import { isRegExp } from './utilities/isRegExp.js' diff --git a/packages/core/src/Tracker.ts b/packages/core/src/Tracker.ts index 3cfad8d321..faae921fd8 100644 --- a/packages/core/src/Tracker.ts +++ b/packages/core/src/Tracker.ts @@ -1,4 +1,4 @@ -import { Transaction } from '@tiptap/pm/state' +import type { Transaction } from '@tiptap/pm/state' export interface TrackerResult { position: number diff --git a/packages/core/src/commands/blur.ts b/packages/core/src/commands/blur.ts index 5515a55762..14e8baf3a5 100644 --- a/packages/core/src/commands/blur.ts +++ b/packages/core/src/commands/blur.ts @@ -1,4 +1,4 @@ -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/clearContent.ts b/packages/core/src/commands/clearContent.ts index b6c1602c25..792a3d6b40 100644 --- a/packages/core/src/commands/clearContent.ts +++ b/packages/core/src/commands/clearContent.ts @@ -1,4 +1,4 @@ -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/clearNodes.ts b/packages/core/src/commands/clearNodes.ts index 58d301ae59..b765084670 100644 --- a/packages/core/src/commands/clearNodes.ts +++ b/packages/core/src/commands/clearNodes.ts @@ -1,6 +1,6 @@ import { liftTarget } from '@tiptap/pm/transform' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/command.ts b/packages/core/src/commands/command.ts index 826db01eaf..6ae5e4e1cc 100644 --- a/packages/core/src/commands/command.ts +++ b/packages/core/src/commands/command.ts @@ -1,4 +1,4 @@ -import { Command, RawCommands } from '../types.js' +import type { Command, RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/createParagraphNear.ts b/packages/core/src/commands/createParagraphNear.ts index c787ae0457..015b760743 100644 --- a/packages/core/src/commands/createParagraphNear.ts +++ b/packages/core/src/commands/createParagraphNear.ts @@ -1,6 +1,6 @@ import { createParagraphNear as originalCreateParagraphNear } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/cut.ts b/packages/core/src/commands/cut.ts index dd0fdc47fe..7c715ad47c 100644 --- a/packages/core/src/commands/cut.ts +++ b/packages/core/src/commands/cut.ts @@ -1,6 +1,6 @@ import { TextSelection } from '@tiptap/pm/state' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/deleteCurrentNode.ts b/packages/core/src/commands/deleteCurrentNode.ts index 918c7301ab..d933b4640a 100644 --- a/packages/core/src/commands/deleteCurrentNode.ts +++ b/packages/core/src/commands/deleteCurrentNode.ts @@ -1,4 +1,4 @@ -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/deleteNode.ts b/packages/core/src/commands/deleteNode.ts index 29de43d781..f935e25a38 100644 --- a/packages/core/src/commands/deleteNode.ts +++ b/packages/core/src/commands/deleteNode.ts @@ -1,7 +1,7 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { getNodeType } from '../helpers/getNodeType.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/deleteRange.ts b/packages/core/src/commands/deleteRange.ts index b4f77bb9a0..6d7859c52a 100644 --- a/packages/core/src/commands/deleteRange.ts +++ b/packages/core/src/commands/deleteRange.ts @@ -1,4 +1,4 @@ -import { Range, RawCommands } from '../types.js' +import type { Range, RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/deleteSelection.ts b/packages/core/src/commands/deleteSelection.ts index e52bb56d7e..0c111df95f 100644 --- a/packages/core/src/commands/deleteSelection.ts +++ b/packages/core/src/commands/deleteSelection.ts @@ -1,6 +1,6 @@ import { deleteSelection as originalDeleteSelection } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/enter.ts b/packages/core/src/commands/enter.ts index 08e63c2552..fd13a1627f 100644 --- a/packages/core/src/commands/enter.ts +++ b/packages/core/src/commands/enter.ts @@ -1,4 +1,4 @@ -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/exitCode.ts b/packages/core/src/commands/exitCode.ts index 4b522d63fd..748578a89a 100644 --- a/packages/core/src/commands/exitCode.ts +++ b/packages/core/src/commands/exitCode.ts @@ -1,6 +1,6 @@ import { exitCode as originalExitCode } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/extendMarkRange.ts b/packages/core/src/commands/extendMarkRange.ts index c4f1840e47..59e33fa052 100644 --- a/packages/core/src/commands/extendMarkRange.ts +++ b/packages/core/src/commands/extendMarkRange.ts @@ -1,9 +1,9 @@ -import { MarkType } from '@tiptap/pm/model' +import type { MarkType } from '@tiptap/pm/model' import { TextSelection } from '@tiptap/pm/state' import { getMarkRange } from '../helpers/getMarkRange.js' import { getMarkType } from '../helpers/getMarkType.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/first.ts b/packages/core/src/commands/first.ts index 11abb2462e..9c23186142 100644 --- a/packages/core/src/commands/first.ts +++ b/packages/core/src/commands/first.ts @@ -1,4 +1,4 @@ -import { Command, CommandProps, RawCommands } from '../types.js' +import type { Command, CommandProps, RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/focus.ts b/packages/core/src/commands/focus.ts index 44201049e9..3ee955d23f 100644 --- a/packages/core/src/commands/focus.ts +++ b/packages/core/src/commands/focus.ts @@ -1,6 +1,6 @@ import { isTextSelection } from '../helpers/isTextSelection.js' import { resolveFocusPosition } from '../helpers/resolveFocusPosition.js' -import { FocusPosition, RawCommands } from '../types.js' +import type { FocusPosition, RawCommands } from '../types.js' import { isAndroid } from '../utilities/isAndroid.js' import { isiOS } from '../utilities/isiOS.js' diff --git a/packages/core/src/commands/forEach.ts b/packages/core/src/commands/forEach.ts index ebc0ecf275..f5ba3df884 100644 --- a/packages/core/src/commands/forEach.ts +++ b/packages/core/src/commands/forEach.ts @@ -1,4 +1,4 @@ -import { CommandProps, RawCommands } from '../types.js' +import type { CommandProps, RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/insertContent.ts b/packages/core/src/commands/insertContent.ts index 8b3d781b2f..d668bd7a30 100644 --- a/packages/core/src/commands/insertContent.ts +++ b/packages/core/src/commands/insertContent.ts @@ -1,6 +1,6 @@ -import { Fragment, Node as ProseMirrorNode, ParseOptions } from '@tiptap/pm/model' +import type { Fragment, Node as ProseMirrorNode, ParseOptions } from '@tiptap/pm/model' -import { Content, RawCommands } from '../types.js' +import type { Content, RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/insertContentAt.ts b/packages/core/src/commands/insertContentAt.ts index f82d2da282..2fb5e650fb 100644 --- a/packages/core/src/commands/insertContentAt.ts +++ b/packages/core/src/commands/insertContentAt.ts @@ -1,8 +1,9 @@ -import { Fragment, Node as ProseMirrorNode, ParseOptions } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode, ParseOptions } from '@tiptap/pm/model' +import { Fragment } from '@tiptap/pm/model' import { createNodeFromContent } from '../helpers/createNodeFromContent.js' import { selectionToInsertionEnd } from '../helpers/selectionToInsertionEnd.js' -import { Content, Range, RawCommands } from '../types.js' +import type { Content, Range, RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/join.ts b/packages/core/src/commands/join.ts index a9a9bab6d0..ec64ab5b82 100644 --- a/packages/core/src/commands/join.ts +++ b/packages/core/src/commands/join.ts @@ -5,7 +5,7 @@ import { joinUp as originalJoinUp, } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/joinItemBackward.ts b/packages/core/src/commands/joinItemBackward.ts index 3f2f5f3ea8..45b69f54b7 100644 --- a/packages/core/src/commands/joinItemBackward.ts +++ b/packages/core/src/commands/joinItemBackward.ts @@ -1,6 +1,6 @@ import { joinPoint } from '@tiptap/pm/transform' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/joinItemForward.ts b/packages/core/src/commands/joinItemForward.ts index 5e0b8a7e8c..e292959784 100644 --- a/packages/core/src/commands/joinItemForward.ts +++ b/packages/core/src/commands/joinItemForward.ts @@ -1,6 +1,6 @@ import { joinPoint } from '@tiptap/pm/transform' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/joinTextblockBackward.ts b/packages/core/src/commands/joinTextblockBackward.ts index 4e4e206fd8..40add29d0a 100644 --- a/packages/core/src/commands/joinTextblockBackward.ts +++ b/packages/core/src/commands/joinTextblockBackward.ts @@ -1,6 +1,6 @@ import { joinTextblockBackward as originalCommand } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/joinTextblockForward.ts b/packages/core/src/commands/joinTextblockForward.ts index e720d033fb..23d8338236 100644 --- a/packages/core/src/commands/joinTextblockForward.ts +++ b/packages/core/src/commands/joinTextblockForward.ts @@ -1,6 +1,6 @@ import { joinTextblockForward as originalCommand } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/keyboardShortcut.ts b/packages/core/src/commands/keyboardShortcut.ts index abdd931ac2..3dfd26f791 100644 --- a/packages/core/src/commands/keyboardShortcut.ts +++ b/packages/core/src/commands/keyboardShortcut.ts @@ -1,4 +1,4 @@ -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' import { isiOS } from '../utilities/isiOS.js' import { isMacOS } from '../utilities/isMacOS.js' diff --git a/packages/core/src/commands/lift.ts b/packages/core/src/commands/lift.ts index 39830d146d..66954cfd60 100644 --- a/packages/core/src/commands/lift.ts +++ b/packages/core/src/commands/lift.ts @@ -1,9 +1,9 @@ import { lift as originalLift } from '@tiptap/pm/commands' -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { getNodeType } from '../helpers/getNodeType.js' import { isNodeActive } from '../helpers/isNodeActive.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/liftEmptyBlock.ts b/packages/core/src/commands/liftEmptyBlock.ts index d6d9f6741b..a61600ebd1 100644 --- a/packages/core/src/commands/liftEmptyBlock.ts +++ b/packages/core/src/commands/liftEmptyBlock.ts @@ -1,6 +1,6 @@ import { liftEmptyBlock as originalLiftEmptyBlock } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/liftListItem.ts b/packages/core/src/commands/liftListItem.ts index 26d9a35031..c46c097002 100644 --- a/packages/core/src/commands/liftListItem.ts +++ b/packages/core/src/commands/liftListItem.ts @@ -1,8 +1,8 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { liftListItem as originalLiftListItem } from '@tiptap/pm/schema-list' import { getNodeType } from '../helpers/getNodeType.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/newlineInCode.ts b/packages/core/src/commands/newlineInCode.ts index 05a5c1fb51..fbd7773138 100644 --- a/packages/core/src/commands/newlineInCode.ts +++ b/packages/core/src/commands/newlineInCode.ts @@ -1,6 +1,6 @@ import { newlineInCode as originalNewlineInCode } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/resetAttributes.ts b/packages/core/src/commands/resetAttributes.ts index fd77bc78e3..783d44b860 100644 --- a/packages/core/src/commands/resetAttributes.ts +++ b/packages/core/src/commands/resetAttributes.ts @@ -1,9 +1,9 @@ -import { MarkType, NodeType } from '@tiptap/pm/model' +import type { MarkType, NodeType } from '@tiptap/pm/model' import { getMarkType } from '../helpers/getMarkType.js' import { getNodeType } from '../helpers/getNodeType.js' import { getSchemaTypeNameByName } from '../helpers/getSchemaTypeNameByName.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' import { deleteProps } from '../utilities/deleteProps.js' declare module '@tiptap/core' { diff --git a/packages/core/src/commands/scrollIntoView.ts b/packages/core/src/commands/scrollIntoView.ts index c028aaed16..cba9b55f92 100644 --- a/packages/core/src/commands/scrollIntoView.ts +++ b/packages/core/src/commands/scrollIntoView.ts @@ -1,4 +1,4 @@ -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/selectAll.ts b/packages/core/src/commands/selectAll.ts index 3ee8493b31..2dfa0912c4 100644 --- a/packages/core/src/commands/selectAll.ts +++ b/packages/core/src/commands/selectAll.ts @@ -1,6 +1,6 @@ import { AllSelection } from '@tiptap/pm/state' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/selectNodeBackward.ts b/packages/core/src/commands/selectNodeBackward.ts index d087217215..7400c7133b 100644 --- a/packages/core/src/commands/selectNodeBackward.ts +++ b/packages/core/src/commands/selectNodeBackward.ts @@ -1,6 +1,6 @@ import { selectNodeBackward as originalSelectNodeBackward } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/selectNodeForward.ts b/packages/core/src/commands/selectNodeForward.ts index bfa019ad8e..c5dc6e1afd 100644 --- a/packages/core/src/commands/selectNodeForward.ts +++ b/packages/core/src/commands/selectNodeForward.ts @@ -1,6 +1,6 @@ import { selectNodeForward as originalSelectNodeForward } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/selectParentNode.ts b/packages/core/src/commands/selectParentNode.ts index f919e46ef6..5820eec67e 100644 --- a/packages/core/src/commands/selectParentNode.ts +++ b/packages/core/src/commands/selectParentNode.ts @@ -1,6 +1,6 @@ import { selectParentNode as originalSelectParentNode } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/selectTextblockEnd.ts b/packages/core/src/commands/selectTextblockEnd.ts index 8bcf81645e..6ec9cf025e 100644 --- a/packages/core/src/commands/selectTextblockEnd.ts +++ b/packages/core/src/commands/selectTextblockEnd.ts @@ -2,7 +2,7 @@ // TODO: add types to @types/prosemirror-commands import { selectTextblockEnd as originalSelectTextblockEnd } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/selectTextblockStart.ts b/packages/core/src/commands/selectTextblockStart.ts index 9eee4292a1..1d6ec79faa 100644 --- a/packages/core/src/commands/selectTextblockStart.ts +++ b/packages/core/src/commands/selectTextblockStart.ts @@ -2,7 +2,7 @@ // TODO: add types to @types/prosemirror-commands import { selectTextblockStart as originalSelectTextblockStart } from '@tiptap/pm/commands' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/setContent.ts b/packages/core/src/commands/setContent.ts index 3b593fea18..21e03e9250 100644 --- a/packages/core/src/commands/setContent.ts +++ b/packages/core/src/commands/setContent.ts @@ -1,7 +1,7 @@ -import { Fragment, Node as ProseMirrorNode, ParseOptions } from '@tiptap/pm/model' +import type { Fragment, Node as ProseMirrorNode, ParseOptions } from '@tiptap/pm/model' import { createDocument } from '../helpers/createDocument.js' -import { Content, RawCommands } from '../types.js' +import type { Content, RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/setMark.ts b/packages/core/src/commands/setMark.ts index 66e65aff45..c2b6c7b1bb 100644 --- a/packages/core/src/commands/setMark.ts +++ b/packages/core/src/commands/setMark.ts @@ -1,10 +1,10 @@ -import { MarkType, ResolvedPos } from '@tiptap/pm/model' -import { EditorState, Transaction } from '@tiptap/pm/state' +import type { MarkType, ResolvedPos } from '@tiptap/pm/model' +import type { EditorState, Transaction } from '@tiptap/pm/state' import { getMarkAttributes } from '../helpers/getMarkAttributes.js' import { getMarkType } from '../helpers/getMarkType.js' import { isTextSelection } from '../helpers/index.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/setMeta.ts b/packages/core/src/commands/setMeta.ts index d5e1add707..b1dad85410 100644 --- a/packages/core/src/commands/setMeta.ts +++ b/packages/core/src/commands/setMeta.ts @@ -1,6 +1,6 @@ import type { Plugin, PluginKey } from '@tiptap/pm/state' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/setNode.ts b/packages/core/src/commands/setNode.ts index e25a2c2dba..e66f7018ce 100644 --- a/packages/core/src/commands/setNode.ts +++ b/packages/core/src/commands/setNode.ts @@ -1,8 +1,8 @@ import { setBlockType } from '@tiptap/pm/commands' -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { getNodeType } from '../helpers/getNodeType.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/setNodeSelection.ts b/packages/core/src/commands/setNodeSelection.ts index 10d06bedd0..4c9ea30fbd 100644 --- a/packages/core/src/commands/setNodeSelection.ts +++ b/packages/core/src/commands/setNodeSelection.ts @@ -1,6 +1,6 @@ import { NodeSelection } from '@tiptap/pm/state' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' import { minMax } from '../utilities/minMax.js' declare module '@tiptap/core' { diff --git a/packages/core/src/commands/setTextSelection.ts b/packages/core/src/commands/setTextSelection.ts index 1801fdb2ad..ce0e9b441b 100644 --- a/packages/core/src/commands/setTextSelection.ts +++ b/packages/core/src/commands/setTextSelection.ts @@ -1,6 +1,6 @@ import { TextSelection } from '@tiptap/pm/state' -import { Range, RawCommands } from '../types.js' +import type { Range, RawCommands } from '../types.js' import { minMax } from '../utilities/minMax.js' declare module '@tiptap/core' { diff --git a/packages/core/src/commands/sinkListItem.ts b/packages/core/src/commands/sinkListItem.ts index 7c10ec92cf..4188deaf35 100644 --- a/packages/core/src/commands/sinkListItem.ts +++ b/packages/core/src/commands/sinkListItem.ts @@ -1,8 +1,8 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { sinkListItem as originalSinkListItem } from '@tiptap/pm/schema-list' import { getNodeType } from '../helpers/getNodeType.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/splitBlock.ts b/packages/core/src/commands/splitBlock.ts index dc08994978..f3b458d243 100644 --- a/packages/core/src/commands/splitBlock.ts +++ b/packages/core/src/commands/splitBlock.ts @@ -1,9 +1,10 @@ -import { EditorState, NodeSelection, TextSelection } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' +import { NodeSelection, TextSelection } from '@tiptap/pm/state' import { canSplit } from '@tiptap/pm/transform' import { defaultBlockAt } from '../helpers/defaultBlockAt.js' import { getSplittedAttributes } from '../helpers/getSplittedAttributes.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' function ensureMarks(state: EditorState, splittableMarks?: string[]) { const marks = state.storedMarks || (state.selection.$to.parentOffset && state.selection.$from.marks()) diff --git a/packages/core/src/commands/splitListItem.ts b/packages/core/src/commands/splitListItem.ts index 24b1badf45..5901b70581 100644 --- a/packages/core/src/commands/splitListItem.ts +++ b/packages/core/src/commands/splitListItem.ts @@ -1,10 +1,11 @@ -import { Fragment, Node as ProseMirrorNode, NodeType, Slice } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode, NodeType } from '@tiptap/pm/model' +import { Fragment, Slice } from '@tiptap/pm/model' import { TextSelection } from '@tiptap/pm/state' import { canSplit } from '@tiptap/pm/transform' import { getNodeType } from '../helpers/getNodeType.js' import { getSplittedAttributes } from '../helpers/getSplittedAttributes.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/toggleList.ts b/packages/core/src/commands/toggleList.ts index 43179d7601..d6b0c098c5 100644 --- a/packages/core/src/commands/toggleList.ts +++ b/packages/core/src/commands/toggleList.ts @@ -1,11 +1,11 @@ -import { NodeType } from '@tiptap/pm/model' -import { Transaction } from '@tiptap/pm/state' +import type { NodeType } from '@tiptap/pm/model' +import type { Transaction } from '@tiptap/pm/state' import { canJoin } from '@tiptap/pm/transform' import { findParentNode } from '../helpers/findParentNode.js' import { getNodeType } from '../helpers/getNodeType.js' import { isList } from '../helpers/isList.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' const joinListBackwards = (tr: Transaction, listType: NodeType): boolean => { const list = findParentNode(node => node.type === listType)(tr.selection) diff --git a/packages/core/src/commands/toggleMark.ts b/packages/core/src/commands/toggleMark.ts index c62f5e9b97..e83cf282f0 100644 --- a/packages/core/src/commands/toggleMark.ts +++ b/packages/core/src/commands/toggleMark.ts @@ -1,8 +1,8 @@ -import { MarkType } from '@tiptap/pm/model' +import type { MarkType } from '@tiptap/pm/model' import { getMarkType } from '../helpers/getMarkType.js' import { isMarkActive } from '../helpers/isMarkActive.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/toggleNode.ts b/packages/core/src/commands/toggleNode.ts index b01102940c..502ea82dfa 100644 --- a/packages/core/src/commands/toggleNode.ts +++ b/packages/core/src/commands/toggleNode.ts @@ -1,8 +1,8 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { getNodeType } from '../helpers/getNodeType.js' import { isNodeActive } from '../helpers/isNodeActive.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/toggleWrap.ts b/packages/core/src/commands/toggleWrap.ts index e61df34cec..442a6145bc 100644 --- a/packages/core/src/commands/toggleWrap.ts +++ b/packages/core/src/commands/toggleWrap.ts @@ -1,8 +1,8 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { getNodeType } from '../helpers/getNodeType.js' import { isNodeActive } from '../helpers/isNodeActive.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/undoInputRule.ts b/packages/core/src/commands/undoInputRule.ts index 199cf23262..2f5df4c4c1 100644 --- a/packages/core/src/commands/undoInputRule.ts +++ b/packages/core/src/commands/undoInputRule.ts @@ -1,4 +1,4 @@ -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/unsetAllMarks.ts b/packages/core/src/commands/unsetAllMarks.ts index f9590829ec..91a28962ed 100644 --- a/packages/core/src/commands/unsetAllMarks.ts +++ b/packages/core/src/commands/unsetAllMarks.ts @@ -1,4 +1,4 @@ -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/unsetMark.ts b/packages/core/src/commands/unsetMark.ts index 7eac54b593..dd2c009e15 100644 --- a/packages/core/src/commands/unsetMark.ts +++ b/packages/core/src/commands/unsetMark.ts @@ -1,8 +1,8 @@ -import { MarkType } from '@tiptap/pm/model' +import type { MarkType } from '@tiptap/pm/model' import { getMarkRange } from '../helpers/getMarkRange.js' import { getMarkType } from '../helpers/getMarkType.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/updateAttributes.ts b/packages/core/src/commands/updateAttributes.ts index 6b01279e10..7fe805758c 100644 --- a/packages/core/src/commands/updateAttributes.ts +++ b/packages/core/src/commands/updateAttributes.ts @@ -1,10 +1,10 @@ -import { Mark, MarkType, Node, NodeType } from '@tiptap/pm/model' -import { SelectionRange } from '@tiptap/pm/state' +import type { Mark, MarkType, Node, NodeType } from '@tiptap/pm/model' +import type { SelectionRange } from '@tiptap/pm/state' import { getMarkType } from '../helpers/getMarkType.js' import { getNodeType } from '../helpers/getNodeType.js' import { getSchemaTypeNameByName } from '../helpers/getSchemaTypeNameByName.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/wrapIn.ts b/packages/core/src/commands/wrapIn.ts index 0296e563b7..7e39b284ac 100644 --- a/packages/core/src/commands/wrapIn.ts +++ b/packages/core/src/commands/wrapIn.ts @@ -1,8 +1,8 @@ import { wrapIn as originalWrapIn } from '@tiptap/pm/commands' -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { getNodeType } from '../helpers/getNodeType.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/commands/wrapInList.ts b/packages/core/src/commands/wrapInList.ts index 471f7d9609..66eec3a8d5 100644 --- a/packages/core/src/commands/wrapInList.ts +++ b/packages/core/src/commands/wrapInList.ts @@ -1,8 +1,8 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' import { wrapInList as originalWrapInList } from '@tiptap/pm/schema-list' import { getNodeType } from '../helpers/getNodeType.js' -import { RawCommands } from '../types.js' +import type { RawCommands } from '../types.js' declare module '@tiptap/core' { interface Commands { diff --git a/packages/core/src/helpers/combineTransactionSteps.ts b/packages/core/src/helpers/combineTransactionSteps.ts index 790f1cae17..3fd1dd765b 100644 --- a/packages/core/src/helpers/combineTransactionSteps.ts +++ b/packages/core/src/helpers/combineTransactionSteps.ts @@ -1,5 +1,5 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { Transaction } from '@tiptap/pm/state' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Transaction } from '@tiptap/pm/state' import { Transform } from '@tiptap/pm/transform' /** diff --git a/packages/core/src/helpers/createChainableState.ts b/packages/core/src/helpers/createChainableState.ts index 6731e14261..6d549f390c 100644 --- a/packages/core/src/helpers/createChainableState.ts +++ b/packages/core/src/helpers/createChainableState.ts @@ -1,4 +1,4 @@ -import { EditorState, Transaction } from '@tiptap/pm/state' +import type { EditorState, Transaction } from '@tiptap/pm/state' /** * Takes a Transaction & Editor State and turns it into a chainable state object diff --git a/packages/core/src/helpers/createDocument.ts b/packages/core/src/helpers/createDocument.ts index fd4886a7f6..395f9f7560 100644 --- a/packages/core/src/helpers/createDocument.ts +++ b/packages/core/src/helpers/createDocument.ts @@ -1,6 +1,6 @@ -import { Fragment, Node as ProseMirrorNode, ParseOptions, Schema } from '@tiptap/pm/model' +import type { Fragment, Node as ProseMirrorNode, ParseOptions, Schema } from '@tiptap/pm/model' -import { Content } from '../types.js' +import type { Content } from '../types.js' import { createNodeFromContent } from './createNodeFromContent.js' /** diff --git a/packages/core/src/helpers/createNodeFromContent.ts b/packages/core/src/helpers/createNodeFromContent.ts index b51e00760c..2a6c5e1a20 100644 --- a/packages/core/src/helpers/createNodeFromContent.ts +++ b/packages/core/src/helpers/createNodeFromContent.ts @@ -1,6 +1,7 @@ -import { DOMParser, Fragment, Node as ProseMirrorNode, ParseOptions, Schema } from '@tiptap/pm/model' +import type { ParseOptions } from '@tiptap/pm/model' +import { DOMParser, Fragment, Node as ProseMirrorNode, Schema } from '@tiptap/pm/model' -import { Content } from '../types.js' +import type { Content } from '../types.js' import { elementFromString } from '../utilities/elementFromString.js' export type CreateNodeFromContentOptions = { diff --git a/packages/core/src/helpers/defaultBlockAt.ts b/packages/core/src/helpers/defaultBlockAt.ts index 25b28a0007..fbd00d926b 100644 --- a/packages/core/src/helpers/defaultBlockAt.ts +++ b/packages/core/src/helpers/defaultBlockAt.ts @@ -1,4 +1,4 @@ -import { ContentMatch, NodeType } from '@tiptap/pm/model' +import type { ContentMatch, NodeType } from '@tiptap/pm/model' /** * Gets the default block type at a given match diff --git a/packages/core/src/helpers/findChildren.ts b/packages/core/src/helpers/findChildren.ts index deb743c4ef..d2509a46a9 100644 --- a/packages/core/src/helpers/findChildren.ts +++ b/packages/core/src/helpers/findChildren.ts @@ -1,6 +1,6 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { NodeWithPos, Predicate } from '../types.js' +import type { NodeWithPos, Predicate } from '../types.js' /** * Find children inside a Prosemirror node that match a predicate. diff --git a/packages/core/src/helpers/findChildrenInRange.ts b/packages/core/src/helpers/findChildrenInRange.ts index 101b5eb1bd..e1e338ef4a 100644 --- a/packages/core/src/helpers/findChildrenInRange.ts +++ b/packages/core/src/helpers/findChildrenInRange.ts @@ -1,6 +1,6 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { NodeWithPos, Predicate, Range } from '../types.js' +import type { NodeWithPos, Predicate, Range } from '../types.js' /** * Same as `findChildren` but searches only within a `range`. diff --git a/packages/core/src/helpers/findParentNode.ts b/packages/core/src/helpers/findParentNode.ts index e9a17e65b1..2ccccd45ce 100644 --- a/packages/core/src/helpers/findParentNode.ts +++ b/packages/core/src/helpers/findParentNode.ts @@ -1,6 +1,6 @@ -import { Selection } from '@tiptap/pm/state' +import type { Selection } from '@tiptap/pm/state' -import { Predicate } from '../types.js' +import type { Predicate } from '../types.js' import { findParentNodeClosestToPos } from './findParentNodeClosestToPos.js' /** diff --git a/packages/core/src/helpers/findParentNodeClosestToPos.ts b/packages/core/src/helpers/findParentNodeClosestToPos.ts index 1eca94c5cf..f019667b14 100644 --- a/packages/core/src/helpers/findParentNodeClosestToPos.ts +++ b/packages/core/src/helpers/findParentNodeClosestToPos.ts @@ -1,6 +1,6 @@ -import { Node as ProseMirrorNode, ResolvedPos } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode, ResolvedPos } from '@tiptap/pm/model' -import { Predicate } from '../types.js' +import type { Predicate } from '../types.js' /** * Finds the closest parent node to a resolved position that matches a predicate. diff --git a/packages/core/src/helpers/flattenExtensions.ts b/packages/core/src/helpers/flattenExtensions.ts index 024e06daa0..26da590030 100644 --- a/packages/core/src/helpers/flattenExtensions.ts +++ b/packages/core/src/helpers/flattenExtensions.ts @@ -1,4 +1,4 @@ -import { AnyConfig, Extensions } from '../types.js' +import type { AnyConfig, Extensions } from '../types.js' import { getExtensionField } from './getExtensionField.js' /** diff --git a/packages/core/src/helpers/generateHTML.ts b/packages/core/src/helpers/generateHTML.ts index f4923cdd5b..2c421d91ec 100644 --- a/packages/core/src/helpers/generateHTML.ts +++ b/packages/core/src/helpers/generateHTML.ts @@ -1,6 +1,6 @@ import { Node } from '@tiptap/pm/model' -import { Extensions, JSONContent } from '../types.js' +import type { Extensions, JSONContent } from '../types.js' import { getHTMLFromFragment } from './getHTMLFromFragment.js' import { getSchema } from './getSchema.js' diff --git a/packages/core/src/helpers/generateJSON.ts b/packages/core/src/helpers/generateJSON.ts index 2ed2a81f89..d1ef80e6e0 100644 --- a/packages/core/src/helpers/generateJSON.ts +++ b/packages/core/src/helpers/generateJSON.ts @@ -1,6 +1,6 @@ import { DOMParser } from '@tiptap/pm/model' -import { Extensions } from '../types.js' +import type { Extensions } from '../types.js' import { elementFromString } from '../utilities/elementFromString.js' import { getSchema } from './getSchema.js' diff --git a/packages/core/src/helpers/generateText.ts b/packages/core/src/helpers/generateText.ts index bb07d50910..effac279ac 100644 --- a/packages/core/src/helpers/generateText.ts +++ b/packages/core/src/helpers/generateText.ts @@ -1,6 +1,6 @@ import { Node } from '@tiptap/pm/model' -import { Extensions, JSONContent, TextSerializer } from '../types.js' +import type { Extensions, JSONContent, TextSerializer } from '../types.js' import { getSchema } from './getSchema.js' import { getText } from './getText.js' import { getTextSerializersFromSchema } from './getTextSerializersFromSchema.js' diff --git a/packages/core/src/helpers/getAttributes.ts b/packages/core/src/helpers/getAttributes.ts index 184366049f..e3876ea053 100644 --- a/packages/core/src/helpers/getAttributes.ts +++ b/packages/core/src/helpers/getAttributes.ts @@ -1,5 +1,5 @@ -import { MarkType, NodeType } from '@tiptap/pm/model' -import { EditorState } from '@tiptap/pm/state' +import type { MarkType, NodeType } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' import { getMarkAttributes } from './getMarkAttributes.js' import { getNodeAttributes } from './getNodeAttributes.js' diff --git a/packages/core/src/helpers/getAttributesFromExtensions.ts b/packages/core/src/helpers/getAttributesFromExtensions.ts index 4b6638a30c..2526804ba9 100644 --- a/packages/core/src/helpers/getAttributesFromExtensions.ts +++ b/packages/core/src/helpers/getAttributesFromExtensions.ts @@ -1,5 +1,5 @@ import type { MarkConfig, NodeConfig } from '../index.js' -import { AnyConfig, Attribute, Attributes, ExtensionAttribute, Extensions } from '../types.js' +import type { AnyConfig, Attribute, Attributes, ExtensionAttribute, Extensions } from '../types.js' import { getExtensionField } from './getExtensionField.js' import { splitExtensions } from './splitExtensions.js' diff --git a/packages/core/src/helpers/getChangedRanges.ts b/packages/core/src/helpers/getChangedRanges.ts index 60f713fb8a..71a007f099 100644 --- a/packages/core/src/helpers/getChangedRanges.ts +++ b/packages/core/src/helpers/getChangedRanges.ts @@ -1,6 +1,6 @@ -import { Step, Transform } from '@tiptap/pm/transform' +import type { Step, Transform } from '@tiptap/pm/transform' -import { Range } from '../types.js' +import type { Range } from '../types.js' import { removeDuplicates } from '../utilities/removeDuplicates.js' export type ChangedRange = { diff --git a/packages/core/src/helpers/getDebugJSON.ts b/packages/core/src/helpers/getDebugJSON.ts index 530f3d456d..a114ab3d15 100644 --- a/packages/core/src/helpers/getDebugJSON.ts +++ b/packages/core/src/helpers/getDebugJSON.ts @@ -1,6 +1,6 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { JSONContent } from '../types.js' +import type { JSONContent } from '../types.js' interface DebugJSONContent extends JSONContent { from: number diff --git a/packages/core/src/helpers/getExtensionField.ts b/packages/core/src/helpers/getExtensionField.ts index 55c224810d..1406462041 100644 --- a/packages/core/src/helpers/getExtensionField.ts +++ b/packages/core/src/helpers/getExtensionField.ts @@ -1,7 +1,7 @@ -import { ExtensionConfig } from '../Extension.js' -import { MarkConfig } from '../Mark.js' -import { NodeConfig } from '../Node.js' -import { AnyExtension, MaybeThisParameterType, RemoveThis } from '../types.js' +import type { ExtensionConfig } from '../Extension.js' +import type { MarkConfig } from '../Mark.js' +import type { NodeConfig } from '../Node.js' +import type { AnyExtension, MaybeThisParameterType, RemoveThis } from '../types.js' /** * Returns a field from an extension diff --git a/packages/core/src/helpers/getHTMLFromFragment.ts b/packages/core/src/helpers/getHTMLFromFragment.ts index a33a305868..fa058f5684 100644 --- a/packages/core/src/helpers/getHTMLFromFragment.ts +++ b/packages/core/src/helpers/getHTMLFromFragment.ts @@ -1,4 +1,5 @@ -import { DOMSerializer, Fragment, Schema } from '@tiptap/pm/model' +import type { Fragment, Schema } from '@tiptap/pm/model' +import { DOMSerializer } from '@tiptap/pm/model' export function getHTMLFromFragment(fragment: Fragment, schema: Schema): string { const documentFragment = DOMSerializer.fromSchema(schema).serializeFragment(fragment) diff --git a/packages/core/src/helpers/getMarkAttributes.ts b/packages/core/src/helpers/getMarkAttributes.ts index 0ad372e832..a03249f4c7 100644 --- a/packages/core/src/helpers/getMarkAttributes.ts +++ b/packages/core/src/helpers/getMarkAttributes.ts @@ -1,5 +1,5 @@ -import { Mark, MarkType } from '@tiptap/pm/model' -import { EditorState } from '@tiptap/pm/state' +import type { Mark, MarkType } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' import { getMarkType } from './getMarkType.js' diff --git a/packages/core/src/helpers/getMarkRange.ts b/packages/core/src/helpers/getMarkRange.ts index 9233c063cf..5ad3019629 100644 --- a/packages/core/src/helpers/getMarkRange.ts +++ b/packages/core/src/helpers/getMarkRange.ts @@ -1,6 +1,6 @@ -import { Mark as ProseMirrorMark, MarkType, ResolvedPos } from '@tiptap/pm/model' +import type { Mark as ProseMirrorMark, MarkType, ResolvedPos } from '@tiptap/pm/model' -import { Range } from '../types.js' +import type { Range } from '../types.js' import { objectIncludes } from '../utilities/objectIncludes.js' function findMarkInSet( diff --git a/packages/core/src/helpers/getMarkType.ts b/packages/core/src/helpers/getMarkType.ts index 4e1ba69db4..bd4afc5074 100644 --- a/packages/core/src/helpers/getMarkType.ts +++ b/packages/core/src/helpers/getMarkType.ts @@ -1,4 +1,4 @@ -import { MarkType, Schema } from '@tiptap/pm/model' +import type { MarkType, Schema } from '@tiptap/pm/model' export function getMarkType(nameOrType: string | MarkType, schema: Schema): MarkType { if (typeof nameOrType === 'string') { diff --git a/packages/core/src/helpers/getMarksBetween.ts b/packages/core/src/helpers/getMarksBetween.ts index 99c85940a0..83fd10d6eb 100644 --- a/packages/core/src/helpers/getMarksBetween.ts +++ b/packages/core/src/helpers/getMarksBetween.ts @@ -1,6 +1,6 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { MarkRange } from '../types.js' +import type { MarkRange } from '../types.js' import { getMarkRange } from './getMarkRange.js' export function getMarksBetween(from: number, to: number, doc: ProseMirrorNode): MarkRange[] { diff --git a/packages/core/src/helpers/getNodeAtPosition.ts b/packages/core/src/helpers/getNodeAtPosition.ts index a6a2c62ca4..f7e996543b 100644 --- a/packages/core/src/helpers/getNodeAtPosition.ts +++ b/packages/core/src/helpers/getNodeAtPosition.ts @@ -1,5 +1,5 @@ -import { Node, NodeType } from '@tiptap/pm/model' -import { EditorState } from '@tiptap/pm/state' +import type { Node, NodeType } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' /** * Finds the first node of a given type or name in the current selection. diff --git a/packages/core/src/helpers/getNodeAttributes.ts b/packages/core/src/helpers/getNodeAttributes.ts index 6e368854b3..32e5510a14 100644 --- a/packages/core/src/helpers/getNodeAttributes.ts +++ b/packages/core/src/helpers/getNodeAttributes.ts @@ -1,5 +1,5 @@ -import { Node, NodeType } from '@tiptap/pm/model' -import { EditorState } from '@tiptap/pm/state' +import type { Node, NodeType } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' import { getNodeType } from './getNodeType.js' diff --git a/packages/core/src/helpers/getNodeType.ts b/packages/core/src/helpers/getNodeType.ts index 51e2240613..1bc83cd2b5 100644 --- a/packages/core/src/helpers/getNodeType.ts +++ b/packages/core/src/helpers/getNodeType.ts @@ -1,4 +1,4 @@ -import { NodeType, Schema } from '@tiptap/pm/model' +import type { NodeType, Schema } from '@tiptap/pm/model' export function getNodeType(nameOrType: string | NodeType, schema: Schema): NodeType { if (typeof nameOrType === 'string') { diff --git a/packages/core/src/helpers/getRenderedAttributes.ts b/packages/core/src/helpers/getRenderedAttributes.ts index add1aff507..af272853d8 100644 --- a/packages/core/src/helpers/getRenderedAttributes.ts +++ b/packages/core/src/helpers/getRenderedAttributes.ts @@ -1,6 +1,6 @@ -import { Mark, Node } from '@tiptap/pm/model' +import type { Mark, Node } from '@tiptap/pm/model' -import { ExtensionAttribute } from '../types.js' +import type { ExtensionAttribute } from '../types.js' import { mergeAttributes } from '../utilities/mergeAttributes.js' export function getRenderedAttributes( diff --git a/packages/core/src/helpers/getSchema.ts b/packages/core/src/helpers/getSchema.ts index 9f52423b5d..51898b0bd2 100644 --- a/packages/core/src/helpers/getSchema.ts +++ b/packages/core/src/helpers/getSchema.ts @@ -1,7 +1,7 @@ -import { Schema } from '@tiptap/pm/model' +import type { Schema } from '@tiptap/pm/model' -import { Editor } from '../Editor.js' -import { Extensions } from '../types.js' +import type { Editor } from '../Editor.js' +import type { Extensions } from '../types.js' import { getSchemaByResolvedExtensions } from './getSchemaByResolvedExtensions.js' import { resolveExtensions } from './resolveExtensions.js' diff --git a/packages/core/src/helpers/getSchemaByResolvedExtensions.ts b/packages/core/src/helpers/getSchemaByResolvedExtensions.ts index 4b86a822a7..9bb856da5c 100644 --- a/packages/core/src/helpers/getSchemaByResolvedExtensions.ts +++ b/packages/core/src/helpers/getSchemaByResolvedExtensions.ts @@ -1,7 +1,8 @@ -import { MarkSpec, NodeSpec, Schema, TagParseRule } from '@tiptap/pm/model' +import type { MarkSpec, NodeSpec, TagParseRule } from '@tiptap/pm/model' +import { Schema } from '@tiptap/pm/model' import type { Editor, MarkConfig, NodeConfig } from '../index.js' -import { AnyConfig, Extensions } from '../types.js' +import type { AnyConfig, Extensions } from '../types.js' import { callOrReturn } from '../utilities/callOrReturn.js' import { isEmptyObject } from '../utilities/isEmptyObject.js' import { getAttributesFromExtensions } from './getAttributesFromExtensions.js' diff --git a/packages/core/src/helpers/getSchemaTypeByName.ts b/packages/core/src/helpers/getSchemaTypeByName.ts index fd0fc41446..f5e1b2b2c1 100644 --- a/packages/core/src/helpers/getSchemaTypeByName.ts +++ b/packages/core/src/helpers/getSchemaTypeByName.ts @@ -1,4 +1,4 @@ -import { MarkType, NodeType, Schema } from '@tiptap/pm/model' +import type { MarkType, NodeType, Schema } from '@tiptap/pm/model' /** * Tries to get a node or mark type by its name. diff --git a/packages/core/src/helpers/getSchemaTypeNameByName.ts b/packages/core/src/helpers/getSchemaTypeNameByName.ts index c489196033..63cce15897 100644 --- a/packages/core/src/helpers/getSchemaTypeNameByName.ts +++ b/packages/core/src/helpers/getSchemaTypeNameByName.ts @@ -1,4 +1,4 @@ -import { Schema } from '@tiptap/pm/model' +import type { Schema } from '@tiptap/pm/model' /** * Get the type of a schema item by its name. diff --git a/packages/core/src/helpers/getSplittedAttributes.ts b/packages/core/src/helpers/getSplittedAttributes.ts index ff882c9e42..4f194a9b27 100644 --- a/packages/core/src/helpers/getSplittedAttributes.ts +++ b/packages/core/src/helpers/getSplittedAttributes.ts @@ -1,4 +1,4 @@ -import { ExtensionAttribute } from '../types.js' +import type { ExtensionAttribute } from '../types.js' /** * Return attributes of an extension that should be splitted by keepOnSplit flag diff --git a/packages/core/src/helpers/getText.ts b/packages/core/src/helpers/getText.ts index c6d745bb42..553f67077f 100644 --- a/packages/core/src/helpers/getText.ts +++ b/packages/core/src/helpers/getText.ts @@ -1,6 +1,6 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { TextSerializer } from '../types.js' +import type { TextSerializer } from '../types.js' import { getTextBetween } from './getTextBetween.js' /** diff --git a/packages/core/src/helpers/getTextBetween.ts b/packages/core/src/helpers/getTextBetween.ts index b458bbe922..212fa444b2 100644 --- a/packages/core/src/helpers/getTextBetween.ts +++ b/packages/core/src/helpers/getTextBetween.ts @@ -1,6 +1,6 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { Range, TextSerializer } from '../types.js' +import type { Range, TextSerializer } from '../types.js' /** * Gets the text between two positions in a Prosemirror node diff --git a/packages/core/src/helpers/getTextContentFromNodes.ts b/packages/core/src/helpers/getTextContentFromNodes.ts index 7e4f926aeb..36e29098a4 100644 --- a/packages/core/src/helpers/getTextContentFromNodes.ts +++ b/packages/core/src/helpers/getTextContentFromNodes.ts @@ -1,4 +1,4 @@ -import { ResolvedPos } from '@tiptap/pm/model' +import type { ResolvedPos } from '@tiptap/pm/model' /** * Returns the text content of a resolved prosemirror position diff --git a/packages/core/src/helpers/getTextSerializersFromSchema.ts b/packages/core/src/helpers/getTextSerializersFromSchema.ts index df756fb284..fa997246e9 100644 --- a/packages/core/src/helpers/getTextSerializersFromSchema.ts +++ b/packages/core/src/helpers/getTextSerializersFromSchema.ts @@ -1,6 +1,6 @@ -import { Schema } from '@tiptap/pm/model' +import type { Schema } from '@tiptap/pm/model' -import { TextSerializer } from '../types.js' +import type { TextSerializer } from '../types.js' /** * Find text serializers `toText` in a Prosemirror schema diff --git a/packages/core/src/helpers/injectExtensionAttributesToParseRule.ts b/packages/core/src/helpers/injectExtensionAttributesToParseRule.ts index 5dcda8a4fe..32b8097974 100644 --- a/packages/core/src/helpers/injectExtensionAttributesToParseRule.ts +++ b/packages/core/src/helpers/injectExtensionAttributesToParseRule.ts @@ -1,6 +1,6 @@ -import { ParseRule } from '@tiptap/pm/model' +import type { ParseRule } from '@tiptap/pm/model' -import { ExtensionAttribute } from '../types.js' +import type { ExtensionAttribute } from '../types.js' import { fromString } from '../utilities/fromString.js' /** diff --git a/packages/core/src/helpers/isActive.ts b/packages/core/src/helpers/isActive.ts index d033825c39..66c5e785fc 100644 --- a/packages/core/src/helpers/isActive.ts +++ b/packages/core/src/helpers/isActive.ts @@ -1,4 +1,4 @@ -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' import { getSchemaTypeNameByName } from './getSchemaTypeNameByName.js' import { isMarkActive } from './isMarkActive.js' diff --git a/packages/core/src/helpers/isAtEndOfNode.ts b/packages/core/src/helpers/isAtEndOfNode.ts index 0581ec024f..35efe32191 100644 --- a/packages/core/src/helpers/isAtEndOfNode.ts +++ b/packages/core/src/helpers/isAtEndOfNode.ts @@ -1,4 +1,4 @@ -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' import { findParentNode } from './findParentNode.js' diff --git a/packages/core/src/helpers/isAtStartOfNode.ts b/packages/core/src/helpers/isAtStartOfNode.ts index 92d0c4fb70..a5b21cab70 100644 --- a/packages/core/src/helpers/isAtStartOfNode.ts +++ b/packages/core/src/helpers/isAtStartOfNode.ts @@ -1,4 +1,4 @@ -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' export const isAtStartOfNode = (state: EditorState) => { const { $from, $to } = state.selection diff --git a/packages/core/src/helpers/isExtensionRulesEnabled.ts b/packages/core/src/helpers/isExtensionRulesEnabled.ts index bd0245dceb..c9d91ea430 100644 --- a/packages/core/src/helpers/isExtensionRulesEnabled.ts +++ b/packages/core/src/helpers/isExtensionRulesEnabled.ts @@ -1,4 +1,4 @@ -import { AnyExtension, EnableRules } from '../types.js' +import type { AnyExtension, EnableRules } from '../types.js' export function isExtensionRulesEnabled(extension: AnyExtension, enabled: EnableRules): boolean { if (Array.isArray(enabled)) { diff --git a/packages/core/src/helpers/isList.ts b/packages/core/src/helpers/isList.ts index 9d093025ff..40088bdc71 100644 --- a/packages/core/src/helpers/isList.ts +++ b/packages/core/src/helpers/isList.ts @@ -1,6 +1,6 @@ import { getExtensionField } from '../helpers/getExtensionField.js' import type { NodeConfig } from '../index.js' -import { Extensions } from '../types.js' +import type { Extensions } from '../types.js' import { callOrReturn } from '../utilities/callOrReturn.js' import { splitExtensions } from './splitExtensions.js' diff --git a/packages/core/src/helpers/isMarkActive.ts b/packages/core/src/helpers/isMarkActive.ts index 7caefa28f9..2bcb4f5fa3 100644 --- a/packages/core/src/helpers/isMarkActive.ts +++ b/packages/core/src/helpers/isMarkActive.ts @@ -1,7 +1,7 @@ -import { MarkType } from '@tiptap/pm/model' -import { EditorState } from '@tiptap/pm/state' +import type { MarkType } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' -import { MarkRange } from '../types.js' +import type { MarkRange } from '../types.js' import { objectIncludes } from '../utilities/objectIncludes.js' import { getMarkType } from './getMarkType.js' diff --git a/packages/core/src/helpers/isNodeActive.ts b/packages/core/src/helpers/isNodeActive.ts index 6562c8c54d..8e21eb627a 100644 --- a/packages/core/src/helpers/isNodeActive.ts +++ b/packages/core/src/helpers/isNodeActive.ts @@ -1,7 +1,7 @@ -import { NodeType } from '@tiptap/pm/model' -import { EditorState } from '@tiptap/pm/state' +import type { NodeType } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' -import { NodeRange } from '../types.js' +import type { NodeRange } from '../types.js' import { objectIncludes } from '../utilities/objectIncludes.js' import { getNodeType } from './getNodeType.js' diff --git a/packages/core/src/helpers/isNodeEmpty.ts b/packages/core/src/helpers/isNodeEmpty.ts index 9b9cb7e04f..88f9bcda5f 100644 --- a/packages/core/src/helpers/isNodeEmpty.ts +++ b/packages/core/src/helpers/isNodeEmpty.ts @@ -1,4 +1,4 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' /** * Returns true if the given prosemirror node is empty. diff --git a/packages/core/src/helpers/posToDOMRect.ts b/packages/core/src/helpers/posToDOMRect.ts index adf0bc2e9f..5af0ce91a7 100644 --- a/packages/core/src/helpers/posToDOMRect.ts +++ b/packages/core/src/helpers/posToDOMRect.ts @@ -1,4 +1,4 @@ -import { EditorView } from '@tiptap/pm/view' +import type { EditorView } from '@tiptap/pm/view' import { minMax } from '../utilities/minMax.js' diff --git a/packages/core/src/helpers/resolveExtensions.ts b/packages/core/src/helpers/resolveExtensions.ts index bb1eccaf5a..99d9e7a155 100644 --- a/packages/core/src/helpers/resolveExtensions.ts +++ b/packages/core/src/helpers/resolveExtensions.ts @@ -1,4 +1,4 @@ -import { Extensions } from '../types.js' +import type { Extensions } from '../types.js' import { findDuplicates } from '../utilities/findDuplicates.js' import { flattenExtensions } from './flattenExtensions.js' import { sortExtensions } from './sortExtensions.js' diff --git a/packages/core/src/helpers/resolveFocusPosition.ts b/packages/core/src/helpers/resolveFocusPosition.ts index 76a62a6d6f..3411a3ecbf 100644 --- a/packages/core/src/helpers/resolveFocusPosition.ts +++ b/packages/core/src/helpers/resolveFocusPosition.ts @@ -1,7 +1,7 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' import { Selection, TextSelection } from '@tiptap/pm/state' -import { FocusPosition } from '../types.js' +import type { FocusPosition } from '../types.js' import { minMax } from '../utilities/minMax.js' export function resolveFocusPosition(doc: ProseMirrorNode, position: FocusPosition = null): Selection | null { diff --git a/packages/core/src/helpers/selectionToInsertionEnd.ts b/packages/core/src/helpers/selectionToInsertionEnd.ts index 09ac7beef9..0ad416a2d0 100644 --- a/packages/core/src/helpers/selectionToInsertionEnd.ts +++ b/packages/core/src/helpers/selectionToInsertionEnd.ts @@ -1,4 +1,5 @@ -import { Selection, Transaction } from '@tiptap/pm/state' +import type { Transaction } from '@tiptap/pm/state' +import { Selection } from '@tiptap/pm/state' import { ReplaceAroundStep, ReplaceStep } from '@tiptap/pm/transform' // source: https://github.com/ProseMirror/prosemirror-state/blob/master/src/selection.js#L466 diff --git a/packages/core/src/helpers/sortExtensions.ts b/packages/core/src/helpers/sortExtensions.ts index a5baa106a9..99fa41f3f2 100644 --- a/packages/core/src/helpers/sortExtensions.ts +++ b/packages/core/src/helpers/sortExtensions.ts @@ -1,4 +1,4 @@ -import { AnyConfig, Extensions } from '../types.js' +import type { AnyConfig, Extensions } from '../types.js' import { getExtensionField } from './getExtensionField.js' /** diff --git a/packages/core/src/helpers/splitExtensions.ts b/packages/core/src/helpers/splitExtensions.ts index fbd9b13671..4cfa155f46 100644 --- a/packages/core/src/helpers/splitExtensions.ts +++ b/packages/core/src/helpers/splitExtensions.ts @@ -1,7 +1,7 @@ -import { Extension } from '../Extension.js' -import { Mark } from '../Mark.js' -import { Node } from '../Node.js' -import { Extensions } from '../types.js' +import type { Extension } from '../Extension.js' +import type { Mark } from '../Mark.js' +import type { Node } from '../Node.js' +import type { Extensions } from '../types.js' export function splitExtensions(extensions: Extensions) { const baseExtensions = extensions.filter(extension => extension.type === 'extension') as Extension[] diff --git a/packages/core/src/inputRules/markInputRule.ts b/packages/core/src/inputRules/markInputRule.ts index 5a03a24579..994cafdd82 100644 --- a/packages/core/src/inputRules/markInputRule.ts +++ b/packages/core/src/inputRules/markInputRule.ts @@ -1,8 +1,9 @@ -import { MarkType } from '@tiptap/pm/model' +import type { MarkType } from '@tiptap/pm/model' import { getMarksBetween } from '../helpers/getMarksBetween.js' -import { InputRule, InputRuleFinder } from '../InputRule.js' -import { ExtendedRegExpMatchArray } from '../types.js' +import type { InputRuleFinder } from '../InputRule.js' +import { InputRule } from '../InputRule.js' +import type { ExtendedRegExpMatchArray } from '../types.js' import { callOrReturn } from '../utilities/callOrReturn.js' /** diff --git a/packages/core/src/inputRules/nodeInputRule.ts b/packages/core/src/inputRules/nodeInputRule.ts index 49e0f25091..127e7af852 100644 --- a/packages/core/src/inputRules/nodeInputRule.ts +++ b/packages/core/src/inputRules/nodeInputRule.ts @@ -1,7 +1,8 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' -import { InputRule, InputRuleFinder } from '../InputRule.js' -import { ExtendedRegExpMatchArray } from '../types.js' +import type { InputRuleFinder } from '../InputRule.js' +import { InputRule } from '../InputRule.js' +import type { ExtendedRegExpMatchArray } from '../types.js' import { callOrReturn } from '../utilities/callOrReturn.js' /** diff --git a/packages/core/src/inputRules/textInputRule.ts b/packages/core/src/inputRules/textInputRule.ts index d76b9f0896..f62ccd0255 100644 --- a/packages/core/src/inputRules/textInputRule.ts +++ b/packages/core/src/inputRules/textInputRule.ts @@ -1,4 +1,5 @@ -import { InputRule, InputRuleFinder } from '../InputRule.js' +import type { InputRuleFinder } from '../InputRule.js' +import { InputRule } from '../InputRule.js' /** * Build an input rule that replaces text when the diff --git a/packages/core/src/inputRules/textblockTypeInputRule.ts b/packages/core/src/inputRules/textblockTypeInputRule.ts index ddc491f0ed..22a6249b02 100644 --- a/packages/core/src/inputRules/textblockTypeInputRule.ts +++ b/packages/core/src/inputRules/textblockTypeInputRule.ts @@ -1,7 +1,8 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' -import { InputRule, InputRuleFinder } from '../InputRule.js' -import { ExtendedRegExpMatchArray } from '../types.js' +import type { InputRuleFinder } from '../InputRule.js' +import { InputRule } from '../InputRule.js' +import type { ExtendedRegExpMatchArray } from '../types.js' import { callOrReturn } from '../utilities/callOrReturn.js' /** diff --git a/packages/core/src/inputRules/wrappingInputRule.ts b/packages/core/src/inputRules/wrappingInputRule.ts index e9e473f69f..c5bcc973c9 100644 --- a/packages/core/src/inputRules/wrappingInputRule.ts +++ b/packages/core/src/inputRules/wrappingInputRule.ts @@ -1,9 +1,10 @@ -import { Node as ProseMirrorNode, NodeType } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode, NodeType } from '@tiptap/pm/model' import { canJoin, findWrapping } from '@tiptap/pm/transform' -import { Editor } from '../Editor.js' -import { InputRule, InputRuleFinder } from '../InputRule.js' -import { ExtendedRegExpMatchArray } from '../types.js' +import type { Editor } from '../Editor.js' +import type { InputRuleFinder } from '../InputRule.js' +import { InputRule } from '../InputRule.js' +import type { ExtendedRegExpMatchArray } from '../types.js' import { callOrReturn } from '../utilities/callOrReturn.js' /** diff --git a/packages/core/src/pasteRules/markPasteRule.ts b/packages/core/src/pasteRules/markPasteRule.ts index 5da06244c4..038dade813 100644 --- a/packages/core/src/pasteRules/markPasteRule.ts +++ b/packages/core/src/pasteRules/markPasteRule.ts @@ -1,8 +1,9 @@ -import { MarkType } from '@tiptap/pm/model' +import type { MarkType } from '@tiptap/pm/model' import { getMarksBetween } from '../helpers/getMarksBetween.js' -import { PasteRule, PasteRuleFinder } from '../PasteRule.js' -import { ExtendedRegExpMatchArray } from '../types.js' +import type { PasteRuleFinder } from '../PasteRule.js' +import { PasteRule } from '../PasteRule.js' +import type { ExtendedRegExpMatchArray } from '../types.js' import { callOrReturn } from '../utilities/callOrReturn.js' /** diff --git a/packages/core/src/pasteRules/nodePasteRule.ts b/packages/core/src/pasteRules/nodePasteRule.ts index c4dd790434..b94b03f475 100644 --- a/packages/core/src/pasteRules/nodePasteRule.ts +++ b/packages/core/src/pasteRules/nodePasteRule.ts @@ -1,7 +1,8 @@ -import { NodeType } from '@tiptap/pm/model' +import type { NodeType } from '@tiptap/pm/model' -import { PasteRule, PasteRuleFinder } from '../PasteRule.js' -import { ExtendedRegExpMatchArray, JSONContent } from '../types.js' +import type { PasteRuleFinder } from '../PasteRule.js' +import { PasteRule } from '../PasteRule.js' +import type { ExtendedRegExpMatchArray, JSONContent } from '../types.js' import { callOrReturn } from '../utilities/index.js' /** diff --git a/packages/core/src/pasteRules/textPasteRule.ts b/packages/core/src/pasteRules/textPasteRule.ts index 235a4e4654..82faaa06a5 100644 --- a/packages/core/src/pasteRules/textPasteRule.ts +++ b/packages/core/src/pasteRules/textPasteRule.ts @@ -1,4 +1,5 @@ -import { PasteRule, PasteRuleFinder } from '../PasteRule.js' +import type { PasteRuleFinder } from '../PasteRule.js' +import { PasteRule } from '../PasteRule.js' /** * Build an paste rule that replaces text when the diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 2ef6738245..cf3cf83d8e 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -1,7 +1,7 @@ -import { Mark as ProseMirrorMark, Node as ProseMirrorNode, ParseOptions, Slice } from '@tiptap/pm/model' -import { EditorState, Transaction } from '@tiptap/pm/state' -import { Mappable, Transform } from '@tiptap/pm/transform' -import { +import type { Mark as ProseMirrorMark, Node as ProseMirrorNode, ParseOptions, Slice } from '@tiptap/pm/model' +import type { EditorState, Transaction } from '@tiptap/pm/state' +import type { Mappable, Transform } from '@tiptap/pm/transform' +import type { Decoration, DecorationAttrs, EditorProps, @@ -13,11 +13,11 @@ import { ViewMutationRecord, } from '@tiptap/pm/view' -import { Editor } from './Editor.js' -import { Extension } from './Extension.js' -import { Commands, ExtensionConfig, MarkConfig, NodeConfig } from './index.js' -import { Mark } from './Mark.js' -import { Node } from './Node.js' +import type { Editor } from './Editor.js' +import type { Extension } from './Extension.js' +import type { Commands, ExtensionConfig, MarkConfig, NodeConfig } from './index.js' +import type { Mark } from './Mark.js' +import type { Node } from './Node.js' export type AnyConfig = ExtensionConfig | NodeConfig | MarkConfig export type AnyExtension = Extension | Node | Mark diff --git a/packages/core/src/utilities/callOrReturn.ts b/packages/core/src/utilities/callOrReturn.ts index 53688324ae..2fa0e43078 100644 --- a/packages/core/src/utilities/callOrReturn.ts +++ b/packages/core/src/utilities/callOrReturn.ts @@ -1,4 +1,4 @@ -import { MaybeReturnType } from '../types.js' +import type { MaybeReturnType } from '../types.js' import { isFunction } from './isFunction.js' /** diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index 8726243db3..b426495010 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -10,9 +10,11 @@ import { shift, size, } from '@floating-ui/dom' -import { Editor, isTextSelection, posToDOMRect } from '@tiptap/core' -import { EditorState, Plugin, PluginKey, PluginView } from '@tiptap/pm/state' -import { EditorView } from '@tiptap/pm/view' +import type { Editor } from '@tiptap/core' +import { isTextSelection, posToDOMRect } from '@tiptap/core' +import type { EditorState, PluginView } from '@tiptap/pm/state' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import type { EditorView } from '@tiptap/pm/view' export interface BubbleMenuPluginProps { /** diff --git a/packages/extension-bubble-menu/src/bubble-menu.ts b/packages/extension-bubble-menu/src/bubble-menu.ts index 81fb065826..fcd00e97a9 100644 --- a/packages/extension-bubble-menu/src/bubble-menu.ts +++ b/packages/extension-bubble-menu/src/bubble-menu.ts @@ -1,6 +1,7 @@ import { Extension } from '@tiptap/core' -import { BubbleMenuPlugin, BubbleMenuPluginProps } from './bubble-menu-plugin.js' +import type { BubbleMenuPluginProps } from './bubble-menu-plugin.js' +import { BubbleMenuPlugin } from './bubble-menu-plugin.js' export type BubbleMenuOptions = Omit & { /** diff --git a/packages/extension-bullet-list/src/index.ts b/packages/extension-bullet-list/src/index.ts index fb06f7cdf6..78a1aa3652 100644 --- a/packages/extension-bullet-list/src/index.ts +++ b/packages/extension-bullet-list/src/index.ts @@ -1,5 +1,6 @@ import { BulletList } from '@tiptap/extension-list' -export { BulletList, BulletListOptions } from '@tiptap/extension-list' +export type { BulletListOptions } from '@tiptap/extension-list' +export { BulletList } from '@tiptap/extension-list' export default BulletList diff --git a/packages/extension-character-count/src/index.ts b/packages/extension-character-count/src/index.ts index 664b113ef7..af9fb4a020 100644 --- a/packages/extension-character-count/src/index.ts +++ b/packages/extension-character-count/src/index.ts @@ -1,5 +1,6 @@ import { CharacterCount } from '@tiptap/extensions' -export { CharacterCount, CharacterCountOptions } from '@tiptap/extensions' +export type { CharacterCountOptions } from '@tiptap/extensions' +export { CharacterCount } from '@tiptap/extensions' export default CharacterCount diff --git a/packages/extension-code-block-lowlight/src/code-block-lowlight.ts b/packages/extension-code-block-lowlight/src/code-block-lowlight.ts index f28bb4655f..da072ad307 100644 --- a/packages/extension-code-block-lowlight/src/code-block-lowlight.ts +++ b/packages/extension-code-block-lowlight/src/code-block-lowlight.ts @@ -1,4 +1,5 @@ -import CodeBlock, { CodeBlockOptions } from '@tiptap/extension-code-block' +import type { CodeBlockOptions } from '@tiptap/extension-code-block' +import CodeBlock from '@tiptap/extension-code-block' import { LowlightPlugin } from './lowlight-plugin.js' diff --git a/packages/extension-code-block-lowlight/src/lowlight-plugin.ts b/packages/extension-code-block-lowlight/src/lowlight-plugin.ts index 206ecaeb86..7f1a71de43 100644 --- a/packages/extension-code-block-lowlight/src/lowlight-plugin.ts +++ b/packages/extension-code-block-lowlight/src/lowlight-plugin.ts @@ -1,5 +1,5 @@ import { findChildren } from '@tiptap/core' -import { Node as ProsemirrorNode } from '@tiptap/pm/model' +import type { Node as ProsemirrorNode } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' import { Decoration, DecorationSet } from '@tiptap/pm/view' // @ts-ignore diff --git a/packages/extension-collaboration-cursor/src/collaboration-cursor.ts b/packages/extension-collaboration-cursor/src/collaboration-cursor.ts index 17edf70f6b..96d8dbaace 100644 --- a/packages/extension-collaboration-cursor/src/collaboration-cursor.ts +++ b/packages/extension-collaboration-cursor/src/collaboration-cursor.ts @@ -1,5 +1,5 @@ import { Extension } from '@tiptap/core' -import { DecorationAttrs } from '@tiptap/pm/view' +import type { DecorationAttrs } from '@tiptap/pm/view' import { defaultSelectionBuilder, yCursorPlugin } from '@tiptap/y-tiptap' type CollaborationCursorStorage = { diff --git a/packages/extension-collaboration/src/collaboration.ts b/packages/extension-collaboration/src/collaboration.ts index 8e2a1b18b9..84c64d4bbb 100644 --- a/packages/extension-collaboration/src/collaboration.ts +++ b/packages/extension-collaboration/src/collaboration.ts @@ -1,8 +1,8 @@ import { Extension } from '@tiptap/core' import { Plugin, PluginKey } from '@tiptap/pm/state' -import { EditorView } from '@tiptap/pm/view' +import type { EditorView } from '@tiptap/pm/view' import { redo, undo, ySyncPlugin, yUndoPlugin, yUndoPluginKey, yXmlFragmentToProsemirrorJSON } from '@tiptap/y-tiptap' -import { Doc, UndoManager, XmlFragment } from 'yjs' +import type { Doc, UndoManager, XmlFragment } from 'yjs' type YSyncOpts = Parameters[1] type YUndoOpts = Parameters[0] diff --git a/packages/extension-collaboration/src/helpers/isChangeOrigin.ts b/packages/extension-collaboration/src/helpers/isChangeOrigin.ts index ad9945ee95..787c7a543f 100644 --- a/packages/extension-collaboration/src/helpers/isChangeOrigin.ts +++ b/packages/extension-collaboration/src/helpers/isChangeOrigin.ts @@ -1,4 +1,4 @@ -import { Transaction } from '@tiptap/pm/state' +import type { Transaction } from '@tiptap/pm/state' import { ySyncPluginKey } from '@tiptap/y-tiptap' /** diff --git a/packages/extension-color/src/index.ts b/packages/extension-color/src/index.ts index 7c3edb221a..7551fe2a59 100644 --- a/packages/extension-color/src/index.ts +++ b/packages/extension-color/src/index.ts @@ -1,4 +1,5 @@ -import { Color, ColorOptions } from '@tiptap/extension-text-style' +import type { ColorOptions } from '@tiptap/extension-text-style' +import { Color } from '@tiptap/extension-text-style' export { Color, ColorOptions } diff --git a/packages/extension-dropcursor/src/index.ts b/packages/extension-dropcursor/src/index.ts index d60e418230..79c6deba66 100644 --- a/packages/extension-dropcursor/src/index.ts +++ b/packages/extension-dropcursor/src/index.ts @@ -1,5 +1,6 @@ import { Dropcursor } from '@tiptap/extensions' -export { Dropcursor, DropcursorOptions } from '@tiptap/extensions' +export type { DropcursorOptions } from '@tiptap/extensions' +export { Dropcursor } from '@tiptap/extensions' export default Dropcursor diff --git a/packages/extension-floating-menu/src/floating-menu-plugin.ts b/packages/extension-floating-menu/src/floating-menu-plugin.ts index 244b53d890..92a3f591c8 100644 --- a/packages/extension-floating-menu/src/floating-menu-plugin.ts +++ b/packages/extension-floating-menu/src/floating-menu-plugin.ts @@ -10,10 +10,12 @@ import { shift, size, } from '@floating-ui/dom' -import { Editor, getText, getTextSerializersFromSchema, posToDOMRect } from '@tiptap/core' +import type { Editor } from '@tiptap/core' +import { getText, getTextSerializersFromSchema, posToDOMRect } from '@tiptap/core' import type { Node as ProsemirrorNode } from '@tiptap/pm/model' -import { EditorState, Plugin, PluginKey } from '@tiptap/pm/state' -import { EditorView } from '@tiptap/pm/view' +import type { EditorState } from '@tiptap/pm/state' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import type { EditorView } from '@tiptap/pm/view' export interface FloatingMenuPluginProps { /** diff --git a/packages/extension-floating-menu/src/floating-menu.ts b/packages/extension-floating-menu/src/floating-menu.ts index 3b7293c45f..267d33cab3 100644 --- a/packages/extension-floating-menu/src/floating-menu.ts +++ b/packages/extension-floating-menu/src/floating-menu.ts @@ -1,6 +1,7 @@ import { Extension } from '@tiptap/core' -import { FloatingMenuPlugin, FloatingMenuPluginProps } from './floating-menu-plugin.js' +import type { FloatingMenuPluginProps } from './floating-menu-plugin.js' +import { FloatingMenuPlugin } from './floating-menu-plugin.js' export type FloatingMenuOptions = Omit & { /** diff --git a/packages/extension-focus/src/index.ts b/packages/extension-focus/src/index.ts index af5f1b9d27..73bd9f0d3c 100644 --- a/packages/extension-focus/src/index.ts +++ b/packages/extension-focus/src/index.ts @@ -1,5 +1,6 @@ import { Focus } from '@tiptap/extensions' -export { Focus, FocusOptions } from '@tiptap/extensions' +export type { FocusOptions } from '@tiptap/extensions' +export { Focus } from '@tiptap/extensions' export default Focus diff --git a/packages/extension-font-family/src/index.ts b/packages/extension-font-family/src/index.ts index 1bc9313f9e..89558e7f03 100644 --- a/packages/extension-font-family/src/index.ts +++ b/packages/extension-font-family/src/index.ts @@ -1,5 +1,6 @@ -import { FontFamily, FontFamilyOptions } from '@tiptap/extension-text-style' +import { FontFamily } from '@tiptap/extension-text-style' -export { FontFamily, FontFamilyOptions } +export type { FontFamilyOptions } from '@tiptap/extension-text-style' +export { FontFamily } from '@tiptap/extension-text-style' export default FontFamily diff --git a/packages/extension-history/src/index.ts b/packages/extension-history/src/index.ts index 265d9e89eb..a59b68eec5 100644 --- a/packages/extension-history/src/index.ts +++ b/packages/extension-history/src/index.ts @@ -1,5 +1,6 @@ import { History } from '@tiptap/extensions' -export { History, HistoryOptions } from '@tiptap/extensions' +export type { HistoryOptions } from '@tiptap/extensions' +export { History } from '@tiptap/extensions' export default History diff --git a/packages/extension-link/src/helpers/autolink.ts b/packages/extension-link/src/helpers/autolink.ts index 2192fae5d5..26cd3259a1 100644 --- a/packages/extension-link/src/helpers/autolink.ts +++ b/packages/extension-link/src/helpers/autolink.ts @@ -1,13 +1,9 @@ -import { - combineTransactionSteps, - findChildrenInRange, - getChangedRanges, - getMarksBetween, - NodeWithPos, -} from '@tiptap/core' -import { MarkType } from '@tiptap/pm/model' +import type { NodeWithPos } from '@tiptap/core' +import { combineTransactionSteps, findChildrenInRange, getChangedRanges, getMarksBetween } from '@tiptap/core' +import type { MarkType } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' -import { MultiToken, tokenize } from 'linkifyjs' +import type { MultiToken } from 'linkifyjs' +import { tokenize } from 'linkifyjs' /** * Check if the provided tokens form a valid link structure, which can either be a single link token diff --git a/packages/extension-link/src/helpers/clickHandler.ts b/packages/extension-link/src/helpers/clickHandler.ts index 88593d594f..cb8ff2efd4 100644 --- a/packages/extension-link/src/helpers/clickHandler.ts +++ b/packages/extension-link/src/helpers/clickHandler.ts @@ -1,5 +1,5 @@ import { getAttributes } from '@tiptap/core' -import { MarkType } from '@tiptap/pm/model' +import type { MarkType } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' type ClickHandlerOptions = { diff --git a/packages/extension-link/src/helpers/pasteHandler.ts b/packages/extension-link/src/helpers/pasteHandler.ts index 543bc20e88..bc0005c2d1 100644 --- a/packages/extension-link/src/helpers/pasteHandler.ts +++ b/packages/extension-link/src/helpers/pasteHandler.ts @@ -1,5 +1,5 @@ -import { Editor } from '@tiptap/core' -import { MarkType } from '@tiptap/pm/model' +import type { Editor } from '@tiptap/core' +import type { MarkType } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' import { find } from 'linkifyjs' diff --git a/packages/extension-link/src/link.ts b/packages/extension-link/src/link.ts index a6c398a424..0d5227e42f 100644 --- a/packages/extension-link/src/link.ts +++ b/packages/extension-link/src/link.ts @@ -1,5 +1,6 @@ -import { Mark, markPasteRule, mergeAttributes, PasteRuleMatch } from '@tiptap/core' -import { Plugin } from '@tiptap/pm/state' +import type { PasteRuleMatch } from '@tiptap/core' +import { Mark, markPasteRule, mergeAttributes } from '@tiptap/core' +import type { Plugin } from '@tiptap/pm/state' import { find, registerCustomProtocol, reset } from 'linkifyjs' import { autolink } from './helpers/autolink.js' diff --git a/packages/extension-list-item/src/index.ts b/packages/extension-list-item/src/index.ts index 0832e84959..c6db50c8fc 100644 --- a/packages/extension-list-item/src/index.ts +++ b/packages/extension-list-item/src/index.ts @@ -1,5 +1,6 @@ import { ListItem } from '@tiptap/extension-list' -export { ListItem, ListItemOptions } from '@tiptap/extension-list' +export type { ListItemOptions } from '@tiptap/extension-list' +export { ListItem } from '@tiptap/extension-list' export default ListItem diff --git a/packages/extension-list-keymap/src/index.ts b/packages/extension-list-keymap/src/index.ts index 2fe0f15d21..870a348aab 100644 --- a/packages/extension-list-keymap/src/index.ts +++ b/packages/extension-list-keymap/src/index.ts @@ -1,5 +1,6 @@ import { ListKeymap } from '@tiptap/extension-list' -export { listHelpers, ListKeymap, ListKeymapOptions } from '@tiptap/extension-list' +export type { ListKeymapOptions } from '@tiptap/extension-list' +export { listHelpers, ListKeymap } from '@tiptap/extension-list' export default ListKeymap diff --git a/packages/extension-list/src/keymap/listHelpers/findListItemPos.ts b/packages/extension-list/src/keymap/listHelpers/findListItemPos.ts index 17e80b6af5..9ec83a16c2 100644 --- a/packages/extension-list/src/keymap/listHelpers/findListItemPos.ts +++ b/packages/extension-list/src/keymap/listHelpers/findListItemPos.ts @@ -1,6 +1,6 @@ import { getNodeType } from '@tiptap/core' -import { NodeType } from '@tiptap/pm/model' -import { EditorState } from '@tiptap/pm/state' +import type { NodeType } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' export const findListItemPos = (typeOrName: string | NodeType, state: EditorState) => { const { $from } = state.selection diff --git a/packages/extension-list/src/keymap/listHelpers/getNextListDepth.ts b/packages/extension-list/src/keymap/listHelpers/getNextListDepth.ts index 86f3dcf4f9..d0d7dd3031 100644 --- a/packages/extension-list/src/keymap/listHelpers/getNextListDepth.ts +++ b/packages/extension-list/src/keymap/listHelpers/getNextListDepth.ts @@ -1,5 +1,5 @@ import { getNodeAtPosition } from '@tiptap/core' -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' import { findListItemPos } from './findListItemPos.js' diff --git a/packages/extension-list/src/keymap/listHelpers/handleBackspace.ts b/packages/extension-list/src/keymap/listHelpers/handleBackspace.ts index 4cfee867b3..1bf19414ee 100644 --- a/packages/extension-list/src/keymap/listHelpers/handleBackspace.ts +++ b/packages/extension-list/src/keymap/listHelpers/handleBackspace.ts @@ -1,5 +1,6 @@ -import { Editor, isAtStartOfNode, isNodeActive } from '@tiptap/core' -import { Node } from '@tiptap/pm/model' +import type { Editor } from '@tiptap/core' +import { isAtStartOfNode, isNodeActive } from '@tiptap/core' +import type { Node } from '@tiptap/pm/model' import { findListItemPos } from './findListItemPos.js' import { hasListBefore } from './hasListBefore.js' diff --git a/packages/extension-list/src/keymap/listHelpers/handleDelete.ts b/packages/extension-list/src/keymap/listHelpers/handleDelete.ts index 285490cd5e..659bf026da 100644 --- a/packages/extension-list/src/keymap/listHelpers/handleDelete.ts +++ b/packages/extension-list/src/keymap/listHelpers/handleDelete.ts @@ -1,4 +1,5 @@ -import { Editor, isAtEndOfNode, isNodeActive } from '@tiptap/core' +import type { Editor } from '@tiptap/core' +import { isAtEndOfNode, isNodeActive } from '@tiptap/core' import { nextListIsDeeper } from './nextListIsDeeper.js' import { nextListIsHigher } from './nextListIsHigher.js' diff --git a/packages/extension-list/src/keymap/listHelpers/hasListBefore.ts b/packages/extension-list/src/keymap/listHelpers/hasListBefore.ts index f8ae974620..3155c325c8 100644 --- a/packages/extension-list/src/keymap/listHelpers/hasListBefore.ts +++ b/packages/extension-list/src/keymap/listHelpers/hasListBefore.ts @@ -1,4 +1,4 @@ -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' export const hasListBefore = (editorState: EditorState, name: string, parentListTypes: string[]) => { const { $anchor } = editorState.selection diff --git a/packages/extension-list/src/keymap/listHelpers/hasListItemAfter.ts b/packages/extension-list/src/keymap/listHelpers/hasListItemAfter.ts index 6a44455144..44796d49a4 100644 --- a/packages/extension-list/src/keymap/listHelpers/hasListItemAfter.ts +++ b/packages/extension-list/src/keymap/listHelpers/hasListItemAfter.ts @@ -1,4 +1,4 @@ -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' export const hasListItemAfter = (typeOrName: string, state: EditorState): boolean => { const { $anchor } = state.selection diff --git a/packages/extension-list/src/keymap/listHelpers/hasListItemBefore.ts b/packages/extension-list/src/keymap/listHelpers/hasListItemBefore.ts index c5d413cb38..cc9c7e33be 100644 --- a/packages/extension-list/src/keymap/listHelpers/hasListItemBefore.ts +++ b/packages/extension-list/src/keymap/listHelpers/hasListItemBefore.ts @@ -1,4 +1,4 @@ -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' export const hasListItemBefore = (typeOrName: string, state: EditorState): boolean => { const { $anchor } = state.selection diff --git a/packages/extension-list/src/keymap/listHelpers/listItemHasSubList.ts b/packages/extension-list/src/keymap/listHelpers/listItemHasSubList.ts index 78c542a754..af21d21757 100644 --- a/packages/extension-list/src/keymap/listHelpers/listItemHasSubList.ts +++ b/packages/extension-list/src/keymap/listHelpers/listItemHasSubList.ts @@ -1,6 +1,6 @@ import { getNodeType } from '@tiptap/core' -import { Node } from '@tiptap/pm/model' -import { EditorState } from '@tiptap/pm/state' +import type { Node } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' export const listItemHasSubList = (typeOrName: string, state: EditorState, node?: Node) => { if (!node) { diff --git a/packages/extension-list/src/keymap/listHelpers/nextListIsDeeper.ts b/packages/extension-list/src/keymap/listHelpers/nextListIsDeeper.ts index 5a133d1505..42582b03ea 100644 --- a/packages/extension-list/src/keymap/listHelpers/nextListIsDeeper.ts +++ b/packages/extension-list/src/keymap/listHelpers/nextListIsDeeper.ts @@ -1,4 +1,4 @@ -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' import { findListItemPos } from './findListItemPos.js' import { getNextListDepth } from './getNextListDepth.js' diff --git a/packages/extension-list/src/keymap/listHelpers/nextListIsHigher.ts b/packages/extension-list/src/keymap/listHelpers/nextListIsHigher.ts index 3e7ea11210..659fb72257 100644 --- a/packages/extension-list/src/keymap/listHelpers/nextListIsHigher.ts +++ b/packages/extension-list/src/keymap/listHelpers/nextListIsHigher.ts @@ -1,4 +1,4 @@ -import { EditorState } from '@tiptap/pm/state' +import type { EditorState } from '@tiptap/pm/state' import { findListItemPos } from './findListItemPos.js' import { getNextListDepth } from './getNextListDepth.js' diff --git a/packages/extension-list/src/kit/index.ts b/packages/extension-list/src/kit/index.ts index b5e0ca90ea..1fcda0af66 100644 --- a/packages/extension-list/src/kit/index.ts +++ b/packages/extension-list/src/kit/index.ts @@ -1,11 +1,17 @@ import { Extension } from '@tiptap/core' -import { BulletList, BulletListOptions } from '../bullet-list/index.js' -import { ListItem, ListItemOptions } from '../item/index.js' -import { ListKeymap, ListKeymapOptions } from '../keymap/index.js' -import { OrderedList, OrderedListOptions } from '../ordered-list/index.js' -import { TaskItem, TaskItemOptions } from '../task-item/index.js' -import { TaskList, TaskListOptions } from '../task-list/index.js' +import type { BulletListOptions } from '../bullet-list/index.js' +import { BulletList } from '../bullet-list/index.js' +import type { ListItemOptions } from '../item/index.js' +import { ListItem } from '../item/index.js' +import type { ListKeymapOptions } from '../keymap/index.js' +import { ListKeymap } from '../keymap/index.js' +import type { OrderedListOptions } from '../ordered-list/index.js' +import { OrderedList } from '../ordered-list/index.js' +import type { TaskItemOptions } from '../task-item/index.js' +import { TaskItem } from '../task-item/index.js' +import type { TaskListOptions } from '../task-list/index.js' +import { TaskList } from '../task-list/index.js' export interface ListKitOptions { /** diff --git a/packages/extension-list/src/task-item/task-item.ts b/packages/extension-list/src/task-item/task-item.ts index 4d9a08a0b9..4214268f79 100644 --- a/packages/extension-list/src/task-item/task-item.ts +++ b/packages/extension-list/src/task-item/task-item.ts @@ -1,5 +1,6 @@ -import { KeyboardShortcutCommand, mergeAttributes, Node, wrappingInputRule } from '@tiptap/core' -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { KeyboardShortcutCommand } from '@tiptap/core' +import { mergeAttributes, Node, wrappingInputRule } from '@tiptap/core' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' export interface TaskItemOptions { /** diff --git a/packages/extension-mention/src/mention.ts b/packages/extension-mention/src/mention.ts index 4cc24f33c6..91f19d2ad0 100644 --- a/packages/extension-mention/src/mention.ts +++ b/packages/extension-mention/src/mention.ts @@ -1,7 +1,8 @@ import { mergeAttributes, Node } from '@tiptap/core' -import { DOMOutputSpec, Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { DOMOutputSpec, Node as ProseMirrorNode } from '@tiptap/pm/model' import { PluginKey } from '@tiptap/pm/state' -import Suggestion, { SuggestionOptions } from '@tiptap/suggestion' +import type { SuggestionOptions } from '@tiptap/suggestion' +import Suggestion from '@tiptap/suggestion' // See `addAttributes` below export interface MentionNodeAttrs { diff --git a/packages/extension-ordered-list/src/index.ts b/packages/extension-ordered-list/src/index.ts index 00548734cb..a19b6dd48b 100644 --- a/packages/extension-ordered-list/src/index.ts +++ b/packages/extension-ordered-list/src/index.ts @@ -1,5 +1,6 @@ import { OrderedList } from '@tiptap/extension-list' -export { OrderedList, OrderedListOptions } from '@tiptap/extension-list' +export type { OrderedListOptions } from '@tiptap/extension-list' +export { OrderedList } from '@tiptap/extension-list' export default OrderedList diff --git a/packages/extension-placeholder/src/index.ts b/packages/extension-placeholder/src/index.ts index a4142b373e..2cfeec36c8 100644 --- a/packages/extension-placeholder/src/index.ts +++ b/packages/extension-placeholder/src/index.ts @@ -1,5 +1,6 @@ import { Placeholder } from '@tiptap/extensions' -export { Placeholder, PlaceholderOptions } from '@tiptap/extensions' +export type { PlaceholderOptions } from '@tiptap/extensions' +export { Placeholder } from '@tiptap/extensions' export default Placeholder diff --git a/packages/extension-table-cell/src/index.ts b/packages/extension-table-cell/src/index.ts index d99fe2e54e..305d2a1862 100644 --- a/packages/extension-table-cell/src/index.ts +++ b/packages/extension-table-cell/src/index.ts @@ -1,5 +1,6 @@ import { TableCell } from '@tiptap/extension-table' -export { TableCell, TableCellOptions } from '@tiptap/extension-table' +export type { TableCellOptions } from '@tiptap/extension-table' +export { TableCell } from '@tiptap/extension-table' export default TableCell diff --git a/packages/extension-table-header/src/index.ts b/packages/extension-table-header/src/index.ts index e5fa0af6de..892c8d4a0f 100644 --- a/packages/extension-table-header/src/index.ts +++ b/packages/extension-table-header/src/index.ts @@ -1,5 +1,6 @@ import { TableHeader } from '@tiptap/extension-table' -export { TableHeader, TableHeaderOptions } from '@tiptap/extension-table' +export type { TableHeaderOptions } from '@tiptap/extension-table' +export { TableHeader } from '@tiptap/extension-table' export default TableHeader diff --git a/packages/extension-table-row/src/index.ts b/packages/extension-table-row/src/index.ts index eb93beba89..f6c07a3134 100644 --- a/packages/extension-table-row/src/index.ts +++ b/packages/extension-table-row/src/index.ts @@ -1,5 +1,6 @@ import { TableRow } from '@tiptap/extension-table' -export { TableRow, TableRowOptions } from '@tiptap/extension-table' +export type { TableRowOptions } from '@tiptap/extension-table' +export { TableRow } from '@tiptap/extension-table' export default TableRow diff --git a/packages/extension-table/src/kit/index.ts b/packages/extension-table/src/kit/index.ts index f9408eb854..79a8fb755e 100644 --- a/packages/extension-table/src/kit/index.ts +++ b/packages/extension-table/src/kit/index.ts @@ -1,9 +1,13 @@ import { Extension } from '@tiptap/core' -import { TableCell, TableCellOptions } from '../cell/index.js' -import { TableHeader, TableHeaderOptions } from '../header/index.js' -import { TableRow, TableRowOptions } from '../row/index.js' -import { Table, TableOptions } from '../table/index.js' +import type { TableCellOptions } from '../cell/index.js' +import { TableCell } from '../cell/index.js' +import type { TableHeaderOptions } from '../header/index.js' +import { TableHeader } from '../header/index.js' +import type { TableRowOptions } from '../row/index.js' +import { TableRow } from '../row/index.js' +import type { TableOptions } from '../table/index.js' +import { Table } from '../table/index.js' export interface TableKitOptions { /** diff --git a/packages/extension-table/src/table/TableView.ts b/packages/extension-table/src/table/TableView.ts index 1146753ef9..4a7bf9c845 100644 --- a/packages/extension-table/src/table/TableView.ts +++ b/packages/extension-table/src/table/TableView.ts @@ -1,5 +1,5 @@ -import { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { NodeView, ViewMutationRecord } from '@tiptap/pm/view' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { NodeView, ViewMutationRecord } from '@tiptap/pm/view' import { getColStyleDeclaration } from './utilities/colStyle.js' diff --git a/packages/extension-table/src/table/table.ts b/packages/extension-table/src/table/table.ts index ca7797193d..244029d64d 100644 --- a/packages/extension-table/src/table/table.ts +++ b/packages/extension-table/src/table/table.ts @@ -1,7 +1,7 @@ import '../types.js' import { callOrReturn, getExtensionField, mergeAttributes, Node } from '@tiptap/core' -import { DOMOutputSpec, Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { DOMOutputSpec, Node as ProseMirrorNode } from '@tiptap/pm/model' import { TextSelection } from '@tiptap/pm/state' import { addColumnAfter, @@ -22,7 +22,7 @@ import { toggleHeader, toggleHeaderCell, } from '@tiptap/pm/tables' -import { EditorView, NodeView } from '@tiptap/pm/view' +import type { EditorView, NodeView } from '@tiptap/pm/view' import { TableView } from './TableView.js' import { createColGroup } from './utilities/createColGroup.js' diff --git a/packages/extension-table/src/table/utilities/createCell.ts b/packages/extension-table/src/table/utilities/createCell.ts index 120ea7b43e..2e919fb754 100644 --- a/packages/extension-table/src/table/utilities/createCell.ts +++ b/packages/extension-table/src/table/utilities/createCell.ts @@ -1,4 +1,4 @@ -import { Fragment, Node as ProsemirrorNode, NodeType } from '@tiptap/pm/model' +import type { Fragment, Node as ProsemirrorNode, NodeType } from '@tiptap/pm/model' export function createCell( cellType: NodeType, diff --git a/packages/extension-table/src/table/utilities/createColGroup.ts b/packages/extension-table/src/table/utilities/createColGroup.ts index fb613c9c6f..34789e640e 100644 --- a/packages/extension-table/src/table/utilities/createColGroup.ts +++ b/packages/extension-table/src/table/utilities/createColGroup.ts @@ -1,4 +1,4 @@ -import { DOMOutputSpec, Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { DOMOutputSpec, Node as ProseMirrorNode } from '@tiptap/pm/model' import { getColStyleDeclaration } from './colStyle.js' diff --git a/packages/extension-table/src/table/utilities/createTable.ts b/packages/extension-table/src/table/utilities/createTable.ts index d343a3e170..39771c6548 100644 --- a/packages/extension-table/src/table/utilities/createTable.ts +++ b/packages/extension-table/src/table/utilities/createTable.ts @@ -1,4 +1,4 @@ -import { Fragment, Node as ProsemirrorNode, Schema } from '@tiptap/pm/model' +import type { Fragment, Node as ProsemirrorNode, Schema } from '@tiptap/pm/model' import { createCell } from './createCell.js' import { getTableNodeTypes } from './getTableNodeTypes.js' diff --git a/packages/extension-table/src/table/utilities/deleteTableWhenAllCellsSelected.ts b/packages/extension-table/src/table/utilities/deleteTableWhenAllCellsSelected.ts index c054f4a9b7..3e2947468f 100644 --- a/packages/extension-table/src/table/utilities/deleteTableWhenAllCellsSelected.ts +++ b/packages/extension-table/src/table/utilities/deleteTableWhenAllCellsSelected.ts @@ -1,4 +1,5 @@ -import { findParentNodeClosestToPos, KeyboardShortcutCommand } from '@tiptap/core' +import type { KeyboardShortcutCommand } from '@tiptap/core' +import { findParentNodeClosestToPos } from '@tiptap/core' import { isCellSelection } from './isCellSelection.js' diff --git a/packages/extension-table/src/table/utilities/getTableNodeTypes.ts b/packages/extension-table/src/table/utilities/getTableNodeTypes.ts index aafee1cd49..ee26a52f8a 100644 --- a/packages/extension-table/src/table/utilities/getTableNodeTypes.ts +++ b/packages/extension-table/src/table/utilities/getTableNodeTypes.ts @@ -1,4 +1,4 @@ -import { NodeType, Schema } from '@tiptap/pm/model' +import type { NodeType, Schema } from '@tiptap/pm/model' export function getTableNodeTypes(schema: Schema): { [key: string]: NodeType } { if (schema.cached.tableNodeTypes) { diff --git a/packages/extension-table/src/types.ts b/packages/extension-table/src/types.ts index 079e0c4db2..eef697b269 100644 --- a/packages/extension-table/src/types.ts +++ b/packages/extension-table/src/types.ts @@ -1,4 +1,4 @@ -import { ParentConfig } from '@tiptap/core' +import type { ParentConfig } from '@tiptap/core' declare module '@tiptap/core' { interface NodeConfig { diff --git a/packages/extension-task-item/src/index.ts b/packages/extension-task-item/src/index.ts index 93bef55217..0e8c86535f 100644 --- a/packages/extension-task-item/src/index.ts +++ b/packages/extension-task-item/src/index.ts @@ -1,5 +1,6 @@ import { TaskItem } from '@tiptap/extension-list' -export { TaskItem, TaskItemOptions } from '@tiptap/extension-list' +export type { TaskItemOptions } from '@tiptap/extension-list' +export { TaskItem } from '@tiptap/extension-list' export default TaskItem diff --git a/packages/extension-task-list/src/index.ts b/packages/extension-task-list/src/index.ts index 10c6d50875..15853de1d9 100644 --- a/packages/extension-task-list/src/index.ts +++ b/packages/extension-task-list/src/index.ts @@ -1,5 +1,6 @@ import { TaskList } from '@tiptap/extension-list' -export { TaskList, TaskListOptions } from '@tiptap/extension-list' +export type { TaskListOptions } from '@tiptap/extension-list' +export { TaskList } from '@tiptap/extension-list' export default TaskList diff --git a/packages/extension-text-style/src/text-style-kit/index.ts b/packages/extension-text-style/src/text-style-kit/index.ts index 64ef99d8f8..6d1b928a42 100644 --- a/packages/extension-text-style/src/text-style-kit/index.ts +++ b/packages/extension-text-style/src/text-style-kit/index.ts @@ -1,11 +1,17 @@ import { Extension } from '@tiptap/core' -import { BackgroundColor, BackgroundColorOptions } from '../background-color/index.js' -import { Color, ColorOptions } from '../color/index.js' -import { FontFamily, FontFamilyOptions } from '../font-family/index.js' -import { FontSize, FontSizeOptions } from '../font-size/index.js' -import { LineHeight, LineHeightOptions } from '../line-height/index.js' -import { TextStyle, TextStyleOptions } from '../text-style/index.js' +import type { BackgroundColorOptions } from '../background-color/index.js' +import { BackgroundColor } from '../background-color/index.js' +import type { ColorOptions } from '../color/index.js' +import { Color } from '../color/index.js' +import type { FontFamilyOptions } from '../font-family/index.js' +import { FontFamily } from '../font-family/index.js' +import type { FontSizeOptions } from '../font-size/index.js' +import { FontSize } from '../font-size/index.js' +import type { LineHeightOptions } from '../line-height/index.js' +import { LineHeight } from '../line-height/index.js' +import type { TextStyleOptions } from '../text-style/index.js' +import { TextStyle } from '../text-style/index.js' export interface TextStyleKitOptions { /** diff --git a/packages/extensions/src/character-count/character-count.ts b/packages/extensions/src/character-count/character-count.ts index 98e25aa3f1..7b9e1d044d 100644 --- a/packages/extensions/src/character-count/character-count.ts +++ b/packages/extensions/src/character-count/character-count.ts @@ -1,5 +1,5 @@ import { Extension } from '@tiptap/core' -import { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' export interface CharacterCountOptions { diff --git a/packages/extensions/src/gap-cursor/gap-cursor.ts b/packages/extensions/src/gap-cursor/gap-cursor.ts index ac9d56cb82..c2a0a025b5 100644 --- a/packages/extensions/src/gap-cursor/gap-cursor.ts +++ b/packages/extensions/src/gap-cursor/gap-cursor.ts @@ -1,4 +1,5 @@ -import { callOrReturn, Extension, getExtensionField, ParentConfig } from '@tiptap/core' +import type { ParentConfig } from '@tiptap/core' +import { callOrReturn, Extension, getExtensionField } from '@tiptap/core' import { gapCursor } from '@tiptap/pm/gapcursor' declare module '@tiptap/core' { diff --git a/packages/extensions/src/placeholder/placeholder.ts b/packages/extensions/src/placeholder/placeholder.ts index 273790fb86..ea1bf87136 100644 --- a/packages/extensions/src/placeholder/placeholder.ts +++ b/packages/extensions/src/placeholder/placeholder.ts @@ -1,5 +1,6 @@ -import { Editor, Extension, isNodeEmpty } from '@tiptap/core' -import { Node as ProsemirrorNode } from '@tiptap/pm/model' +import type { Editor } from '@tiptap/core' +import { Extension, isNodeEmpty } from '@tiptap/core' +import type { Node as ProsemirrorNode } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' import { Decoration, DecorationSet } from '@tiptap/pm/view' diff --git a/packages/extensions/src/trailing-node/trailing-node.ts b/packages/extensions/src/trailing-node/trailing-node.ts index 75b638b373..c96bb4a583 100644 --- a/packages/extensions/src/trailing-node/trailing-node.ts +++ b/packages/extensions/src/trailing-node/trailing-node.ts @@ -1,5 +1,5 @@ import { Extension } from '@tiptap/core' -import { Node, NodeType } from '@tiptap/pm/model' +import type { Node, NodeType } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' function nodeEqualsType({ types, node }: { types: NodeType | NodeType[]; node: Node | null | undefined }) { diff --git a/packages/html/src/generateHTML.ts b/packages/html/src/generateHTML.ts index 27abd938a0..4f37cde9cb 100644 --- a/packages/html/src/generateHTML.ts +++ b/packages/html/src/generateHTML.ts @@ -1,4 +1,5 @@ -import { Extensions, getSchema, JSONContent } from '@tiptap/core' +import type { Extensions, JSONContent } from '@tiptap/core' +import { getSchema } from '@tiptap/core' import { Node } from '@tiptap/pm/model' import { getHTMLFromFragment } from './getHTMLFromFragment.js' diff --git a/packages/html/src/generateJSON.ts b/packages/html/src/generateJSON.ts index 9c6d997358..60f933dd47 100644 --- a/packages/html/src/generateJSON.ts +++ b/packages/html/src/generateJSON.ts @@ -1,5 +1,7 @@ -import { Extensions, getSchema } from '@tiptap/core' -import { DOMParser, ParseOptions } from '@tiptap/pm/model' +import type { Extensions } from '@tiptap/core' +import { getSchema } from '@tiptap/core' +import type { ParseOptions } from '@tiptap/pm/model' +import { DOMParser } from '@tiptap/pm/model' import { DOMParser as HappyDOMParser, Window as HappyDOMWindow } from 'happy-dom-without-node' /** diff --git a/packages/html/src/getHTMLFromFragment.ts b/packages/html/src/getHTMLFromFragment.ts index 136840b641..3b30dbf51a 100644 --- a/packages/html/src/getHTMLFromFragment.ts +++ b/packages/html/src/getHTMLFromFragment.ts @@ -1,4 +1,5 @@ -import { DOMSerializer, Node, Schema } from '@tiptap/pm/model' +import type { Node, Schema } from '@tiptap/pm/model' +import { DOMSerializer } from '@tiptap/pm/model' import { Window } from 'happy-dom-without-node' /** diff --git a/packages/react/src/Context.tsx b/packages/react/src/Context.tsx index b4b28c9810..174d7c0916 100644 --- a/packages/react/src/Context.tsx +++ b/packages/react/src/Context.tsx @@ -1,8 +1,10 @@ -import { Editor } from '@tiptap/core' -import React, { createContext, HTMLAttributes, ReactNode, useContext, useMemo } from 'react' +import type { Editor } from '@tiptap/core' +import type { HTMLAttributes, ReactNode } from 'react' +import React, { createContext, useContext, useMemo } from 'react' import { EditorContent } from './EditorContent.js' -import { useEditor, UseEditorOptions } from './useEditor.js' +import type { UseEditorOptions } from './useEditor.js' +import { useEditor } from './useEditor.js' export type EditorContextValue = { editor: Editor | null diff --git a/packages/react/src/Editor.ts b/packages/react/src/Editor.ts index 1f7404b245..f57632d338 100644 --- a/packages/react/src/Editor.ts +++ b/packages/react/src/Editor.ts @@ -1,7 +1,7 @@ -import { Editor } from '@tiptap/core' -import { ReactPortal } from 'react' +import type { Editor } from '@tiptap/core' +import type { ReactPortal } from 'react' -import { ReactRenderer } from './ReactRenderer.js' +import type { ReactRenderer } from './ReactRenderer.js' export type EditorWithContentComponent = Editor & { contentComponent?: ContentComponent | null } export type ContentComponent = { diff --git a/packages/react/src/EditorContent.tsx b/packages/react/src/EditorContent.tsx index 6c5ba6759f..39f220b5c8 100644 --- a/packages/react/src/EditorContent.tsx +++ b/packages/react/src/EditorContent.tsx @@ -1,10 +1,11 @@ -import { Editor } from '@tiptap/core' -import React, { ForwardedRef, forwardRef, HTMLProps, LegacyRef, MutableRefObject } from 'react' +import type { Editor } from '@tiptap/core' +import type { ForwardedRef, HTMLProps, LegacyRef, MutableRefObject } from 'react' +import React, { forwardRef } from 'react' import ReactDOM from 'react-dom' import { useSyncExternalStore } from 'use-sync-external-store/shim' -import { ContentComponent, EditorWithContentComponent } from './Editor.js' -import { ReactRenderer } from './ReactRenderer.js' +import type { ContentComponent, EditorWithContentComponent } from './Editor.js' +import type { ReactRenderer } from './ReactRenderer.js' const mergeRefs = (...refs: Array | LegacyRef | undefined>) => { return (node: T) => { diff --git a/packages/react/src/NodeViewContent.tsx b/packages/react/src/NodeViewContent.tsx index 406bee9e40..1d369927cf 100644 --- a/packages/react/src/NodeViewContent.tsx +++ b/packages/react/src/NodeViewContent.tsx @@ -1,4 +1,5 @@ -import React, { ComponentProps } from 'react' +import type { ComponentProps } from 'react' +import React from 'react' import { useReactNodeView } from './useReactNodeView.js' diff --git a/packages/react/src/ReactMarkViewRenderer.tsx b/packages/react/src/ReactMarkViewRenderer.tsx index f1d5e7b9c1..005dd6658d 100644 --- a/packages/react/src/ReactMarkViewRenderer.tsx +++ b/packages/react/src/ReactMarkViewRenderer.tsx @@ -1,5 +1,6 @@ /* eslint-disable @typescript-eslint/no-shadow */ -import { MarkView, MarkViewProps, MarkViewRenderer, MarkViewRendererOptions } from '@tiptap/core' +import type { MarkViewProps, MarkViewRenderer, MarkViewRendererOptions } from '@tiptap/core' +import { MarkView } from '@tiptap/core' import React from 'react' // import { flushSync } from 'react-dom' diff --git a/packages/react/src/ReactNodeViewRenderer.tsx b/packages/react/src/ReactNodeViewRenderer.tsx index 30b341b6c6..0b67fc2094 100644 --- a/packages/react/src/ReactNodeViewRenderer.tsx +++ b/packages/react/src/ReactNodeViewRenderer.tsx @@ -1,19 +1,14 @@ -import { - DecorationWithType, - Editor, - getRenderedAttributes, - NodeView, - NodeViewProps, - NodeViewRenderer, - NodeViewRendererOptions, -} from '@tiptap/core' -import { Node, Node as ProseMirrorNode } from '@tiptap/pm/model' -import { Decoration, DecorationSource, NodeView as ProseMirrorNodeView } from '@tiptap/pm/view' -import React, { ComponentType } from 'react' - -import { EditorWithContentComponent } from './Editor.js' +import type { DecorationWithType, Editor, NodeViewProps, NodeViewRenderer, NodeViewRendererOptions } from '@tiptap/core' +import { getRenderedAttributes, NodeView } from '@tiptap/core' +import type { Node, Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Decoration, DecorationSource, NodeView as ProseMirrorNodeView } from '@tiptap/pm/view' +import type { ComponentType } from 'react' +import React from 'react' + +import type { EditorWithContentComponent } from './Editor.js' import { ReactRenderer } from './ReactRenderer.js' -import { ReactNodeViewContext, ReactNodeViewContextProps } from './useReactNodeView.js' +import type { ReactNodeViewContextProps } from './useReactNodeView.js' +import { ReactNodeViewContext } from './useReactNodeView.js' export interface ReactNodeViewRendererOptions extends NodeViewRendererOptions { /** diff --git a/packages/react/src/ReactRenderer.tsx b/packages/react/src/ReactRenderer.tsx index 64b44aebf8..49c7a679c8 100644 --- a/packages/react/src/ReactRenderer.tsx +++ b/packages/react/src/ReactRenderer.tsx @@ -1,8 +1,8 @@ -import { Editor } from '@tiptap/core' +import type { Editor } from '@tiptap/core' import React from 'react' import { flushSync } from 'react-dom' -import { EditorWithContentComponent } from './Editor.js' +import type { EditorWithContentComponent } from './Editor.js' /** * Check if a component is a class component. diff --git a/packages/react/src/menus/FloatingMenu.tsx b/packages/react/src/menus/FloatingMenu.tsx index 4228a4c6bd..299571ecd1 100644 --- a/packages/react/src/menus/FloatingMenu.tsx +++ b/packages/react/src/menus/FloatingMenu.tsx @@ -1,4 +1,5 @@ -import { FloatingMenuPlugin, FloatingMenuPluginProps } from '@tiptap/extension-floating-menu' +import type { FloatingMenuPluginProps } from '@tiptap/extension-floating-menu' +import { FloatingMenuPlugin } from '@tiptap/extension-floating-menu' import { useCurrentEditor } from '@tiptap/react' import React, { useEffect, useRef } from 'react' import { createPortal } from 'react-dom' diff --git a/packages/react/src/useEditor.ts b/packages/react/src/useEditor.ts index 5c43fcf89e..3ed528d2d7 100644 --- a/packages/react/src/useEditor.ts +++ b/packages/react/src/useEditor.ts @@ -1,5 +1,6 @@ import { type EditorOptions, Editor } from '@tiptap/core' -import { DependencyList, MutableRefObject, useDebugValue, useEffect, useRef, useState } from 'react' +import type { DependencyList, MutableRefObject } from 'react' +import { useDebugValue, useEffect, useRef, useState } from 'react' import { useSyncExternalStore } from 'use-sync-external-store/shim' import { useEditorState } from './useEditorState.js' diff --git a/packages/react/src/useReactNodeView.ts b/packages/react/src/useReactNodeView.ts index b00c140da8..6f4785c575 100644 --- a/packages/react/src/useReactNodeView.ts +++ b/packages/react/src/useReactNodeView.ts @@ -1,4 +1,5 @@ -import { createContext, createElement, ReactNode, useContext } from 'react' +import type { ReactNode } from 'react' +import { createContext, createElement, useContext } from 'react' export interface ReactNodeViewContextProps { onDragStart?: (event: DragEvent) => void diff --git a/packages/starter-kit/src/starter-kit.ts b/packages/starter-kit/src/starter-kit.ts index f4bce437c6..14a8721705 100644 --- a/packages/starter-kit/src/starter-kit.ts +++ b/packages/starter-kit/src/starter-kit.ts @@ -1,37 +1,34 @@ import { Extension } from '@tiptap/core' -import { Blockquote, BlockquoteOptions } from '@tiptap/extension-blockquote' -import { Bold, BoldOptions } from '@tiptap/extension-bold' -import { Code, CodeOptions } from '@tiptap/extension-code' -import { CodeBlock, CodeBlockOptions } from '@tiptap/extension-code-block' +import type { BlockquoteOptions } from '@tiptap/extension-blockquote' +import { Blockquote } from '@tiptap/extension-blockquote' +import type { BoldOptions } from '@tiptap/extension-bold' +import { Bold } from '@tiptap/extension-bold' +import type { CodeOptions } from '@tiptap/extension-code' +import { Code } from '@tiptap/extension-code' +import type { CodeBlockOptions } from '@tiptap/extension-code-block' +import { CodeBlock } from '@tiptap/extension-code-block' import { Document } from '@tiptap/extension-document' -import { HardBreak, HardBreakOptions } from '@tiptap/extension-hard-break' -import { Heading, HeadingOptions } from '@tiptap/extension-heading' -import { HorizontalRule, HorizontalRuleOptions } from '@tiptap/extension-horizontal-rule' -import { Italic, ItalicOptions } from '@tiptap/extension-italic' -import { Link, LinkOptions } from '@tiptap/extension-link' -import { - BulletList, - BulletListOptions, - ListItem, - ListItemOptions, - ListKeymap, - ListKeymapOptions, - OrderedList, - OrderedListOptions, -} from '@tiptap/extension-list' -import { Paragraph, ParagraphOptions } from '@tiptap/extension-paragraph' -import { Strike, StrikeOptions } from '@tiptap/extension-strike' +import type { HardBreakOptions } from '@tiptap/extension-hard-break' +import { HardBreak } from '@tiptap/extension-hard-break' +import type { HeadingOptions } from '@tiptap/extension-heading' +import { Heading } from '@tiptap/extension-heading' +import type { HorizontalRuleOptions } from '@tiptap/extension-horizontal-rule' +import { HorizontalRule } from '@tiptap/extension-horizontal-rule' +import type { ItalicOptions } from '@tiptap/extension-italic' +import { Italic } from '@tiptap/extension-italic' +import type { LinkOptions } from '@tiptap/extension-link' +import { Link } from '@tiptap/extension-link' +import type { BulletListOptions, ListItemOptions, ListKeymapOptions, OrderedListOptions } from '@tiptap/extension-list' +import { BulletList, ListItem, ListKeymap, OrderedList } from '@tiptap/extension-list' +import type { ParagraphOptions } from '@tiptap/extension-paragraph' +import { Paragraph } from '@tiptap/extension-paragraph' +import type { StrikeOptions } from '@tiptap/extension-strike' +import { Strike } from '@tiptap/extension-strike' import { Text } from '@tiptap/extension-text' -import { Underline, UnderlineOptions } from '@tiptap/extension-underline' -import { - Dropcursor, - DropcursorOptions, - Gapcursor, - History, - HistoryOptions, - TrailingNode, - TrailingNodeOptions, -} from '@tiptap/extensions' +import type { UnderlineOptions } from '@tiptap/extension-underline' +import { Underline } from '@tiptap/extension-underline' +import type { DropcursorOptions, HistoryOptions, TrailingNodeOptions } from '@tiptap/extensions' +import { Dropcursor, Gapcursor, History, TrailingNode } from '@tiptap/extensions' export interface StarterKitOptions { /** diff --git a/packages/static-renderer/src/json/html-string/string.ts b/packages/static-renderer/src/json/html-string/string.ts index b6830dbe1c..bbea3d50ef 100644 --- a/packages/static-renderer/src/json/html-string/string.ts +++ b/packages/static-renderer/src/json/html-string/string.ts @@ -1,7 +1,8 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ import type { MarkType, NodeType } from '@tiptap/core' -import { TiptapStaticRenderer, TiptapStaticRendererOptions } from '../renderer.js' +import type { TiptapStaticRendererOptions } from '../renderer.js' +import { TiptapStaticRenderer } from '../renderer.js' export function renderJSONContentToString< /** diff --git a/packages/static-renderer/src/json/react/react.ts b/packages/static-renderer/src/json/react/react.ts index c3f384fb32..233e87c50b 100644 --- a/packages/static-renderer/src/json/react/react.ts +++ b/packages/static-renderer/src/json/react/react.ts @@ -3,7 +3,8 @@ import type { MarkType, NodeType } from '@tiptap/core' import React from 'react' -import { TiptapStaticRenderer, TiptapStaticRendererOptions } from '../renderer.js' +import type { TiptapStaticRendererOptions } from '../renderer.js' +import { TiptapStaticRenderer } from '../renderer.js' export function renderJSONContentToReactElement< /** diff --git a/packages/static-renderer/src/pm/extensionRenderer.ts b/packages/static-renderer/src/pm/extensionRenderer.ts index 3614cf916a..f8b0ef134a 100644 --- a/packages/static-renderer/src/pm/extensionRenderer.ts +++ b/packages/static-renderer/src/pm/extensionRenderer.ts @@ -1,24 +1,27 @@ /* eslint-disable no-plusplus */ /* eslint-disable @typescript-eslint/no-explicit-any */ -import { +import type { ExtensionAttribute, Extensions, - getAttributesFromExtensions, - getExtensionField, - getSchemaByResolvedExtensions, JSONContent, Mark as MarkExtension, MarkConfig, Node as NodeExtension, NodeConfig, +} from '@tiptap/core' +import { + getAttributesFromExtensions, + getExtensionField, + getSchemaByResolvedExtensions, resolveExtensions, splitExtensions, } from '@tiptap/core' -import { DOMOutputSpec, Mark, Node } from '@tiptap/pm/model' +import type { DOMOutputSpec, Mark } from '@tiptap/pm/model' +import { Node } from '@tiptap/pm/model' import { getHTMLAttributes } from '../helpers.js' -import { MarkProps, NodeProps, TiptapStaticRendererOptions } from '../json/renderer.js' +import type { MarkProps, NodeProps, TiptapStaticRendererOptions } from '../json/renderer.js' export type DomOutputSpecToElement = (content: DOMOutputSpec) => (children?: T | T[]) => T diff --git a/packages/static-renderer/src/pm/html-string/html-string.ts b/packages/static-renderer/src/pm/html-string/html-string.ts index 2384d24a50..d4e63fb4ab 100644 --- a/packages/static-renderer/src/pm/html-string/html-string.ts +++ b/packages/static-renderer/src/pm/html-string/html-string.ts @@ -7,7 +7,7 @@ import { serializeAttrsToHTMLString, serializeChildrenToHTMLString, } from '../../json/html-string/string.js' -import { TiptapStaticRendererOptions } from '../../json/renderer.js' +import type { TiptapStaticRendererOptions } from '../../json/renderer.js' import { renderToElement } from '../extensionRenderer.js' export { serializeAttrsToHTMLString, serializeChildrenToHTMLString } from '../../json/html-string/string.js' diff --git a/packages/static-renderer/src/pm/markdown/markdown.ts b/packages/static-renderer/src/pm/markdown/markdown.ts index 770585ca89..67c9773fa5 100644 --- a/packages/static-renderer/src/pm/markdown/markdown.ts +++ b/packages/static-renderer/src/pm/markdown/markdown.ts @@ -1,7 +1,7 @@ -import { Extensions, JSONContent } from '@tiptap/core' +import type { Extensions, JSONContent } from '@tiptap/core' import type { Mark, Node } from '@tiptap/pm/model' -import { TiptapStaticRendererOptions } from '../../json/renderer.js' +import type { TiptapStaticRendererOptions } from '../../json/renderer.js' import { renderToHTMLString, serializeChildrenToHTMLString } from '../html-string/html-string.js' /** diff --git a/packages/static-renderer/src/pm/react/react.ts b/packages/static-renderer/src/pm/react/react.ts index 1b871f786f..0f06cc1717 100644 --- a/packages/static-renderer/src/pm/react/react.ts +++ b/packages/static-renderer/src/pm/react/react.ts @@ -4,7 +4,7 @@ import type { DOMOutputSpec, Mark, Node } from '@tiptap/pm/model' import React from 'react' import { renderJSONContentToReactElement } from '../../json/react/react.js' -import { TiptapStaticRendererOptions } from '../../json/renderer.js' +import type { TiptapStaticRendererOptions } from '../../json/renderer.js' import { renderToElement } from '../extensionRenderer.js' /** diff --git a/packages/suggestion/src/findSuggestionMatch.ts b/packages/suggestion/src/findSuggestionMatch.ts index 3341ad57b4..4ef886e3ee 100644 --- a/packages/suggestion/src/findSuggestionMatch.ts +++ b/packages/suggestion/src/findSuggestionMatch.ts @@ -1,5 +1,6 @@ -import { escapeForRegEx, Range } from '@tiptap/core' -import { ResolvedPos } from '@tiptap/pm/model' +import type { Range } from '@tiptap/core' +import { escapeForRegEx } from '@tiptap/core' +import type { ResolvedPos } from '@tiptap/pm/model' export interface Trigger { char: string diff --git a/packages/suggestion/src/suggestion.ts b/packages/suggestion/src/suggestion.ts index 5e1baa4f42..2862b20c73 100644 --- a/packages/suggestion/src/suggestion.ts +++ b/packages/suggestion/src/suggestion.ts @@ -1,6 +1,8 @@ -import { Editor, Range } from '@tiptap/core' -import { EditorState, Plugin, PluginKey } from '@tiptap/pm/state' -import { Decoration, DecorationSet, EditorView } from '@tiptap/pm/view' +import type { Editor, Range } from '@tiptap/core' +import type { EditorState } from '@tiptap/pm/state' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import type { EditorView } from '@tiptap/pm/view' +import { Decoration, DecorationSet } from '@tiptap/pm/view' import { findSuggestionMatch as defaultFindSuggestionMatch } from './findSuggestionMatch.js' diff --git a/packages/vue-2/src/Editor.ts b/packages/vue-2/src/Editor.ts index 5d2aa86ba5..25d81279bb 100644 --- a/packages/vue-2/src/Editor.ts +++ b/packages/vue-2/src/Editor.ts @@ -1,5 +1,5 @@ import { Editor as CoreEditor } from '@tiptap/core' -import Vue from 'vue' +import type Vue from 'vue' export class Editor extends CoreEditor { public contentComponent: Vue | null = null diff --git a/packages/vue-2/src/EditorContent.ts b/packages/vue-2/src/EditorContent.ts index cd60d3f6ec..066782a143 100644 --- a/packages/vue-2/src/EditorContent.ts +++ b/packages/vue-2/src/EditorContent.ts @@ -1,6 +1,7 @@ -import Vue, { Component, CreateElement, PropType } from 'vue' +import type { Component, CreateElement, PropType } from 'vue' +import type Vue from 'vue' -import { Editor } from './Editor.js' +import type { Editor } from './Editor.js' export interface EditorContentInterface extends Vue { editor: Editor diff --git a/packages/vue-2/src/NodeViewContent.ts b/packages/vue-2/src/NodeViewContent.ts index 249321e624..b135ecd37c 100644 --- a/packages/vue-2/src/NodeViewContent.ts +++ b/packages/vue-2/src/NodeViewContent.ts @@ -1,4 +1,5 @@ -import Vue, { Component, CreateElement } from 'vue' +import type { Component, CreateElement } from 'vue' +import type Vue from 'vue' export interface NodeViewContentInterface extends Vue { as: string diff --git a/packages/vue-2/src/NodeViewWrapper.ts b/packages/vue-2/src/NodeViewWrapper.ts index d740e1de47..cc0efba01d 100644 --- a/packages/vue-2/src/NodeViewWrapper.ts +++ b/packages/vue-2/src/NodeViewWrapper.ts @@ -1,4 +1,5 @@ -import Vue, { Component, CreateElement } from 'vue' +import type { Component, CreateElement } from 'vue' +import type Vue from 'vue' export interface NodeViewWrapperInterface extends Vue { as: string diff --git a/packages/vue-2/src/VueNodeViewRenderer.ts b/packages/vue-2/src/VueNodeViewRenderer.ts index bfa46b1378..c572c7dffb 100644 --- a/packages/vue-2/src/VueNodeViewRenderer.ts +++ b/packages/vue-2/src/VueNodeViewRenderer.ts @@ -1,11 +1,12 @@ -import { DecorationWithType, NodeView, NodeViewProps, NodeViewRenderer, NodeViewRendererOptions } from '@tiptap/core' -import { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { Decoration, DecorationSource, NodeView as ProseMirrorNodeView } from '@tiptap/pm/view' +import type { DecorationWithType, NodeViewProps, NodeViewRenderer, NodeViewRendererOptions } from '@tiptap/core' +import { NodeView } from '@tiptap/core' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Decoration, DecorationSource, NodeView as ProseMirrorNodeView } from '@tiptap/pm/view' import Vue from 'vue' -import { VueConstructor } from 'vue/types/umd' +import type { VueConstructor } from 'vue/types/umd' import { booleanProp, functionProp, objectProp } from 'vue-ts-types' -import { Editor } from './Editor.js' +import type { Editor } from './Editor.js' import { VueRenderer } from './VueRenderer.js' export const nodeViewProps = { diff --git a/packages/vue-2/src/VueRenderer.ts b/packages/vue-2/src/VueRenderer.ts index 48095f6142..8f9235e784 100644 --- a/packages/vue-2/src/VueRenderer.ts +++ b/packages/vue-2/src/VueRenderer.ts @@ -1,5 +1,5 @@ import Vue from 'vue' -import { VueConstructor } from 'vue/types/umd' +import type { VueConstructor } from 'vue/types/umd' /** * The VueRenderer class is responsible for rendering a Vue component as a ProseMirror node view. diff --git a/packages/vue-2/src/menus/BubbleMenu.ts b/packages/vue-2/src/menus/BubbleMenu.ts index 2d3f3341f7..97516d1c1b 100644 --- a/packages/vue-2/src/menus/BubbleMenu.ts +++ b/packages/vue-2/src/menus/BubbleMenu.ts @@ -1,5 +1,7 @@ -import { BubbleMenuPlugin, BubbleMenuPluginProps } from '@tiptap/extension-bubble-menu' -import Vue, { Component, CreateElement, PropType } from 'vue' +import type { BubbleMenuPluginProps } from '@tiptap/extension-bubble-menu' +import { BubbleMenuPlugin } from '@tiptap/extension-bubble-menu' +import type { Component, CreateElement, PropType } from 'vue' +import type Vue from 'vue' export interface BubbleMenuInterface extends Vue { pluginKey: BubbleMenuPluginProps['pluginKey'] diff --git a/packages/vue-2/src/menus/FloatingMenu.ts b/packages/vue-2/src/menus/FloatingMenu.ts index 3cda7ba0d3..1578fac1d8 100644 --- a/packages/vue-2/src/menus/FloatingMenu.ts +++ b/packages/vue-2/src/menus/FloatingMenu.ts @@ -1,5 +1,7 @@ -import { FloatingMenuPlugin, FloatingMenuPluginProps } from '@tiptap/extension-floating-menu' -import Vue, { Component, CreateElement, PropType } from 'vue' +import type { FloatingMenuPluginProps } from '@tiptap/extension-floating-menu' +import { FloatingMenuPlugin } from '@tiptap/extension-floating-menu' +import type { Component, CreateElement, PropType } from 'vue' +import type Vue from 'vue' export interface FloatingMenuInterface extends Vue { pluginKey: FloatingMenuPluginProps['pluginKey'] diff --git a/packages/vue-3/src/Editor.ts b/packages/vue-3/src/Editor.ts index 364103764f..7321c66557 100644 --- a/packages/vue-3/src/Editor.ts +++ b/packages/vue-3/src/Editor.ts @@ -1,7 +1,9 @@ /* eslint-disable react-hooks/rules-of-hooks */ -import { Editor as CoreEditor, EditorOptions, Storage } from '@tiptap/core' -import { EditorState, Plugin, PluginKey } from '@tiptap/pm/state' -import { AppContext, ComponentInternalInstance, ComponentPublicInstance, customRef, markRaw, Ref } from 'vue' +import type { EditorOptions, Storage } from '@tiptap/core' +import { Editor as CoreEditor } from '@tiptap/core' +import type { EditorState, Plugin, PluginKey } from '@tiptap/pm/state' +import type { AppContext, ComponentInternalInstance, ComponentPublicInstance, Ref } from 'vue' +import { customRef, markRaw } from 'vue' function useDebouncedRef(value: T) { return customRef((track, trigger) => { diff --git a/packages/vue-3/src/EditorContent.ts b/packages/vue-3/src/EditorContent.ts index c673869013..d318f04180 100644 --- a/packages/vue-3/src/EditorContent.ts +++ b/packages/vue-3/src/EditorContent.ts @@ -1,17 +1,7 @@ -import { - defineComponent, - getCurrentInstance, - h, - nextTick, - onBeforeUnmount, - PropType, - Ref, - ref, - unref, - watchEffect, -} from 'vue' - -import { Editor } from './Editor.js' +import type { PropType, Ref } from 'vue' +import { defineComponent, getCurrentInstance, h, nextTick, onBeforeUnmount, ref, unref, watchEffect } from 'vue' + +import type { Editor } from './Editor.js' export const EditorContent = defineComponent({ name: 'EditorContent', diff --git a/packages/vue-3/src/VueMarkViewRenderer.ts b/packages/vue-3/src/VueMarkViewRenderer.ts index 67a04d1429..c07dfb2278 100644 --- a/packages/vue-3/src/VueMarkViewRenderer.ts +++ b/packages/vue-3/src/VueMarkViewRenderer.ts @@ -1,8 +1,10 @@ /* eslint-disable no-underscore-dangle */ -import { MarkView, MarkViewProps, MarkViewRenderer, MarkViewRendererOptions } from '@tiptap/core' -import { Component, defineComponent, h, PropType } from 'vue' +import type { MarkViewProps, MarkViewRenderer, MarkViewRendererOptions } from '@tiptap/core' +import { MarkView } from '@tiptap/core' +import type { Component, PropType } from 'vue' +import { defineComponent, h } from 'vue' -import { Editor } from './Editor.js' +import type { Editor } from './Editor.js' import { VueRenderer } from './VueRenderer.js' export interface VueMarkViewRendererOptions extends MarkViewRendererOptions { diff --git a/packages/vue-3/src/VueNodeViewRenderer.ts b/packages/vue-3/src/VueNodeViewRenderer.ts index 69a4b25425..ab980ccb24 100644 --- a/packages/vue-3/src/VueNodeViewRenderer.ts +++ b/packages/vue-3/src/VueNodeViewRenderer.ts @@ -1,10 +1,12 @@ /* eslint-disable no-underscore-dangle */ -import { DecorationWithType, NodeView, NodeViewProps, NodeViewRenderer, NodeViewRendererOptions } from '@tiptap/core' -import { Node as ProseMirrorNode } from '@tiptap/pm/model' -import { Decoration, DecorationSource, NodeView as ProseMirrorNodeView } from '@tiptap/pm/view' -import { Component, defineComponent, PropType, provide, Ref, ref } from 'vue' - -import { Editor } from './Editor.js' +import type { DecorationWithType, NodeViewProps, NodeViewRenderer, NodeViewRendererOptions } from '@tiptap/core' +import { NodeView } from '@tiptap/core' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Decoration, DecorationSource, NodeView as ProseMirrorNodeView } from '@tiptap/pm/view' +import type { Component, PropType, Ref } from 'vue' +import { defineComponent, provide, ref } from 'vue' + +import type { Editor } from './Editor.js' import { VueRenderer } from './VueRenderer.js' export const nodeViewProps = { diff --git a/packages/vue-3/src/VueRenderer.ts b/packages/vue-3/src/VueRenderer.ts index 271a2d3d07..0428ee2567 100644 --- a/packages/vue-3/src/VueRenderer.ts +++ b/packages/vue-3/src/VueRenderer.ts @@ -1,7 +1,8 @@ -import { Editor } from '@tiptap/core' -import { Component, DefineComponent, h, markRaw, reactive, render } from 'vue' +import type { Editor } from '@tiptap/core' +import type { Component, DefineComponent } from 'vue' +import { h, markRaw, reactive, render } from 'vue' -import { Editor as ExtendedEditor } from './Editor.js' +import type { Editor as ExtendedEditor } from './Editor.js' export interface VueRendererOptions { editor: Editor diff --git a/packages/vue-3/src/menus/BubbleMenu.ts b/packages/vue-3/src/menus/BubbleMenu.ts index f72812e167..673775e981 100644 --- a/packages/vue-3/src/menus/BubbleMenu.ts +++ b/packages/vue-3/src/menus/BubbleMenu.ts @@ -1,5 +1,7 @@ -import { BubbleMenuPlugin, BubbleMenuPluginProps } from '@tiptap/extension-bubble-menu' -import { defineComponent, h, onBeforeUnmount, onMounted, PropType, ref, Teleport } from 'vue' +import type { BubbleMenuPluginProps } from '@tiptap/extension-bubble-menu' +import { BubbleMenuPlugin } from '@tiptap/extension-bubble-menu' +import type { PropType } from 'vue' +import { defineComponent, h, onBeforeUnmount, onMounted, ref, Teleport } from 'vue' export const BubbleMenu = defineComponent({ name: 'BubbleMenu', diff --git a/packages/vue-3/src/menus/FloatingMenu.ts b/packages/vue-3/src/menus/FloatingMenu.ts index 419f33a670..c5d15f1996 100644 --- a/packages/vue-3/src/menus/FloatingMenu.ts +++ b/packages/vue-3/src/menus/FloatingMenu.ts @@ -1,5 +1,7 @@ -import { FloatingMenuPlugin, FloatingMenuPluginProps } from '@tiptap/extension-floating-menu' -import { defineComponent, h, onBeforeUnmount, onMounted, PropType, ref, Teleport } from 'vue' +import type { FloatingMenuPluginProps } from '@tiptap/extension-floating-menu' +import { FloatingMenuPlugin } from '@tiptap/extension-floating-menu' +import type { PropType } from 'vue' +import { defineComponent, h, onBeforeUnmount, onMounted, ref, Teleport } from 'vue' export const FloatingMenu = defineComponent({ name: 'FloatingMenu', diff --git a/packages/vue-3/src/useEditor.ts b/packages/vue-3/src/useEditor.ts index 9072153278..dcc70c3f33 100644 --- a/packages/vue-3/src/useEditor.ts +++ b/packages/vue-3/src/useEditor.ts @@ -1,4 +1,4 @@ -import { EditorOptions } from '@tiptap/core' +import type { EditorOptions } from '@tiptap/core' import { onBeforeUnmount, onMounted, shallowRef } from 'vue' import { Editor } from './Editor.js' diff --git a/tests/cypress/integration/core/generateText.spec.ts b/tests/cypress/integration/core/generateText.spec.ts index 466cccaa0f..abc9ff1de5 100644 --- a/tests/cypress/integration/core/generateText.spec.ts +++ b/tests/cypress/integration/core/generateText.spec.ts @@ -1,6 +1,7 @@ /// -import { generateText, Node, NodeConfig } from '@tiptap/core' +import type { NodeConfig } from '@tiptap/core' +import { generateText, Node } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' diff --git a/tests/cypress/integration/static-renderer/json-string.spec.ts b/tests/cypress/integration/static-renderer/json-string.spec.ts index 134731d326..6fb6dabea1 100644 --- a/tests/cypress/integration/static-renderer/json-string.spec.ts +++ b/tests/cypress/integration/static-renderer/json-string.spec.ts @@ -1,6 +1,6 @@ /// -import { TextType } from '@tiptap/core' +import type { TextType } from '@tiptap/core' import Bold from '@tiptap/extension-bold' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' From d8a3d93c8ae7984e9d169ffba0c0a9e6c74e94ec Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 12 Mar 2025 14:55:16 +0100 Subject: [PATCH 112/629] Rename History extension to UndoRedo (#6172) * rename history extension to undo-redo * added changesets * fix spacing in vue demo --- .changeset/chilled-trees-agree.md | 2 +- .changeset/chilly-lemons-remember.md | 6 +- .changeset/cuddly-impalas-heal.md | 2 +- .changeset/pre.json | 2 +- .changeset/thirty-rockets-act.md | 5 ++ .vscode/settings.json | 2 +- codemods/tiptap-2-migrate-imports/README.md | 63 ++++++++----------- .../__testfixtures__/fixture6.input | 2 +- .../__testfixtures__/fixture6.output | 2 +- .../tiptap-2-migrate-imports/src/index.ts | 4 +- .../CollaborationSplitPane/React/Editor.jsx | 2 +- .../Demos/SingleRoomCollab/React/index.jsx | 2 +- .../CollaborativeEditing/React/index.jsx | 2 +- demos/src/Experiments/All/Vue/index.vue | 4 +- .../{History => UndoRedo}/React/index.html | 0 .../{History => UndoRedo}/React/index.jsx | 10 +-- .../{History => UndoRedo}/React/index.spec.js | 4 +- .../{History => UndoRedo}/React/styles.scss | 0 .../{History => UndoRedo}/Vue/index.html | 0 .../{History => UndoRedo}/Vue/index.spec.js | 4 +- .../{History => UndoRedo}/Vue/index.vue | 6 +- .../src/collaboration.ts | 4 +- packages/extension-history/src/index.ts | 6 -- .../CHANGELOG.md | 0 .../README.md | 8 +-- .../package.json | 4 +- packages/extension-undo-redo/src/index.ts | 6 ++ .../tsup.config.ts | 0 packages/extensions/package.json | 10 +-- packages/extensions/src/history/index.ts | 1 - packages/extensions/src/index.ts | 2 +- packages/extensions/src/undo-redo/index.ts | 1 + .../history.ts => undo-redo/undo-redo.ts} | 12 ++-- packages/extensions/tsup.config.ts | 2 +- packages/pm/tsup.config.ts | 2 +- packages/starter-kit/package.json | 2 +- packages/starter-kit/src/starter-kit.ts | 14 ++--- pnpm-lock.yaml | 18 +++--- tests/cypress/integration/core/can.spec.ts | 28 ++++----- 39 files changed, 119 insertions(+), 125 deletions(-) create mode 100644 .changeset/thirty-rockets-act.md rename demos/src/Extensions/{History => UndoRedo}/React/index.html (100%) rename demos/src/Extensions/{History => UndoRedo}/React/index.jsx (75%) rename demos/src/Extensions/{History => UndoRedo}/React/index.spec.js (96%) rename demos/src/Extensions/{History => UndoRedo}/React/styles.scss (100%) rename demos/src/Extensions/{History => UndoRedo}/Vue/index.html (100%) rename demos/src/Extensions/{History => UndoRedo}/Vue/index.spec.js (96%) rename demos/src/Extensions/{History => UndoRedo}/Vue/index.vue (79%) delete mode 100644 packages/extension-history/src/index.ts rename packages/{extension-history => extension-undo-redo}/CHANGELOG.md (100%) rename packages/{extension-history => extension-undo-redo}/README.md (58%) rename packages/{extension-history => extension-undo-redo}/package.json (92%) create mode 100644 packages/extension-undo-redo/src/index.ts rename packages/{extension-history => extension-undo-redo}/tsup.config.ts (100%) delete mode 100644 packages/extensions/src/history/index.ts create mode 100644 packages/extensions/src/undo-redo/index.ts rename packages/extensions/src/{history/history.ts => undo-redo/undo-redo.ts} (86%) diff --git a/.changeset/chilled-trees-agree.md b/.changeset/chilled-trees-agree.md index 8d4466e811..b58032302e 100644 --- a/.changeset/chilled-trees-agree.md +++ b/.changeset/chilled-trees-agree.md @@ -32,7 +32,7 @@ '@tiptap/extension-underline': major '@tiptap/extension-document': major '@tiptap/extension-heading': major -'@tiptap/extension-history': major +'@tiptap/extension-undo-redo': major '@tiptap/extension-mention': major '@tiptap/extension-youtube': major '@tiptap/extension-italic': major diff --git a/.changeset/chilly-lemons-remember.md b/.changeset/chilly-lemons-remember.md index 7b89d4740b..734f0deeb0 100644 --- a/.changeset/chilly-lemons-remember.md +++ b/.changeset/chilly-lemons-remember.md @@ -59,17 +59,17 @@ import { GapCursor } from '@tiptap/extensions' This extension adds undo and redo functionality to the editor. -Migrate from `@tiptap/extension-history` to `@tiptap/extensions`: +Migrate from `@tiptap/extension-undo-redo` to `@tiptap/extensions`: ```diff -- import History from '@tiptap/extension-history' +- import History from '@tiptap/extension-undo-redo' + import { History } from '@tiptap/extensions' ``` Usage: ```ts -import { History, HistoryOptions } from '@tiptap/extensions' +import { UndoRedo, UndoRedoOptions } from '@tiptap/extensions' ``` ## Placeholder diff --git a/.changeset/cuddly-impalas-heal.md b/.changeset/cuddly-impalas-heal.md index 1f89c1e229..c45428757e 100644 --- a/.changeset/cuddly-impalas-heal.md +++ b/.changeset/cuddly-impalas-heal.md @@ -22,7 +22,7 @@ '@tiptap/extension-hard-break': patch '@tiptap/extension-heading': patch '@tiptap/extension-highlight': patch -'@tiptap/extension-history': patch +'@tiptap/extension-undo-redo': patch '@tiptap/extension-horizontal-rule': patch '@tiptap/extension-image': patch '@tiptap/extension-italic': patch diff --git a/.changeset/pre.json b/.changeset/pre.json index c0197b5028..9be8ebf664 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -24,7 +24,7 @@ "@tiptap/extension-hard-break": "2.11.4", "@tiptap/extension-heading": "2.11.4", "@tiptap/extension-highlight": "2.11.4", - "@tiptap/extension-history": "2.11.4", + "@tiptap/extension-undo-redo": "2.11.4", "@tiptap/extension-horizontal-rule": "2.11.4", "@tiptap/extension-image": "2.11.4", "@tiptap/extension-italic": "2.11.4", diff --git a/.changeset/thirty-rockets-act.md b/.changeset/thirty-rockets-act.md new file mode 100644 index 0000000000..3159554e63 --- /dev/null +++ b/.changeset/thirty-rockets-act.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-undo-redo': major +--- + +Rename history extension to undo-redo to clarify it's functionality and separate itself from other history-related extensions. diff --git a/.vscode/settings.json b/.vscode/settings.json index 791ff78ce9..17399a5cbc 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -27,7 +27,7 @@ "extension/hard-break", "extension/heading", "extension/highlight", - "extension/history", + "extension/undo-redo", "extension/horizontal-rule", "extension/image", "extension/italic", diff --git a/codemods/tiptap-2-migrate-imports/README.md b/codemods/tiptap-2-migrate-imports/README.md index b0e1d40a57..e482c98630 100644 --- a/codemods/tiptap-2-migrate-imports/README.md +++ b/codemods/tiptap-2-migrate-imports/README.md @@ -1,5 +1,4 @@ - -This is a [codemod](https://codemod.com) created with [```codemod init```](https://docs.codemod.com/deploying-codemods/cli#codemod-init). +This is a [codemod](https://codemod.com) created with [`codemod init`](https://docs.codemod.com/deploying-codemods/cli#codemod-init). ## Using this codemod @@ -12,21 +11,16 @@ npx codemod tiptap-2-migrate-imports ### Before ```ts -import Table from '@tiptap/extension-table'; -import TableRow from '@tiptap/extension-table-row'; -import TableCell from '@tiptap/extension-table-cell'; -import TableHeader from '@tiptap/extension-table-header'; +import Table from "@tiptap/extension-table"; +import TableRow from "@tiptap/extension-table-row"; +import TableCell from "@tiptap/extension-table-cell"; +import TableHeader from "@tiptap/extension-table-header"; ``` ### After ```ts -import { - Table, - TableRow, - TableCell, - TableHeader, -} from '@tiptap/extension-table'; +import { Table, TableRow, TableCell, TableHeader } from "@tiptap/extension-table"; ``` , @@ -34,21 +28,16 @@ import { ### Before ```ts -import { Table } from '@tiptap/extension-table'; -import { TableRow } from '@tiptap/extension-table-row'; -import { TableCell } from '@tiptap/extension-table-cell'; -import { TableHeader } from '@tiptap/extension-table-header'; +import { Table } from "@tiptap/extension-table"; +import { TableRow } from "@tiptap/extension-table-row"; +import { TableCell } from "@tiptap/extension-table-cell"; +import { TableHeader } from "@tiptap/extension-table-header"; ``` ### After ```ts -import { - Table, - TableRow, - TableCell, - TableHeader, -} from '@tiptap/extension-table'; +import { Table, TableRow, TableCell, TableHeader } from "@tiptap/extension-table"; ``` , @@ -56,10 +45,10 @@ import { ### Before ```ts -import Table1 from '@tiptap/extension-table'; -import TableR from '@tiptap/extension-table-row'; -import TableCel from '@tiptap/extension-table-cell'; -import TableHead from '@tiptap/extension-table-header'; +import Table1 from "@tiptap/extension-table"; +import TableR from "@tiptap/extension-table-row"; +import TableCel from "@tiptap/extension-table-cell"; +import TableHead from "@tiptap/extension-table-header"; ``` ### After @@ -70,7 +59,7 @@ import { TableRow as TableR, TableCell as TableCel, TableHeader as TableHead, -} from '@tiptap/extension-table'; +} from "@tiptap/extension-table"; ``` , @@ -78,15 +67,15 @@ import { ### Before ```ts -import BulletList from '@tiptap/extension-bullet-list'; -import OrderedList from '@tiptap/extension-ordered-list'; -import ListItem from '@tiptap/extension-list-item'; +import BulletList from "@tiptap/extension-bullet-list"; +import OrderedList from "@tiptap/extension-ordered-list"; +import ListItem from "@tiptap/extension-list-item"; ``` ### After ```ts -import { BulletList, OrderedList, ListItem } from '@tiptap/extension-list'; +import { BulletList, OrderedList, ListItem } from "@tiptap/extension-list"; ``` , @@ -94,14 +83,14 @@ import { BulletList, OrderedList, ListItem } from '@tiptap/extension-list'; ### Before ```ts -import TextStyle from '@tiptap/extension-text-style'; -import { Color } from '@tiptap/extension-color'; +import TextStyle from "@tiptap/extension-text-style"; +import { Color } from "@tiptap/extension-color"; ``` ### After ```ts -import { TextStyle, Color } from '@tiptap/extension-text-style'; +import { TextStyle, Color } from "@tiptap/extension-text-style"; ``` , @@ -109,12 +98,12 @@ import { TextStyle, Color } from '@tiptap/extension-text-style'; ### Before ```ts -import { PlaceHolder } from '@tiptap/extension-placeholder'; -import History from '@tiptap/extension-history'; +import { PlaceHolder } from "@tiptap/extension-placeholder"; +import UndoRedo from "@tiptap/extension-undo-redo"; ``` ### After ```ts -import { PlaceHolder, History } from '@tiptap/extensions'; +import { PlaceHolder, UndoRedo } from "@tiptap/extensions"; ``` diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input index 14384872da..d4ae141f09 100644 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input @@ -1,2 +1,2 @@ -import History from "@tiptap/extension-history"; +import UndoRedo from "@tiptap/extension-undo-redo"; import { Placeholder } from "@tiptap/extension-placeholder"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output index 3254473733..b972782ace 100644 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output +++ b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output @@ -1 +1 @@ -import { History, Placeholder } from "@tiptap/extensions"; +import { UndoRedo, Placeholder } from "@tiptap/extensions"; diff --git a/codemods/tiptap-2-migrate-imports/src/index.ts b/codemods/tiptap-2-migrate-imports/src/index.ts index e1a52f893b..0bdc1b28f1 100644 --- a/codemods/tiptap-2-migrate-imports/src/index.ts +++ b/codemods/tiptap-2-migrate-imports/src/index.ts @@ -27,7 +27,7 @@ export default function transform(file: any, api: any) { "@tiptap/extension-dropcursor": "Dropcursor", "@tiptap/extension-gapcursor": "Gapcursor", "@tiptap/extension-focus": "Focus", - "@tiptap/extension-history": "History", + "@tiptap/extension-undo-redo": "UndoRedo", "@tiptap/extension-placeholder": "Placeholder", }; @@ -53,7 +53,7 @@ export default function transform(file: any, api: any) { "@tiptap/extension-dropcursor": "@tiptap/extensions", "@tiptap/extension-gapcursor": "@tiptap/extensions", "@tiptap/extension-focus": "@tiptap/extensions", - "@tiptap/extension-history": "@tiptap/extensions", + "@tiptap/extension-undo-redo": "@tiptap/extensions", "@tiptap/extension-placeholder": "@tiptap/extensions", }; diff --git a/demos/src/Demos/CollaborationSplitPane/React/Editor.jsx b/demos/src/Demos/CollaborationSplitPane/React/Editor.jsx index 15959b2172..607542908d 100644 --- a/demos/src/Demos/CollaborationSplitPane/React/Editor.jsx +++ b/demos/src/Demos/CollaborationSplitPane/React/Editor.jsx @@ -95,7 +95,7 @@ const Editor = ({ ydoc, provider, room }) => { }, extensions: [ StarterKit.configure({ - history: false, + undoRedo: false, }), Highlight, TaskList, diff --git a/demos/src/Demos/SingleRoomCollab/React/index.jsx b/demos/src/Demos/SingleRoomCollab/React/index.jsx index 7497017a6e..a85d2ccd3d 100644 --- a/demos/src/Demos/SingleRoomCollab/React/index.jsx +++ b/demos/src/Demos/SingleRoomCollab/React/index.jsx @@ -67,7 +67,7 @@ export default () => { const editor = useEditor({ extensions: [ StarterKit.configure({ - history: false, + undoRedo: false, }), CharacterCount.configure({ limit: 10000, diff --git a/demos/src/Examples/CollaborativeEditing/React/index.jsx b/demos/src/Examples/CollaborativeEditing/React/index.jsx index f09dd119e0..a230a74786 100644 --- a/demos/src/Examples/CollaborativeEditing/React/index.jsx +++ b/demos/src/Examples/CollaborativeEditing/React/index.jsx @@ -78,7 +78,7 @@ export default () => { const editor = useEditor({ extensions: [ StarterKit.configure({ - history: false, + undoRedo: false, }), Highlight, TaskList, diff --git a/demos/src/Experiments/All/Vue/index.vue b/demos/src/Experiments/All/Vue/index.vue index 6b38b7ef22..d039e01eba 100644 --- a/demos/src/Experiments/All/Vue/index.vue +++ b/demos/src/Experiments/All/Vue/index.vue @@ -122,7 +122,7 @@ import Text from '@tiptap/extension-text' import TextAlign from '@tiptap/extension-text-align' import { Color, TextStyle } from '@tiptap/extension-text-style' import Underline from '@tiptap/extension-underline' -import { Dropcursor, Gapcursor, History, Placeholder } from '@tiptap/extensions' +import { Dropcursor, Gapcursor, Placeholder, UndoRedo } from '@tiptap/extensions' import { Editor, EditorContent } from '@tiptap/vue-3' import { all, createLowlight } from 'lowlight' @@ -154,7 +154,7 @@ export default { Gapcursor, HardBreak, Heading, - History, + UndoRedo, HorizontalRule, Italic, ListItem, diff --git a/demos/src/Extensions/History/React/index.html b/demos/src/Extensions/UndoRedo/React/index.html similarity index 100% rename from demos/src/Extensions/History/React/index.html rename to demos/src/Extensions/UndoRedo/React/index.html diff --git a/demos/src/Extensions/History/React/index.jsx b/demos/src/Extensions/UndoRedo/React/index.jsx similarity index 75% rename from demos/src/Extensions/History/React/index.jsx rename to demos/src/Extensions/UndoRedo/React/index.jsx index 05be8b9935..1b9a6c2798 100644 --- a/demos/src/Extensions/History/React/index.jsx +++ b/demos/src/Extensions/UndoRedo/React/index.jsx @@ -3,16 +3,16 @@ import './styles.scss' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { History } from '@tiptap/extensions' +import { UndoRedo } from '@tiptap/extensions' import { EditorContent, useEditor, useEditorState } from '@tiptap/react' import React from 'react' export default () => { const editor = useEditor({ - extensions: [Document, Paragraph, Text, History], + extensions: [Document, Paragraph, Text, UndoRedo], content: `

- With the History extension the Editor will keep track of your changes. And if you think you made a mistake, you can redo your changes. Try it out, change the content and hit the undo button! + With the UndoRedo extension the Editor will keep track of your changes. And if you think you made a mistake, you can redo your changes. Try it out, change the content and hit the undo button!

And yes, you can also use a keyboard shortcut to undo changes (Control/Cmd Z) or redo changes (Control/Cmd Shift Z). @@ -38,10 +38,10 @@ export default () => { <>

- -
diff --git a/demos/src/Extensions/History/React/index.spec.js b/demos/src/Extensions/UndoRedo/React/index.spec.js similarity index 96% rename from demos/src/Extensions/History/React/index.spec.js rename to demos/src/Extensions/UndoRedo/React/index.spec.js index b358de7fbc..cf433e018f 100644 --- a/demos/src/Extensions/History/React/index.spec.js +++ b/demos/src/Extensions/UndoRedo/React/index.spec.js @@ -1,6 +1,6 @@ -context('/src/Extensions/History/React/', () => { +context('/src/Extensions/UndoRedo/React/', () => { beforeEach(() => { - cy.visit('/src/Extensions/History/React/') + cy.visit('/src/Extensions/UndoRedo/React/') cy.get('.tiptap').then(([{ editor }]) => { editor.commands.setContent('

Mistake

') }) diff --git a/demos/src/Extensions/History/React/styles.scss b/demos/src/Extensions/UndoRedo/React/styles.scss similarity index 100% rename from demos/src/Extensions/History/React/styles.scss rename to demos/src/Extensions/UndoRedo/React/styles.scss diff --git a/demos/src/Extensions/History/Vue/index.html b/demos/src/Extensions/UndoRedo/Vue/index.html similarity index 100% rename from demos/src/Extensions/History/Vue/index.html rename to demos/src/Extensions/UndoRedo/Vue/index.html diff --git a/demos/src/Extensions/History/Vue/index.spec.js b/demos/src/Extensions/UndoRedo/Vue/index.spec.js similarity index 96% rename from demos/src/Extensions/History/Vue/index.spec.js rename to demos/src/Extensions/UndoRedo/Vue/index.spec.js index cce2f33277..09cf592395 100644 --- a/demos/src/Extensions/History/Vue/index.spec.js +++ b/demos/src/Extensions/UndoRedo/Vue/index.spec.js @@ -1,6 +1,6 @@ -context('/src/Extensions/History/Vue/', () => { +context('/src/Extensions/UndoRedo/Vue/', () => { beforeEach(() => { - cy.visit('/src/Extensions/History/Vue/') + cy.visit('/src/Extensions/UndoRedo/Vue/') cy.get('.tiptap').then(([{ editor }]) => { editor.commands.setContent('

Mistake

') }) diff --git a/demos/src/Extensions/History/Vue/index.vue b/demos/src/Extensions/UndoRedo/Vue/index.vue similarity index 79% rename from demos/src/Extensions/History/Vue/index.vue rename to demos/src/Extensions/UndoRedo/Vue/index.vue index e6b72407a3..5f38ecc01c 100644 --- a/demos/src/Extensions/History/Vue/index.vue +++ b/demos/src/Extensions/UndoRedo/Vue/index.vue @@ -14,7 +14,7 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { History } from '@tiptap/extensions' +import { UndoRedo } from '@tiptap/extensions' import { Editor, EditorContent } from '@tiptap/vue-3' export default { @@ -30,10 +30,10 @@ export default { mounted() { this.editor = new Editor({ - extensions: [Document, Paragraph, Text, History], + extensions: [Document, Paragraph, Text, UndoRedo], content: `

- With the History extension the Editor will keep track of your changes. And if you think you made a mistake, you can redo your changes. Try it out, change the content and hit the undo button! + With the UndoRedo extension the Editor will keep track of your changes. And if you think you made a mistake, you can redo your changes. Try it out, change the content and hit the undo button!

And yes, you can also use a keyboard shortcut to undo changes (Control/Cmd Z) or redo changes (Control/Cmd Shift Z). diff --git a/packages/extension-collaboration/src/collaboration.ts b/packages/extension-collaboration/src/collaboration.ts index 84c64d4bbb..bf0e322b9a 100644 --- a/packages/extension-collaboration/src/collaboration.ts +++ b/packages/extension-collaboration/src/collaboration.ts @@ -96,9 +96,9 @@ export const Collaboration = Extension.create extension.name === 'history')) { + if (this.editor.extensionManager.extensions.find(extension => extension.name === 'undoRedo')) { console.warn( - '[tiptap warn]: "@tiptap/extension-collaboration" comes with its own history support and is not compatible with "@tiptap/extension-history".', + '[tiptap warn]: "@tiptap/extension-collaboration" comes with its own history support and is not compatible with "@tiptap/extension-undo-redo".', ) } }, diff --git a/packages/extension-history/src/index.ts b/packages/extension-history/src/index.ts deleted file mode 100644 index a59b68eec5..0000000000 --- a/packages/extension-history/src/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { History } from '@tiptap/extensions' - -export type { HistoryOptions } from '@tiptap/extensions' -export { History } from '@tiptap/extensions' - -export default History diff --git a/packages/extension-history/CHANGELOG.md b/packages/extension-undo-redo/CHANGELOG.md similarity index 100% rename from packages/extension-history/CHANGELOG.md rename to packages/extension-undo-redo/CHANGELOG.md diff --git a/packages/extension-history/README.md b/packages/extension-undo-redo/README.md similarity index 58% rename from packages/extension-history/README.md rename to packages/extension-undo-redo/README.md index 5562a4cb4b..14e9f180ba 100644 --- a/packages/extension-history/README.md +++ b/packages/extension-undo-redo/README.md @@ -1,8 +1,8 @@ -# @tiptap/extension-history +# @tiptap/extension-undo-redo -[![Version](https://img.shields.io/npm/v/@tiptap/extension-history.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-history) -[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-history.svg)](https://npmcharts.com/compare/tiptap?minimal=true) -[![License](https://img.shields.io/npm/l/@tiptap/extension-history.svg)](https://www.npmjs.com/package/@tiptap/extension-history) +[![Version](https://img.shields.io/npm/v/@tiptap/extension-undo-redo.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-undo-redo) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-undo-redo.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-undo-redo.svg)](https://www.npmjs.com/package/@tiptap/extension-undo-redo) [![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) ## Introduction diff --git a/packages/extension-history/package.json b/packages/extension-undo-redo/package.json similarity index 92% rename from packages/extension-history/package.json rename to packages/extension-undo-redo/package.json index 2732d1dee2..f2644c1cd6 100644 --- a/packages/extension-history/package.json +++ b/packages/extension-undo-redo/package.json @@ -1,5 +1,5 @@ { - "name": "@tiptap/extension-history", + "name": "@tiptap/extension-undo-redo", "description": "history extension for tiptap", "version": "3.0.0-next.6", "homepage": "https://tiptap.dev", @@ -39,7 +39,7 @@ "repository": { "type": "git", "url": "https://github.com/ueberdosis/tiptap", - "directory": "packages/extension-history" + "directory": "packages/extension-undo-redo" }, "scripts": { "build": "tsup", diff --git a/packages/extension-undo-redo/src/index.ts b/packages/extension-undo-redo/src/index.ts new file mode 100644 index 0000000000..f8e5683d30 --- /dev/null +++ b/packages/extension-undo-redo/src/index.ts @@ -0,0 +1,6 @@ +import { UndoRedo } from '@tiptap/extensions' + +export type { UndoRedoOptions } from '@tiptap/extensions' +export { UndoRedo } from '@tiptap/extensions' + +export default UndoRedo diff --git a/packages/extension-history/tsup.config.ts b/packages/extension-undo-redo/tsup.config.ts similarity index 100% rename from packages/extension-history/tsup.config.ts rename to packages/extension-undo-redo/tsup.config.ts diff --git a/packages/extensions/package.json b/packages/extensions/package.json index d43862f4a6..99d82ecaba 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -54,13 +54,13 @@ "import": "./dist/gap-cursor/index.js", "require": "./dist/gap-cursor/index.cjs" }, - "./history": { + "./undo-redo": { "types": { - "import": "./dist/history/index.d.ts", - "require": "./dist/history/index.d.cts" + "import": "./dist/undo-redo/index.d.ts", + "require": "./dist/undo-redo/index.d.cts" }, - "import": "./dist/history/index.js", - "require": "./dist/history/index.cjs" + "import": "./dist/undo-redo/index.js", + "require": "./dist/undo-redo/index.cjs" }, "./placeholder": { "types": { diff --git a/packages/extensions/src/history/index.ts b/packages/extensions/src/history/index.ts deleted file mode 100644 index 7f94d05e11..0000000000 --- a/packages/extensions/src/history/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './history.js' diff --git a/packages/extensions/src/index.ts b/packages/extensions/src/index.ts index f3bb0c4349..01cd65265a 100644 --- a/packages/extensions/src/index.ts +++ b/packages/extensions/src/index.ts @@ -2,7 +2,7 @@ export * from './character-count/index.js' export * from './drop-cursor/index.js' export * from './focus/index.js' export * from './gap-cursor/index.js' -export * from './history/index.js' export * from './placeholder/index.js' export * from './selection/index.js' export * from './trailing-node/index.js' +export * from './undo-redo/index.js' diff --git a/packages/extensions/src/undo-redo/index.ts b/packages/extensions/src/undo-redo/index.ts new file mode 100644 index 0000000000..f76d984073 --- /dev/null +++ b/packages/extensions/src/undo-redo/index.ts @@ -0,0 +1 @@ +export * from './undo-redo.js' diff --git a/packages/extensions/src/history/history.ts b/packages/extensions/src/undo-redo/undo-redo.ts similarity index 86% rename from packages/extensions/src/history/history.ts rename to packages/extensions/src/undo-redo/undo-redo.ts index fd99c20186..cc2d59f412 100644 --- a/packages/extensions/src/history/history.ts +++ b/packages/extensions/src/undo-redo/undo-redo.ts @@ -1,7 +1,7 @@ import { Extension } from '@tiptap/core' import { history, redo, undo } from '@tiptap/pm/history' -export interface HistoryOptions { +export interface UndoRedoOptions { /** * The amount of history events that are collected before the oldest events are discarded. * @default 100 @@ -19,7 +19,7 @@ export interface HistoryOptions { declare module '@tiptap/core' { interface Commands { - history: { + undoRedo: { /** * Undo recent changes * @example editor.commands.undo() @@ -36,15 +36,15 @@ declare module '@tiptap/core' { /** * This extension allows you to undo and redo recent changes. - * @see https://www.tiptap.dev/api/extensions/history + * @see https://www.tiptap.dev/api/extensions/undo-redo * * **Important**: If the `@tiptap/extension-collaboration` package is used, make sure to remove - * the `history` extension, as it is not compatible with the `collaboration` extension. + * the `undo-redo` extension, as it is not compatible with the `collaboration` extension. * * `@tiptap/extension-collaboration` uses its own history implementation. */ -export const History = Extension.create({ - name: 'history', +export const UndoRedo = Extension.create({ + name: 'undoRedo', addOptions() { return { diff --git a/packages/extensions/tsup.config.ts b/packages/extensions/tsup.config.ts index 541ce5b226..a2f406fc6b 100644 --- a/packages/extensions/tsup.config.ts +++ b/packages/extensions/tsup.config.ts @@ -6,7 +6,7 @@ export default defineConfig( 'src/drop-cursor/index.ts', 'src/focus/index.ts', 'src/gap-cursor/index.ts', - 'src/history/index.ts', + 'src/undo-redo/index.ts', 'src/placeholder/index.ts', 'src/selection/index.ts', 'src/trailing-node/index.ts', diff --git a/packages/pm/tsup.config.ts b/packages/pm/tsup.config.ts index 7e710bb240..6b0f04a50a 100644 --- a/packages/pm/tsup.config.ts +++ b/packages/pm/tsup.config.ts @@ -7,7 +7,7 @@ export default defineConfig({ 'commands/index.ts', 'dropcursor/index.ts', 'gapcursor/index.ts', - 'history/index.ts', + 'undo-redo/index.ts', 'inputrules/index.ts', 'keymap/index.ts', 'markdown/index.ts', diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 9c9281af98..4a7ffbbac5 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -42,7 +42,7 @@ "@tiptap/extension-gapcursor": "^3.0.0-next.6", "@tiptap/extension-hard-break": "^3.0.0-next.6", "@tiptap/extension-heading": "^3.0.0-next.6", - "@tiptap/extension-history": "^3.0.0-next.6", + "@tiptap/extension-undo-redo": "^3.0.0-next.6", "@tiptap/extension-horizontal-rule": "^3.0.0-next.6", "@tiptap/extension-italic": "^3.0.0-next.6", "@tiptap/extension-link": "^3.0.0-next.6", diff --git a/packages/starter-kit/src/starter-kit.ts b/packages/starter-kit/src/starter-kit.ts index 14a8721705..b42fcd42a1 100644 --- a/packages/starter-kit/src/starter-kit.ts +++ b/packages/starter-kit/src/starter-kit.ts @@ -27,8 +27,8 @@ import { Strike } from '@tiptap/extension-strike' import { Text } from '@tiptap/extension-text' import type { UnderlineOptions } from '@tiptap/extension-underline' import { Underline } from '@tiptap/extension-underline' -import type { DropcursorOptions, HistoryOptions, TrailingNodeOptions } from '@tiptap/extensions' -import { Dropcursor, Gapcursor, History, TrailingNode } from '@tiptap/extensions' +import type { DropcursorOptions, TrailingNodeOptions, UndoRedoOptions } from '@tiptap/extensions' +import { Dropcursor, Gapcursor, TrailingNode, UndoRedo } from '@tiptap/extensions' export interface StarterKitOptions { /** @@ -92,10 +92,10 @@ export interface StarterKitOptions { heading: Partial | false /** - * If set to false, the history extension will not be registered - * @example history: false + * If set to false, the undo-redo extension will not be registered + * @example undoRedo: false */ - history: Partial | false + undoRedo: Partial | false /** * If set to false, the horizontalRule extension will not be registered @@ -215,8 +215,8 @@ export const StarterKit = Extension.create({ extensions.push(Heading.configure(this.options?.heading)) } - if (this.options.history !== false) { - extensions.push(History.configure(this.options?.history)) + if (this.options.undoRedo !== false) { + extensions.push(UndoRedo.configure(this.options?.undoRedo)) } if (this.options.horizontalRule !== false) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5990be4afd..6c23491bcb 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -490,12 +490,6 @@ importers: specifier: ^3.0.0-next.6 version: link:../core - packages/extension-history: - devDependencies: - '@tiptap/extensions': - specifier: ^3.0.0-next.6 - version: link:../extensions - packages/extension-horizontal-rule: devDependencies: '@tiptap/core': @@ -674,6 +668,12 @@ importers: specifier: ^3.0.0-next.6 version: link:../core + packages/extension-undo-redo: + devDependencies: + '@tiptap/extensions': + specifier: ^3.0.0-next.6 + version: link:../extensions + packages/extension-youtube: devDependencies: '@tiptap/core': @@ -832,9 +832,6 @@ importers: '@tiptap/extension-heading': specifier: ^3.0.0-next.6 version: link:../extension-heading - '@tiptap/extension-history': - specifier: ^3.0.0-next.6 - version: link:../extension-history '@tiptap/extension-horizontal-rule': specifier: ^3.0.0-next.6 version: link:../extension-horizontal-rule @@ -865,6 +862,9 @@ importers: '@tiptap/extension-underline': specifier: ^3.0.0-next.6 version: link:../extension-underline + '@tiptap/extension-undo-redo': + specifier: ^3.0.0-next.6 + version: link:../extension-undo-redo '@tiptap/extensions': specifier: ^3.0.0-next.6 version: link:../extensions diff --git a/tests/cypress/integration/core/can.spec.ts b/tests/cypress/integration/core/can.spec.ts index ce4311bf54..3e91bf00c9 100644 --- a/tests/cypress/integration/core/can.spec.ts +++ b/tests/cypress/integration/core/can.spec.ts @@ -7,12 +7,12 @@ import CodeBlock from '@tiptap/extension-code-block' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { History } from '@tiptap/extensions' +import { UndoRedo } from '@tiptap/extensions' describe('can', () => { it('not undo', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History], + extensions: [Document, Paragraph, Text, UndoRedo], }) const canUndo = editor.can().undo() @@ -22,7 +22,7 @@ describe('can', () => { it('undo', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History], + extensions: [Document, Paragraph, Text, UndoRedo], }) editor.commands.setContent('foo') @@ -34,7 +34,7 @@ describe('can', () => { it('not chain undo', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History], + extensions: [Document, Paragraph, Text, UndoRedo], }) const canUndo = editor.can().chain().undo().run() @@ -44,7 +44,7 @@ describe('can', () => { it('chain undo', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History], + extensions: [Document, Paragraph, Text, UndoRedo], }) editor.commands.setContent('foo') @@ -56,7 +56,7 @@ describe('can', () => { it('returns false for non-applicable marks when selection contains node in conflict', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History, CodeBlock, Bold], + extensions: [Document, Paragraph, Text, UndoRedo, CodeBlock, Bold], }) editor @@ -74,7 +74,7 @@ describe('can', () => { it('returns false for non-applicable marks when selection contains marks in conflict', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History, Code, Bold], + extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) editor.chain().setContent('test').setTextSelection({ from: 2, to: 3 }).run() @@ -86,7 +86,7 @@ describe('can', () => { it('returns false for non-applicable marks when stored marks in conflict', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History, Code, Bold], + extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) editor.chain().setContent('test').run() @@ -98,7 +98,7 @@ describe('can', () => { it('returns false for non-applicable marks when selecting multiple nodes in conflict', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History, Code, Bold], + extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) editor.chain().setContent('test123').selectAll().run() @@ -110,7 +110,7 @@ describe('can', () => { it('returns true for applicable marks when selection does not contain nodes in conflict', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History, CodeBlock, Bold], + extensions: [Document, Paragraph, Text, UndoRedo, CodeBlock, Bold], }) editor @@ -129,7 +129,7 @@ describe('can', () => { it('returns true for applicable marks when stored marks are not in conflict', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History, Code, Bold], + extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) editor.chain().setContent('test').toggleCode().run() @@ -141,7 +141,7 @@ describe('can', () => { it('returns true for applicable marks when selection does not contain marks in conflict', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History, Code, Bold], + extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) editor.chain().setContent('test').setTextSelection({ from: 2, to: 3 }).toggleCode().run() @@ -153,7 +153,7 @@ describe('can', () => { it('returns true for applicable marks if at least one node in selection has no marks in conflict', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History, Code, Bold], + extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) editor.chain().setContent('test123').selectAll().run() @@ -165,7 +165,7 @@ describe('can', () => { it('builds and passes down an undefined dispatch for nested "can" chain', () => { const editor = new Editor({ - extensions: [Document, Paragraph, Text, History], + extensions: [Document, Paragraph, Text, UndoRedo], }) let capturedOuterDispatch: ((args?: any) => any) | undefined From 25ec82eca65e70cc44398e234afd2be2d53e782e Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 12 Mar 2025 15:54:27 +0100 Subject: [PATCH 113/629] Rename CollaborationCursor extension to CollaborationCaret (#6173) * rename collaboration-cursor to collaboration-caret * added changeset --- .changeset/chilled-trees-agree.md | 2 +- .changeset/cuddly-impalas-heal.md | 2 +- .changeset/eighty-gifts-matter.md | 2 +- .changeset/many-laws-vanish.md | 5 +++ .changeset/pre.json | 2 +- .vscode/settings.json | 2 +- .../CollaborationSplitPane/React/Editor.jsx | 8 ++--- .../CollaborationSplitPane/React/styles.scss | 4 +-- .../Demos/SingleRoomCollab/React/index.jsx | 6 ++-- .../Demos/SingleRoomCollab/React/styles.scss | 4 +-- .../CollaborativeEditing/React/index.jsx | 6 ++-- .../CollaborativeEditing/React/styles.scss | 4 +-- .../CollaborativeEditing/Vue/index.vue | 12 +++---- .../React/index.html | 0 .../React/index.jsx | 6 ++-- .../React/index.spec.js | 4 +-- .../React/styles.scss | 4 +-- .../Vue/index.html | 0 .../Vue/index.spec.js | 4 +-- .../Vue/index.vue | 10 +++--- .../CHANGELOG.md | 0 .../README.md | 8 ++--- .../package.json | 6 ++-- .../src/collaboration-caret.ts} | 36 +++++++++---------- .../src/index.ts | 5 +++ .../tsup.config.ts | 0 .../src/index.ts | 5 --- pnpm-lock.yaml | 2 +- 28 files changed, 77 insertions(+), 72 deletions(-) create mode 100644 .changeset/many-laws-vanish.md rename demos/src/Extensions/{CollaborationCursor => CollaborationCaret}/React/index.html (100%) rename demos/src/Extensions/{CollaborationCursor => CollaborationCaret}/React/index.jsx (85%) rename demos/src/Extensions/{CollaborationCursor => CollaborationCaret}/React/index.spec.js (81%) rename demos/src/Extensions/{CollaborationCursor => CollaborationCaret}/React/styles.scss (93%) rename demos/src/Extensions/{CollaborationCursor => CollaborationCaret}/Vue/index.html (100%) rename demos/src/Extensions/{CollaborationCursor => CollaborationCaret}/Vue/index.spec.js (82%) rename demos/src/Extensions/{CollaborationCursor => CollaborationCaret}/Vue/index.vue (88%) rename packages/{extension-collaboration-cursor => extension-collaboration-caret}/CHANGELOG.md (100%) rename packages/{extension-collaboration-cursor => extension-collaboration-caret}/README.md (72%) rename packages/{extension-collaboration-cursor => extension-collaboration-caret}/package.json (86%) rename packages/{extension-collaboration-cursor/src/collaboration-cursor.ts => extension-collaboration-caret/src/collaboration-caret.ts} (81%) create mode 100644 packages/extension-collaboration-caret/src/index.ts rename packages/{extension-collaboration-cursor => extension-collaboration-caret}/tsup.config.ts (100%) delete mode 100644 packages/extension-collaboration-cursor/src/index.ts diff --git a/.changeset/chilled-trees-agree.md b/.changeset/chilled-trees-agree.md index b58032302e..a5d8477ac9 100644 --- a/.changeset/chilled-trees-agree.md +++ b/.changeset/chilled-trees-agree.md @@ -1,5 +1,5 @@ --- -'@tiptap/extension-collaboration-cursor': major +'@tiptap/extension-collaboration-caret': major '@tiptap/extension-code-block-lowlight': major '@tiptap/extension-character-count': major '@tiptap/extension-horizontal-rule': major diff --git a/.changeset/cuddly-impalas-heal.md b/.changeset/cuddly-impalas-heal.md index c45428757e..c28cac399d 100644 --- a/.changeset/cuddly-impalas-heal.md +++ b/.changeset/cuddly-impalas-heal.md @@ -11,7 +11,7 @@ '@tiptap/extension-code-block': patch '@tiptap/extension-code-block-lowlight': patch '@tiptap/extension-collaboration': patch -'@tiptap/extension-collaboration-cursor': patch +'@tiptap/extension-collaboration-caret': patch '@tiptap/extension-color': patch '@tiptap/extension-document': patch '@tiptap/extension-dropcursor': patch diff --git a/.changeset/eighty-gifts-matter.md b/.changeset/eighty-gifts-matter.md index 4984a98700..c716749acb 100644 --- a/.changeset/eighty-gifts-matter.md +++ b/.changeset/eighty-gifts-matter.md @@ -1,5 +1,5 @@ --- -'@tiptap/extension-collaboration-cursor': major +'@tiptap/extension-collaboration-caret': major '@tiptap/extension-collaboration': major --- diff --git a/.changeset/many-laws-vanish.md b/.changeset/many-laws-vanish.md new file mode 100644 index 0000000000..6418643a03 --- /dev/null +++ b/.changeset/many-laws-vanish.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-collaboration-caret': major +--- + +Renamed `@tiptap/extension-collaboration-cursor` to `@tiptap/extension-collaboration-caret` to clarify what kind of cursor this extension is implementing. diff --git a/.changeset/pre.json b/.changeset/pre.json index 9be8ebf664..4e2018301e 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -13,7 +13,7 @@ "@tiptap/extension-code-block": "2.11.4", "@tiptap/extension-code-block-lowlight": "2.11.4", "@tiptap/extension-collaboration": "2.11.4", - "@tiptap/extension-collaboration-cursor": "2.11.4", + "@tiptap/extension-collaboration-caret": "2.11.4", "@tiptap/extension-color": "2.11.4", "@tiptap/extension-document": "2.11.4", "@tiptap/extension-dropcursor": "2.11.4", diff --git a/.vscode/settings.json b/.vscode/settings.json index 17399a5cbc..9d5892dbb3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,7 +15,7 @@ "extension/code-block", "extension/code-block-lowlight", "extension/collaboration", - "extension/collaboration-cursor", + "extension/collaboration-caret", "extension/color", "extension/document", "extension/dropcursor", diff --git a/demos/src/Demos/CollaborationSplitPane/React/Editor.jsx b/demos/src/Demos/CollaborationSplitPane/React/Editor.jsx index 607542908d..841fd85ff2 100644 --- a/demos/src/Demos/CollaborationSplitPane/React/Editor.jsx +++ b/demos/src/Demos/CollaborationSplitPane/React/Editor.jsx @@ -1,5 +1,5 @@ import Collaboration from '@tiptap/extension-collaboration' -import CollaborationCursor from '@tiptap/extension-collaboration-cursor' +import CollaborationCaret from '@tiptap/extension-collaboration-caret' import Highlight from '@tiptap/extension-highlight' import { TaskItem, TaskList } from '@tiptap/extension-list' import { CharacterCount } from '@tiptap/extensions' @@ -106,7 +106,7 @@ const Editor = ({ ydoc, provider, room }) => { Collaboration.extend().configure({ document: ydoc, }), - CollaborationCursor.extend().configure({ + CollaborationCaret.extend().configure({ provider, }), ], @@ -187,8 +187,8 @@ const Editor = ({ ydoc, provider, room }) => {

diff --git a/demos/src/Demos/CollaborationSplitPane/React/styles.scss b/demos/src/Demos/CollaborationSplitPane/React/styles.scss index 9d8522713c..fcb8e2c195 100644 --- a/demos/src/Demos/CollaborationSplitPane/React/styles.scss +++ b/demos/src/Demos/CollaborationSplitPane/React/styles.scss @@ -132,7 +132,7 @@ } /* Give a remote user a caret */ - .collaboration-cursor__caret { + .collaboration-carets__caret { border-left: 1px solid #0d0d0d; border-right: 1px solid #0d0d0d; margin-left: -1px; @@ -143,7 +143,7 @@ } /* Render the username above the caret */ - .collaboration-cursor__label { + .collaboration-carets__label { border-radius: 3px 3px 3px 0; color: #0d0d0d; font-size: 12px; diff --git a/demos/src/Demos/SingleRoomCollab/React/index.jsx b/demos/src/Demos/SingleRoomCollab/React/index.jsx index a85d2ccd3d..b602fdf70b 100644 --- a/demos/src/Demos/SingleRoomCollab/React/index.jsx +++ b/demos/src/Demos/SingleRoomCollab/React/index.jsx @@ -2,7 +2,7 @@ import './styles.scss' import { TiptapCollabProvider } from '@hocuspocus/provider' import Collaboration from '@tiptap/extension-collaboration' -import CollaborationCursor from '@tiptap/extension-collaboration-cursor' +import CollaborationCaret from '@tiptap/extension-collaboration-caret' import { CharacterCount } from '@tiptap/extensions' import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' @@ -75,7 +75,7 @@ export default () => { Collaboration.configure({ document: ydoc, }), - CollaborationCursor.configure({ + CollaborationCaret.configure({ provider: websocketProvider, }), ], @@ -115,7 +115,7 @@ export default () => {
{status === 'connected' - ? `${editor.storage.collaborationCursor.users.length} user${editor.storage.collaborationCursor.users.length === 1 ? '' : 's'} online in ${room}` + ? `${editor.storage.collaborationCaret.users.length} user${editor.storage.collaborationCaret.users.length === 1 ? '' : 's'} online in ${room}` : 'offline'}
diff --git a/demos/src/Demos/SingleRoomCollab/React/styles.scss b/demos/src/Demos/SingleRoomCollab/React/styles.scss index 218f337997..39d96f8c64 100644 --- a/demos/src/Demos/SingleRoomCollab/React/styles.scss +++ b/demos/src/Demos/SingleRoomCollab/React/styles.scss @@ -160,7 +160,7 @@ } /* Give a remote user a caret */ -.collaboration-cursor__caret { +.collaboration-carets__caret { border-left: 1px solid #0d0d0d; border-right: 1px solid #0d0d0d; margin-left: -1px; @@ -171,7 +171,7 @@ } /* Render the username above the caret */ -.collaboration-cursor__label { +.collaboration-carets__label { border-radius: 3px 3px 3px 0; color: #0d0d0d; font-size: 0.75rem; diff --git a/demos/src/Examples/CollaborativeEditing/React/index.jsx b/demos/src/Examples/CollaborativeEditing/React/index.jsx index a230a74786..04aad6ac5d 100644 --- a/demos/src/Examples/CollaborativeEditing/React/index.jsx +++ b/demos/src/Examples/CollaborativeEditing/React/index.jsx @@ -2,7 +2,7 @@ import './styles.scss' import { TiptapCollabProvider } from '@hocuspocus/provider' import Collaboration from '@tiptap/extension-collaboration' -import CollaborationCursor from '@tiptap/extension-collaboration-cursor' +import CollaborationCaret from '@tiptap/extension-collaboration-caret' import Highlight from '@tiptap/extension-highlight' import { TaskItem, TaskList } from '@tiptap/extension-list' import { CharacterCount } from '@tiptap/extensions' @@ -89,7 +89,7 @@ export default () => { Collaboration.configure({ document: ydoc, }), - CollaborationCursor.configure({ + CollaborationCaret.configure({ provider: websocketProvider, }), ], @@ -125,7 +125,7 @@ export default () => {
{status === 'connected' - ? `${editor.storage.collaborationCursor.users.length} user${editor.storage.collaborationCursor.users.length === 1 ? '' : 's'} online in ${room}` + ? `${editor.storage.collaborationCaret.users.length} user${editor.storage.collaborationCaret.users.length === 1 ? '' : 's'} online in ${room}` : 'offline'}
diff --git a/demos/src/Examples/CollaborativeEditing/React/styles.scss b/demos/src/Examples/CollaborativeEditing/React/styles.scss index 713207321b..0826ea8f45 100644 --- a/demos/src/Examples/CollaborativeEditing/React/styles.scss +++ b/demos/src/Examples/CollaborativeEditing/React/styles.scss @@ -172,7 +172,7 @@ } /* Give a remote user a caret */ -.collaboration-cursor__caret { +.collaboration-carets__caret { border-left: 1px solid #0d0d0d; border-right: 1px solid #0d0d0d; margin-left: -1px; @@ -183,7 +183,7 @@ } /* Render the username above the caret */ -.collaboration-cursor__label { +.collaboration-carets__label { border-radius: 3px 3px 3px 0; color: #0d0d0d; font-size: 12px; diff --git a/demos/src/Examples/CollaborativeEditing/Vue/index.vue b/demos/src/Examples/CollaborativeEditing/Vue/index.vue index f5c3ab4bc8..9a4e379392 100644 --- a/demos/src/Examples/CollaborativeEditing/Vue/index.vue +++ b/demos/src/Examples/CollaborativeEditing/Vue/index.vue @@ -5,8 +5,8 @@ diff --git a/packages/extension-text-align/src/text-align.ts b/packages/extension-text-align/src/text-align.ts index d80f6a64ec..e9a0e0b939 100644 --- a/packages/extension-text-align/src/text-align.ts +++ b/packages/extension-text-align/src/text-align.ts @@ -37,6 +37,12 @@ declare module '@tiptap/core' { * @example editor.commands.unsetTextAlign() */ unsetTextAlign: () => ReturnType + /** + * Toggle the text align attribute + * @param alignment The alignment + * @example editor.commands.toggleTextAlign('right') + */ + toggleTextAlign: (alignment: string) => ReturnType } } } @@ -100,6 +106,19 @@ export const TextAlign = Extension.create({ ({ commands }) => { return this.options.types.map(type => commands.resetAttributes(type, 'textAlign')).every(response => response) }, + + toggleTextAlign: + alignment => + ({ editor, commands }) => { + if (!this.options.alignments.includes(alignment)) { + return false + } + + if (editor.isActive({ textAlign: alignment })) { + return commands.unsetTextAlign() + } + return commands.setTextAlign(alignment) + }, } }, From 87962aad23ce1d5275a819cf3110924577482d46 Mon Sep 17 00:00:00 2001 From: bdbch Date: Wed, 30 Apr 2025 03:27:51 +0200 Subject: [PATCH 161/629] use correct changeset --- .changeset/spotty-cobras-shake.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/spotty-cobras-shake.md b/.changeset/spotty-cobras-shake.md index dd23c6a993..7d3141d9a9 100644 --- a/.changeset/spotty-cobras-shake.md +++ b/.changeset/spotty-cobras-shake.md @@ -1,5 +1,5 @@ --- -"@tiptap/extension-text-align": major +"@tiptap/extension-text-align": patch --- Added new `toggleTextAlign` command to TextAlign extension to make toggling text alignments easier to handle From c28c77cc2d785be992b7acec1c7b0dfa159aaae7 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 30 Apr 2025 18:35:03 +0200 Subject: [PATCH 162/629] upgrade y-prosemirror (#6313) --- demos/package.json | 2 +- .../extension-collaboration-caret/package.json | 4 ++-- packages/extension-collaboration/package.json | 4 ++-- pnpm-lock.yaml | 18 +++++++++--------- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/demos/package.json b/demos/package.json index bc991e7c4f..49304cc9bf 100644 --- a/demos/package.json +++ b/demos/package.json @@ -15,7 +15,7 @@ "@lexical/react": "^0.11.3", "@lifeomic/attempt": "3.1.0", "@shikijs/core": "1.10.3", - "@tiptap/y-tiptap": "^2.0.0", + "@tiptap/y-tiptap": "^3.0.0-beta.3", "d3": "^7.9.0", "fast-glob": "^3.3.2", "highlight.js": "^11.11.1", diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index eb589bb94b..e0d21d990b 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -33,12 +33,12 @@ "devDependencies": { "@tiptap/core": "workspace:*", "@tiptap/pm": "workspace:*", - "@tiptap/y-tiptap": "^2.0.0" + "@tiptap/y-tiptap": "^3.0.0-beta.3" }, "peerDependencies": { "@tiptap/core": "workspace:*", "@tiptap/pm": "workspace:*", - "@tiptap/y-tiptap": "^2.0.0" + "@tiptap/y-tiptap": "^3.0.0-beta.3" }, "repository": { "type": "git", diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index edc08816c6..539dff42f5 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -33,12 +33,12 @@ "devDependencies": { "@tiptap/core": "workspace:*", "@tiptap/pm": "workspace:*", - "@tiptap/y-tiptap": "^2.0.0" + "@tiptap/y-tiptap": "^3.0.0-beta.3" }, "peerDependencies": { "@tiptap/core": "workspace:*", "@tiptap/pm": "workspace:*", - "@tiptap/y-tiptap": "^2.0.0", + "@tiptap/y-tiptap": "^3.0.0-beta.3", "yjs": "^13" }, "repository": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8f580007e6..e2a6ab6a9b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -168,8 +168,8 @@ importers: specifier: 1.10.3 version: 1.10.3 '@tiptap/y-tiptap': - specifier: ^2.0.0 - version: 2.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.0-beta.3 + version: 3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) d3: specifier: ^7.9.0 version: 7.9.0 @@ -481,8 +481,8 @@ importers: specifier: workspace:* version: link:../pm '@tiptap/y-tiptap': - specifier: ^2.0.0 - version: 2.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.0-beta.3 + version: 3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) packages/extension-collaboration-caret: devDependencies: @@ -493,8 +493,8 @@ importers: specifier: workspace:* version: link:../pm '@tiptap/y-tiptap': - specifier: ^2.0.0 - version: 2.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.0-beta.3 + version: 3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) packages/extension-color: devDependencies: @@ -2662,8 +2662,8 @@ packages: '@types/react-dom': optional: true - '@tiptap/y-tiptap@2.0.0': - resolution: {integrity: sha512-s/b2Xfz7CHjQgr4T0EPutHuFbKUyzJV1n7NVIkAW6/BseFfe0RgVWyPghan6ivdGYWVAHIiCocJYHQN2nedNNg==} + '@tiptap/y-tiptap@3.0.0-beta.3': + resolution: {integrity: sha512-1U/MTG7mpkc2VEIRzVueXqpHpawflF0DUuqkPwTezmBst6HPZ+NnZuDbJGay8dh//KSXcrS1Vtu1Wqa2Z/1HTw==} engines: {node: '>=16.0.0', npm: '>=8.0.0'} peerDependencies: prosemirror-model: ^1.7.1 @@ -8594,7 +8594,7 @@ snapshots: '@types/react': 18.3.18 '@types/react-dom': 18.3.5(@types/react@18.3.18) - '@tiptap/y-tiptap@2.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23)': + '@tiptap/y-tiptap@3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23)': dependencies: lib0: 0.2.104 prosemirror-model: 1.24.1 From f43b2e5b34ab2d87294799dc8f8cc5bc3147570b Mon Sep 17 00:00:00 2001 From: bdbch Date: Wed, 30 Apr 2025 18:36:05 +0200 Subject: [PATCH 163/629] add changeset --- .changeset/selfish-rings-hang.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .changeset/selfish-rings-hang.md diff --git a/.changeset/selfish-rings-hang.md b/.changeset/selfish-rings-hang.md new file mode 100644 index 0000000000..10a9f1f2c5 --- /dev/null +++ b/.changeset/selfish-rings-hang.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-collaboration-caret': patch +'@tiptap/extension-collaboration': patch +--- + +Use newer y-prosemirror version to resolve dependency chaos From b64ae7f9b601e5720e5232e0020cf237ec6018b8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 30 Apr 2025 18:38:26 +0200 Subject: [PATCH 164/629] chore(release): publish a new pre-release version (beta) (#6294) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 6 +++- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 11 +++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 8 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 9 ++++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 10 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 9 ++++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 8 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 10 ++++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 10 ++++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-document/CHANGELOG.md | 8 +++++ packages/extension-document/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 9 ++++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 8 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 8 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 8 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 9 ++++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 8 +++++ packages/extension-image/package.json | 2 +- packages/extension-italic/CHANGELOG.md | 8 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 9 ++++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 9 ++++++ packages/extension-list/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 14 +++++++++ packages/extension-mention/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 8 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 8 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 9 ++++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 9 ++++++ packages/extension-superscript/package.json | 2 +- packages/extension-table/CHANGELOG.md | 9 ++++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 9 ++++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 8 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 8 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 8 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 8 +++++ packages/extension-underline/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 8 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 9 ++++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 9 ++++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 9 ++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 9 ++++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 9 ++++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 9 ++++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 9 ++++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 116 files changed, 536 insertions(+), 61 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 24caa1e5de..e014c21e8d 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -71,6 +71,7 @@ "chilly-lemons-remember", "clever-bags-end", "cool-bananas-breathe", + "cool-singers-call", "cuddly-impalas-heal", "curly-adults-move", "dirty-bats-look", @@ -83,6 +84,7 @@ "healthy-pigs-work", "large-kangaroos-battle", "lazy-needles-train", + "lucky-bears-exercise", "many-laws-vanish", "moody-geckos-sort", "nervous-hairs-walk", @@ -93,16 +95,18 @@ "quick-days-matter", "red-ants-wonder", "red-rivers-exist", + "selfish-rings-hang", "seven-llamas-love", - "shaggy-hats-rescue", "shiny-days-rhyme", "sixty-news-ring", "smooth-carrots-beam", + "spotty-cobras-shake", "tame-worms-applaud", "thirty-rockets-act", "tidy-fireants-hang", "twenty-moose-invent", "weak-books-eat", + "wise-books-kiss", "wise-carpets-unite", "witty-eels-cheer" ] diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 8cebf7a590..8adf156910 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 290a50983f..fb76f55533 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 8edbfefac1..456e436910 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 5141cf9502..b7e1505ad2 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 09fc26b6f7..1c3e6e0acf 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 881ab6601b..db4a2e6fee 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.3" + "@tiptap/extensions": "3.0.0-beta.4" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.3" + "@tiptap/extensions": "3.0.0-beta.4" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index dfac75b92b..3f8e4d7d4b 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index e0745db69d..70cb3abd76 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index d303ce94fb..44ea7fdddb 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 2d6b91a52c..595ee635f5 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index affc573331..d7299e0d09 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index fa72ff9886..dadd342741 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 5e5d7de0e1..f146b22874 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 7d4df1d675..4e80dce259 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 4c140740cd..0ca7a86d01 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index ccae09f72d..f42735c31b 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 0f01368216..a249e005f5 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 9a3bfecf1e..c056896ad1 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index ec4965e721..120f691779 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index a731f4dfba..62f11520e4 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 6eb3c699ae..f8455d163e 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 7403120d4f..1979d73b9d 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 93bc5eff02..37f1089501 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 45518393c6..931ab3234f 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 72d19fcd70..57a3ba1eec 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 606a1024ae..e9abc2f6f5 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 4ca7ded111..af3a2d7631 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.0.0-beta.4 + +### Major Changes + +- 5e957e5: This resolves in issue with SSR where the isDestroyed property could not be read while in SSR + +### Patch Changes + +- 9f207a6: Fixes a bug where you could not unregister multiple plugins. + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index d6fcc9088b..c8871280f1 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 333768d88d..9b01fc9007 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 97c2bf662f..d603e8f3ed 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 8fdd7e8ebe..be48cd2ecb 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 0574ec6c81..ef6ead9007 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 245e79d172..5053040ff8 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index d1bafb5429..e4c55ef2b6 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 7d305d2a8f..248fb42af6 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index d8030d6d36..62d1913dab 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index b0cd046cbc..a68f363b58 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/extension-code-block@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index edf580a0fe..c6e4e78276 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index b92256ae64..b935fca5aa 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index e9ab210f5b..eac1a9b69b 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 193c9d9499..df0941fdb3 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index e789d6b3d9..61d7820347 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 283bbba535..b418c51a9b 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- f43b2e5: Use newer y-prosemirror version to resolve dependency chaos +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index e0d21d990b..f942157c37 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 08e409d859..1c4f47e963 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- f43b2e5: Use newer y-prosemirror version to resolve dependency chaos +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 539dff42f5..3b26c24ec0 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index edfdd97b99..db8fe2a366 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 0469be4b34..ce434662a6 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 9f74720e4c..e02b28494e 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index f7de656c93..76e2267376 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index e20ef3f892..8f9024ca0e 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index f6922b3b27..bf6428e753 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index ab66267a01..2dc8eda9fd 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 33f12b52b3..2a055febc3 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index a61a9d7e5e..c9d5aaa6a9 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index e1c8e566ae..04ee0d99a6 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index d2e6ea0087..eb2e0ec34d 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 747f82b9cb..f5903bcacc 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 6d7bf7cfc4..e01f3050d0 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 75b0e3d3e9..2005aa6c7f 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 1b7d132e18..c599e3ff58 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 7ed9cc85d0..ca303acca0 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 04744757f0..fcf80e5d57 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index f5c0538b1a..f5f362ee60 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index c29ee55670..3d2e23ae3d 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 86821f4880..9f3520ebe0 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index ed49b670bb..9836271ac5 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 8614eda79d..f36fc8e36f 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index d473c3127a..a88f151662 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 3cee81bb6b..1dd3193edd 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index a285749d96..b0daf75852 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,19 @@ # Change Log +## 3.0.0-beta.4 + +### Minor Changes + +- 68034ab: Support multiple triggers in Mention extension + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/suggestion@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index f95caca440..efa245bc36 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 54629627ba..ee1b7a6d16 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index a16fac6d6a..6c85ad3528 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index b2dd8215f6..e378bdde97 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 97b906e422..9ca9dfcfaa 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 8ff4d436c1..74a0abd68c 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 27a53fda2f..39266b6e90 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index beca31bdf9..9490be00fc 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index ea88567a55..fec9ae8d37 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index e8f5cc1422..4211efbeb8 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 23294cdd18..ad59494f9f 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 9a59a80eeb..2f9c752fa0 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 6bfadfa06b..d223f94be7 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 8189b95784..548a1a7542 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- 55c78d6: Added new `toggleTextAlign` command to TextAlign extension to make toggling text alignments easier to handle +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 5443d73f23..31042f085b 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 668b5efe3c..6e65a57719 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index e03e3f89d3..34cfafe99e 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 64fdc3c3dd..a96af2c144 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 112d313e83..51cc346630 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 5604ef52e7..e208d4dd77 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 867f054e4e..0e85801222 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 34dee6a297..bf719fc47c 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 73f2aacf37..c7177d342e 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 0327b75422..a63fffa85f 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index d96d5564fd..f1918dfc60 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 5dbdd1c3e3..f556f52e3c 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 3faaa74678..7ca459154b 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 7e2d3b8e43..ffab51dd0a 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index b30e79aeeb..9c3e078476 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 1cea20813d..507804899c 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/pm/package.json b/packages/pm/package.json index 21f2dc97a8..e724a219fd 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index bfdb008c7d..dea4d1199a 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 6846d41e59..38ec88d114 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 8626b8304f..1236ca04e4 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/extension-blockquote@3.0.0-beta.4 + - @tiptap/extension-bold@3.0.0-beta.4 + - @tiptap/extension-code@3.0.0-beta.4 + - @tiptap/extension-code-block@3.0.0-beta.4 + - @tiptap/extension-document@3.0.0-beta.4 + - @tiptap/extension-hard-break@3.0.0-beta.4 + - @tiptap/extension-heading@3.0.0-beta.4 + - @tiptap/extension-horizontal-rule@3.0.0-beta.4 + - @tiptap/extension-italic@3.0.0-beta.4 + - @tiptap/extension-link@3.0.0-beta.4 + - @tiptap/extension-list@3.0.0-beta.4 + - @tiptap/extension-paragraph@3.0.0-beta.4 + - @tiptap/extension-strike@3.0.0-beta.4 + - @tiptap/extension-text@3.0.0-beta.4 + - @tiptap/extension-underline@3.0.0-beta.4 + - @tiptap/extensions@3.0.0-beta.4 + - @tiptap/extension-list-item@3.0.0-beta.4 + - @tiptap/extension-list-keymap@3.0.0-beta.4 + - @tiptap/extension-bullet-list@3.0.0-beta.4 + - @tiptap/extension-ordered-list@3.0.0-beta.4 + - @tiptap/extension-dropcursor@3.0.0-beta.4 + - @tiptap/extension-gapcursor@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index ace864451a..e19a2932d0 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index d957362749..225a140a78 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index fa9acc218b..06d3104b1d 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 903376fb4e..549a9b8f2d 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index cbc8ec45ef..c318402273 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 7fbf080139..64eb587828 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 61523a9b4f..5842d94ede 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 49c4e23853..0d0a8f3fec 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.4 + +### Patch Changes + +- Updated dependencies [5e957e5] +- Updated dependencies [9f207a6] + - @tiptap/core@3.0.0-beta.4 + - @tiptap/pm@3.0.0-beta.4 + ## 3.0.0-beta.3 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index edf9353258..0c75b80dd1 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e2a6ab6a9b..352a3258c2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -334,7 +334,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.3 + specifier: 3.0.0-beta.4 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From 1ae247f505e87fc9754f3bb78932429a33f56650 Mon Sep 17 00:00:00 2001 From: bdbch Date: Mon, 5 May 2025 18:12:54 +0200 Subject: [PATCH 165/629] fix tests --- demos/src/Extensions/TextAlign/React/index.spec.js | 6 +++--- demos/src/Extensions/TextAlign/Vue/index.spec.js | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/demos/src/Extensions/TextAlign/React/index.spec.js b/demos/src/Extensions/TextAlign/React/index.spec.js index 1bc59352e1..ffe41095b2 100644 --- a/demos/src/Extensions/TextAlign/React/index.spec.js +++ b/demos/src/Extensions/TextAlign/React/index.spec.js @@ -89,12 +89,12 @@ context('/src/Extensions/TextAlign/React/', () => { cy.get('.tiptap').find('p').should('not.have.css', 'text-align', 'left') }) - it('toggle the text to right on the 6rd button', () => { + it('toggle the text to right on the 6th button', () => { cy.get('button:nth-child(6)').click() - cy.get('.tiptap').find('p').should('not.have.css', 'text-align', 'right') + cy.get('.tiptap').find('p').should('have.css', 'text-align', 'right') cy.get('button:nth-child(6)').click() - cy.get('.tiptap').find('p').should('not.have.css', 'text-align', 'left') + cy.get('.tiptap').find('p').should('have.css', 'text-align', 'start') }) it('aligns the text left when pressing the keyboard shortcut', () => { diff --git a/demos/src/Extensions/TextAlign/Vue/index.spec.js b/demos/src/Extensions/TextAlign/Vue/index.spec.js index a5653cb1a4..203b1cd73d 100644 --- a/demos/src/Extensions/TextAlign/Vue/index.spec.js +++ b/demos/src/Extensions/TextAlign/Vue/index.spec.js @@ -89,14 +89,14 @@ context('/src/Extensions/TextAlign/Vue/', () => { cy.get('.tiptap').find('p').should('not.have.css', 'text-align', 'left') }) - it('toggle the text to right on the 6rd button', () => { + it('toggle the text to right on the 6th button', () => { cy.get('button:nth-child(6)').click() cy.get('.tiptap').find('p').should('have.css', 'text-align', 'right') cy.get('button:nth-child(6)').click() - cy.get('.tiptap').find('p').should('have.css', 'text-align', 'left') + cy.get('.tiptap').find('p').should('have.css', 'text-align', 'start') }) it('aligns the text left when pressing the keyboard shortcut', () => { From 34001a55e4e681a0a0f21b5d5160d9831f1bf715 Mon Sep 17 00:00:00 2001 From: bdbch Date: Mon, 5 May 2025 18:33:38 +0200 Subject: [PATCH 166/629] update pkg-pr-new step --- .github/workflows/build.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 99d631eb13..99fd3e445e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -208,8 +208,4 @@ jobs: - name: Soft release id: soft-release - run: pnpm exec pkg-pr-new publish './packages/*' --compact - - - name: Soft release legacy packages - id: soft-release-deprecated - run: pnpm exec pkg-pr-new publish './packages-deprecated/*' --compact + run: pnpm exec pkg-pr-new publish './packages/*' './packages-deprecated/*' --compact From 62b0877d98d86299ffc0c7a53084004b871b7569 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Tue, 6 May 2025 12:23:55 +0200 Subject: [PATCH 167/629] feat: update prosemirror-changeset package to support token encoders --- .changeset/small-otters-bake.md | 5 +++++ demos/package.json | 2 +- packages/pm/package.json | 2 +- pnpm-lock.yaml | 14 +++++++------- 4 files changed, 14 insertions(+), 9 deletions(-) create mode 100644 .changeset/small-otters-bake.md diff --git a/.changeset/small-otters-bake.md b/.changeset/small-otters-bake.md new file mode 100644 index 0000000000..00f931af92 --- /dev/null +++ b/.changeset/small-otters-bake.md @@ -0,0 +1,5 @@ +--- +'@tiptap/pm': minor +--- + +Update prosemirror changeset to support token encoders diff --git a/demos/package.json b/demos/package.json index 49304cc9bf..ec11a66ebb 100644 --- a/demos/package.json +++ b/demos/package.json @@ -22,7 +22,7 @@ "lexical": "^0.11.3", "linkifyjs": "^4.2.0", "lowlight": "^3.3.0", - "prosemirror-changeset": "^2.2.1", + "prosemirror-changeset": "^2.3.0", "prosemirror-collab": "^1.3.1", "prosemirror-commands": "^1.6.2", "prosemirror-dropcursor": "^1.8.1", diff --git a/packages/pm/package.json b/packages/pm/package.json index e724a219fd..78924963a6 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -181,7 +181,7 @@ "view/**" ], "dependencies": { - "prosemirror-changeset": "^2.2.1", + "prosemirror-changeset": "^2.3.0", "prosemirror-collab": "^1.3.1", "prosemirror-commands": "^1.6.2", "prosemirror-dropcursor": "^1.8.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 352a3258c2..ad0da39848 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -189,8 +189,8 @@ importers: specifier: ^3.3.0 version: 3.3.0 prosemirror-changeset: - specifier: ^2.2.1 - version: 2.2.1 + specifier: ^2.3.0 + version: 2.3.0 prosemirror-collab: specifier: ^1.3.1 version: 1.3.1 @@ -705,8 +705,8 @@ importers: packages/pm: dependencies: prosemirror-changeset: - specifier: ^2.2.1 - version: 2.2.1 + specifier: ^2.3.0 + version: 2.3.0 prosemirror-collab: specifier: ^1.3.1 version: 1.3.1 @@ -5462,8 +5462,8 @@ packages: property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} - prosemirror-changeset@2.2.1: - resolution: {integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==} + prosemirror-changeset@2.3.0: + resolution: {integrity: sha512-8wRKhlEwEJ4I13Ju54q2NZR1pVKGTgJ/8XsQ8L5A5uUsQ/YQScQJuEAuh8Bn8i6IwAMjjLRABd9lVli+DlIiVw==} prosemirror-collab@1.3.1: resolution: {integrity: sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==} @@ -11742,7 +11742,7 @@ snapshots: property-information@6.5.0: {} - prosemirror-changeset@2.2.1: + prosemirror-changeset@2.3.0: dependencies: prosemirror-transform: 1.10.2 From 8c690025c51345bd21f5d93ebed60b7cea926957 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 7 May 2025 20:17:54 +0200 Subject: [PATCH 168/629] sync develop with main (#6330) * sync develop with main * added changesets --- .changeset/rude-ads-battle.md | 63 +++++++++++ .../src/Extensions/TextAlign/React/index.jsx | 6 + .../Extensions/TextAlign/React/index.spec.js | 2 +- .../Extensions/TextAlign/Vue/index.spec.js | 10 ++ demos/src/Extensions/TextAlign/Vue/index.vue | 6 + .../extension-character-count/CHANGELOG.md | 8 ++ .../extension-dropcursor/CHANGELOG.md | 8 ++ .../extension-focus/CHANGELOG.md | 8 ++ .../extension-gapcursor/CHANGELOG.md | 8 ++ .../extension-history/CHANGELOG.md | 8 ++ .../extension-list-item/CHANGELOG.md | 8 ++ .../extension-list-keymap/CHANGELOG.md | 8 ++ .../extension-placeholder/CHANGELOG.md | 8 ++ .../extension-table-cell/CHANGELOG.md | 8 ++ .../extension-table-header/CHANGELOG.md | 8 ++ .../extension-table-row/CHANGELOG.md | 8 ++ .../extension-task-item/CHANGELOG.md | 8 ++ .../extension-task-list/CHANGELOG.md | 8 ++ packages/core/CHANGELOG.md | 16 +++ packages/extension-blockquote/CHANGELOG.md | 8 ++ packages/extension-bold/CHANGELOG.md | 8 ++ packages/extension-bubble-menu/CHANGELOG.md | 8 ++ packages/extension-bullet-list/CHANGELOG.md | 8 ++ .../CHANGELOG.md | 8 ++ packages/extension-code-block/CHANGELOG.md | 8 ++ packages/extension-code/CHANGELOG.md | 8 ++ .../CHANGELOG.md | 8 ++ packages/extension-collaboration/CHANGELOG.md | 8 ++ packages/extension-color/CHANGELOG.md | 8 ++ packages/extension-document/CHANGELOG.md | 8 ++ packages/extension-floating-menu/CHANGELOG.md | 8 ++ packages/extension-font-family/CHANGELOG.md | 8 ++ packages/extension-hard-break/CHANGELOG.md | 8 ++ packages/extension-heading/CHANGELOG.md | 8 ++ packages/extension-highlight/CHANGELOG.md | 8 ++ .../extension-horizontal-rule/CHANGELOG.md | 8 ++ packages/extension-image/CHANGELOG.md | 8 ++ packages/extension-italic/CHANGELOG.md | 8 ++ packages/extension-link/CHANGELOG.md | 8 ++ packages/extension-mention/CHANGELOG.md | 8 ++ packages/extension-ordered-list/CHANGELOG.md | 8 ++ packages/extension-paragraph/CHANGELOG.md | 8 ++ packages/extension-strike/CHANGELOG.md | 8 ++ packages/extension-subscript/CHANGELOG.md | 8 ++ packages/extension-superscript/CHANGELOG.md | 8 ++ packages/extension-table/CHANGELOG.md | 12 ++ packages/extension-text-align/CHANGELOG.md | 12 ++ packages/extension-text-style/CHANGELOG.md | 8 ++ packages/extension-text/CHANGELOG.md | 8 ++ packages/extension-typography/CHANGELOG.md | 8 ++ packages/extension-underline/CHANGELOG.md | 8 ++ packages/extension-youtube/CHANGELOG.md | 8 ++ packages/html/CHANGELOG.md | 8 ++ packages/pm/CHANGELOG.md | 12 ++ packages/react/CHANGELOG.md | 28 +++++ packages/starter-kit/CHANGELOG.md | 107 ++++++++++++++++++ packages/suggestion/CHANGELOG.md | 8 ++ packages/vue-2/CHANGELOG.md | 28 +++++ packages/vue-3/CHANGELOG.md | 28 +++++ 59 files changed, 697 insertions(+), 1 deletion(-) create mode 100644 .changeset/rude-ads-battle.md diff --git a/.changeset/rude-ads-battle.md b/.changeset/rude-ads-battle.md new file mode 100644 index 0000000000..2684949abf --- /dev/null +++ b/.changeset/rude-ads-battle.md @@ -0,0 +1,63 @@ +--- +'@tiptap/extension-character-count': patch +'@tiptap/extension-table-header': patch +'@tiptap/extension-list-keymap': patch +'@tiptap/extension-placeholder': patch +'@tiptap/extension-dropcursor': patch +'@tiptap/extension-table-cell': patch +'@tiptap/extension-gapcursor': patch +'@tiptap/extension-list-item': patch +'@tiptap/extension-table-row': patch +'@tiptap/extension-task-item': patch +'@tiptap/extension-task-list': patch +'@tiptap/extension-code-block-lowlight': patch +'@tiptap/extension-collaboration-caret': patch +'@tiptap/extension-history': patch +'@tiptap/extension-focus': patch +'@tiptap/extension-horizontal-rule': patch +'tiptap-2-migrate-imports': patch +'@tiptap/extension-collaboration': patch +'@tiptap/extension-floating-menu': patch +'@tiptap/extension-ordered-list': patch +'@tiptap/extension-bubble-menu': patch +'@tiptap/extension-bullet-list': patch +'@tiptap/extension-font-family': patch +'@tiptap/extension-superscript': patch +'@tiptap/extension-blockquote': patch +'@tiptap/extension-code-block': patch +'@tiptap/extension-hard-break': patch +'@tiptap/extension-text-align': patch +'@tiptap/extension-text-style': patch +'@tiptap/extension-typography': patch +'@tiptap/extension-highlight': patch +'@tiptap/extension-paragraph': patch +'@tiptap/extension-subscript': patch +'@tiptap/extension-underline': patch +'@tiptap/extension-document': patch +'@tiptap/extension-heading': patch +'@tiptap/extension-mention': patch +'@tiptap/extension-youtube': patch +'@tiptap/extension-italic': patch +'@tiptap/extension-strike': patch +'@tiptap/extension-color': patch +'@tiptap/extension-image': patch +'@tiptap/extension-table': patch +'@tiptap/static-renderer': patch +'@tiptap/extension-bold': patch +'@tiptap/extension-code': patch +'@tiptap/extension-link': patch +'@tiptap/extension-list': patch +'@tiptap/extension-text': patch +'@tiptap/starter-kit': patch +'@tiptap/extensions': patch +'@tiptap/suggestion': patch +'@tiptap/react': patch +'@tiptap/vue-2': patch +'@tiptap/vue-3': patch +'@tiptap/core': patch +'@tiptap/html': patch +'@tiptap/pm': patch +'tiptap-demos': patch +--- + +Synced beta with stable features diff --git a/demos/src/Extensions/TextAlign/React/index.jsx b/demos/src/Extensions/TextAlign/React/index.jsx index 343f14ab35..a9d5b0f93f 100644 --- a/demos/src/Extensions/TextAlign/React/index.jsx +++ b/demos/src/Extensions/TextAlign/React/index.jsx @@ -65,6 +65,12 @@ export default () => { > Toggle Right + +
diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 8adf156910..eb2d8342de 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -67,6 +67,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 456e436910..db51e61d48 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -63,6 +63,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 1c3e6e0acf..c7436136c0 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -96,6 +96,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 3f8e4d7d4b..0c37ebd156 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -63,6 +63,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 44ea7fdddb..5b25958a77 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -67,6 +67,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index d7299e0d09..2bfe532061 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -368,6 +368,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index f146b22874..3447317e3b 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -372,6 +372,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 0ca7a86d01..edc2136290 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -65,6 +65,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index a249e005f5..eac9e1a61e 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -190,6 +190,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 120f691779..bd0acdebb9 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -190,6 +190,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index f8455d163e..5817d55051 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -190,6 +190,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 37f1089501..fd5bba6972 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -64,6 +64,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 57a3ba1eec..3292a805b8 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -368,6 +368,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index af3a2d7631..12d0c18886 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -638,6 +638,22 @@ - 0ec0af6: fix(core): findDuplicates - use Array.from when converting Set - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +### Patch Changes + +- 8147cc7: Fixes a bug where you could not unregister multiple plugins. + +## 2.11.7 + +### Patch Changes + +- e23882d: Clone dragged node before dragging to get correct drag preview image + ## 2.11.6 ### Patch Changes diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 9b01fc9007..ec91f7936c 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index be48cd2ecb..77a1d29d13 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 5053040ff8..9aad86af5d 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -122,6 +122,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 248fb42af6..f8bd68af22 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -368,6 +368,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index a68f363b58..2597296514 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -71,6 +71,14 @@ - @tiptap/extension-code-block@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index b935fca5aa..d23592efac 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -67,6 +67,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index df0941fdb3..c2834a0390 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -67,6 +67,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index b418c51a9b..37562dbefb 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -75,6 +75,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 1c4f47e963..b854a9c9e5 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -73,6 +73,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index db8fe2a366..b1638729c4 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -63,6 +63,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/extension-text-style@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index e02b28494e..93a7a6ad9f 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 8f9024ca0e..c25272c46e 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -126,6 +126,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 2dc8eda9fd..62b0d08c00 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -63,6 +63,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/extension-text-style@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index c9d5aaa6a9..613062172b 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index eb2e0ec34d..27bcfe8ed5 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -67,6 +67,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index e01f3050d0..c7edab70b0 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index c599e3ff58..7a498432f3 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -67,6 +67,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index fcf80e5d57..93f7bd1e09 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -67,6 +67,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 3d2e23ae3d..7c33439206 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 9836271ac5..3de52ab98e 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -75,6 +75,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index b0daf75852..0b4dec8dab 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -131,6 +131,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index ee1b7a6d16..f08ff4209c 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -368,6 +368,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ### Patch Changes diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index e378bdde97..86b8cffdb8 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 74a0abd68c..3e05a82027 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 9490be00fc..d3e1d3aac6 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -65,6 +65,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 4211efbeb8..d66075a964 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -65,6 +65,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 2f9c752fa0..c5865e55cf 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -196,6 +196,18 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + +### Patch Changes + +- a44a311: Added new export for TableView class + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 548a1a7542..1966631951 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -68,6 +68,18 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +### Patch Changes + +- ab7a2ae: Added new `toggleTextAlign` command to TextAlign extension to make toggling text alignments easier to handle + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 6e65a57719..c6c15094d3 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -189,6 +189,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index a96af2c144..4711764010 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index e208d4dd77..5d4764f4db 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index bf719fc47c..81a90d8a0b 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index a63fffa85f..3fc9127988 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -63,6 +63,14 @@ - Updated dependencies [0ec0af6] - @tiptap/core@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ### Patch Changes diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index ffab51dd0a..da83fcd927 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -68,6 +68,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 507804899c..2aa33a92a3 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -52,6 +52,18 @@ ## 3.0.0-next.0 +## 2.12.0 + +### Minor Changes + +- 896f767: Update prosemirror-changeset library to support token encoders + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ### Patch Changes diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index dea4d1199a..db78e8c2c8 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -446,6 +446,34 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.12.0 +- @tiptap/extension-floating-menu@2.12.0 + +## 2.11.9 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.9 +- @tiptap/extension-floating-menu@2.11.9 + +## 2.11.8 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.8 +- @tiptap/extension-floating-menu@2.11.8 + +## 2.11.7 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.7 +- @tiptap/extension-floating-menu@2.11.7 + ## 2.11.6 ### Patch Changes diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 1236ca04e4..2571f75d9f 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -445,6 +445,113 @@ - @tiptap/extension-strike@3.0.0-next.0 - @tiptap/extension-text@3.0.0-next.0 +## 2.12.0 + +### Patch Changes + +- Updated dependencies [896f767] + - @tiptap/pm@2.12.0 + - @tiptap/core@2.12.0 + - @tiptap/extension-blockquote@2.12.0 + - @tiptap/extension-bold@2.12.0 + - @tiptap/extension-bullet-list@2.12.0 + - @tiptap/extension-code@2.12.0 + - @tiptap/extension-code-block@2.12.0 + - @tiptap/extension-document@2.12.0 + - @tiptap/extension-dropcursor@2.12.0 + - @tiptap/extension-gapcursor@2.12.0 + - @tiptap/extension-hard-break@2.12.0 + - @tiptap/extension-heading@2.12.0 + - @tiptap/extension-history@2.12.0 + - @tiptap/extension-horizontal-rule@2.12.0 + - @tiptap/extension-italic@2.12.0 + - @tiptap/extension-list-item@2.12.0 + - @tiptap/extension-ordered-list@2.12.0 + - @tiptap/extension-paragraph@2.12.0 + - @tiptap/extension-strike@2.12.0 + - @tiptap/extension-text@2.12.0 + - @tiptap/extension-text-style@2.12.0 + +## 2.11.9 + +### Patch Changes + +- @tiptap/core@2.11.9 +- @tiptap/extension-blockquote@2.11.9 +- @tiptap/extension-bold@2.11.9 +- @tiptap/extension-bullet-list@2.11.9 +- @tiptap/extension-code@2.11.9 +- @tiptap/extension-code-block@2.11.9 +- @tiptap/extension-document@2.11.9 +- @tiptap/extension-dropcursor@2.11.9 +- @tiptap/extension-gapcursor@2.11.9 +- @tiptap/extension-hard-break@2.11.9 +- @tiptap/extension-heading@2.11.9 +- @tiptap/extension-history@2.11.9 +- @tiptap/extension-horizontal-rule@2.11.9 +- @tiptap/extension-italic@2.11.9 +- @tiptap/extension-list-item@2.11.9 +- @tiptap/extension-ordered-list@2.11.9 +- @tiptap/extension-paragraph@2.11.9 +- @tiptap/extension-strike@2.11.9 +- @tiptap/extension-text@2.11.9 +- @tiptap/extension-text-style@2.11.9 +- @tiptap/pm@2.11.9 + +## 2.11.8 + +### Patch Changes + +- Updated dependencies [8147cc7] + - @tiptap/core@2.11.8 + - @tiptap/extension-blockquote@2.11.8 + - @tiptap/extension-bold@2.11.8 + - @tiptap/extension-bullet-list@2.11.8 + - @tiptap/extension-code@2.11.8 + - @tiptap/extension-code-block@2.11.8 + - @tiptap/extension-document@2.11.8 + - @tiptap/extension-dropcursor@2.11.8 + - @tiptap/extension-gapcursor@2.11.8 + - @tiptap/extension-hard-break@2.11.8 + - @tiptap/extension-heading@2.11.8 + - @tiptap/extension-history@2.11.8 + - @tiptap/extension-horizontal-rule@2.11.8 + - @tiptap/extension-italic@2.11.8 + - @tiptap/extension-list-item@2.11.8 + - @tiptap/extension-ordered-list@2.11.8 + - @tiptap/extension-paragraph@2.11.8 + - @tiptap/extension-strike@2.11.8 + - @tiptap/extension-text@2.11.8 + - @tiptap/extension-text-style@2.11.8 + - @tiptap/pm@2.11.8 + +## 2.11.7 + +### Patch Changes + +- Updated dependencies [e23882d] + - @tiptap/core@2.11.7 + - @tiptap/extension-blockquote@2.11.7 + - @tiptap/extension-bold@2.11.7 + - @tiptap/extension-bullet-list@2.11.7 + - @tiptap/extension-code@2.11.7 + - @tiptap/extension-code-block@2.11.7 + - @tiptap/extension-document@2.11.7 + - @tiptap/extension-dropcursor@2.11.7 + - @tiptap/extension-gapcursor@2.11.7 + - @tiptap/extension-hard-break@2.11.7 + - @tiptap/extension-heading@2.11.7 + - @tiptap/extension-history@2.11.7 + - @tiptap/extension-horizontal-rule@2.11.7 + - @tiptap/extension-italic@2.11.7 + - @tiptap/extension-list-item@2.11.7 + - @tiptap/extension-ordered-list@2.11.7 + - @tiptap/extension-paragraph@2.11.7 + - @tiptap/extension-strike@2.11.7 + - @tiptap/extension-text@2.11.7 + - @tiptap/extension-text-style@2.11.7 + - @tiptap/pm@2.11.7 + ## 2.11.6 ### Patch Changes diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 549a9b8f2d..5ebf003e29 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -126,6 +126,14 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +## 2.11.9 + +## 2.11.8 + +## 2.11.7 + ## 2.11.6 ## 2.11.5 diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 64eb587828..307cef5c8c 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -142,6 +142,34 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.12.0 +- @tiptap/extension-floating-menu@2.12.0 + +## 2.11.9 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.9 +- @tiptap/extension-floating-menu@2.11.9 + +## 2.11.8 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.8 +- @tiptap/extension-floating-menu@2.11.8 + +## 2.11.7 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.7 +- @tiptap/extension-floating-menu@2.11.7 + ## 2.11.6 ### Patch Changes diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 0d0a8f3fec..5b4f21c863 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -441,6 +441,34 @@ - @tiptap/core@3.0.0-next.0 - @tiptap/pm@3.0.0-next.0 +## 2.12.0 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.12.0 +- @tiptap/extension-floating-menu@2.12.0 + +## 2.11.9 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.9 +- @tiptap/extension-floating-menu@2.11.9 + +## 2.11.8 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.8 +- @tiptap/extension-floating-menu@2.11.8 + +## 2.11.7 + +### Patch Changes + +- @tiptap/extension-bubble-menu@2.11.7 +- @tiptap/extension-floating-menu@2.11.7 + ## 2.11.6 ### Patch Changes From 7147fdd97014300c3350ab578f786dcf4833541d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 7 May 2025 22:59:55 +0200 Subject: [PATCH 169/629] chore(release): publish a new pre-release version (beta) (#6327) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 2 ++ .../tiptap-2-migrate-imports/CHANGELOG.md | 6 ++++ .../tiptap-2-migrate-imports/package.json | 2 +- demos/CHANGELOG.md | 6 ++++ demos/package.json | 2 +- .../extension-character-count/CHANGELOG.md | 8 +++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 8 +++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 8 +++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 8 +++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 8 +++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 8 +++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 8 +++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 8 +++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 8 +++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 8 +++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 8 +++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 8 +++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 8 +++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 9 ++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 8 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 10 ++++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 8 +++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 11 +++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 10 ++++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 8 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 10 ++++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 10 ++++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 8 +++++ packages/extension-color/package.json | 2 +- packages/extension-document/CHANGELOG.md | 8 +++++ packages/extension-document/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 10 ++++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 8 +++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 8 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 8 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 8 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 10 ++++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 8 +++++ packages/extension-image/package.json | 2 +- packages/extension-italic/CHANGELOG.md | 8 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 10 ++++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 10 ++++++ packages/extension-list/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 11 +++++++ packages/extension-mention/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 8 +++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 8 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 8 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 10 ++++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 10 ++++++ packages/extension-superscript/package.json | 2 +- packages/extension-table/CHANGELOG.md | 10 ++++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 8 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 8 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 8 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 8 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 8 +++++ packages/extension-underline/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 8 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 10 ++++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 10 ++++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 10 ++++++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 10 ++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 32 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 10 ++++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 10 ++++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 10 ++++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 10 ++++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 120 files changed, 601 insertions(+), 62 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index e014c21e8d..49479f3967 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -95,10 +95,12 @@ "quick-days-matter", "red-ants-wonder", "red-rivers-exist", + "rude-ads-battle", "selfish-rings-hang", "seven-llamas-love", "shiny-days-rhyme", "sixty-news-ring", + "small-otters-bake", "smooth-carrots-beam", "spotty-cobras-shake", "tame-worms-applaud", diff --git a/codemods/tiptap-2-migrate-imports/CHANGELOG.md b/codemods/tiptap-2-migrate-imports/CHANGELOG.md index 5e81aad134..63ca02bde1 100644 --- a/codemods/tiptap-2-migrate-imports/CHANGELOG.md +++ b/codemods/tiptap-2-migrate-imports/CHANGELOG.md @@ -1,5 +1,11 @@ # tiptap-2-migrate-imports +## 1.0.1-beta.2 + +### Patch Changes + +- 8c69002: Synced beta with stable features + ## 1.0.1-beta.1 ### Patch Changes diff --git a/codemods/tiptap-2-migrate-imports/package.json b/codemods/tiptap-2-migrate-imports/package.json index cadaca3756..c9f2510346 100644 --- a/codemods/tiptap-2-migrate-imports/package.json +++ b/codemods/tiptap-2-migrate-imports/package.json @@ -1,6 +1,6 @@ { "name": "tiptap-2-migrate-imports", - "version": "1.0.1-beta.1", + "version": "1.0.1-beta.2", "private": true, "devDependencies": { "@types/node": "20.9.0", diff --git a/demos/CHANGELOG.md b/demos/CHANGELOG.md index fd54e0ced1..c3658838b5 100644 --- a/demos/CHANGELOG.md +++ b/demos/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.1 + +### Patch Changes + +- 8c69002: Synced beta with stable features + ## 3.0.0-next.2 ### Patch Changes diff --git a/demos/package.json b/demos/package.json index ec11a66ebb..f35b94e753 100644 --- a/demos/package.json +++ b/demos/package.json @@ -1,6 +1,6 @@ { "name": "tiptap-demos", - "version": "3.0.0-beta.0", + "version": "3.0.0-beta.1", "private": true, "type": "module", "scripts": { diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index eb2d8342de..e5399e552a 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extensions@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index fb76f55533..c0d15a2a6f 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index db51e61d48..d3825fbbf1 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extensions@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index b7e1505ad2..ecc9a89434 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index c7436136c0..e015be9dbb 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extensions@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index db4a2e6fee..6fa56d2d29 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.4" + "@tiptap/extensions": "3.0.0-beta.5" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.4" + "@tiptap/extensions": "3.0.0-beta.5" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 0c37ebd156..f7d8a84937 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extensions@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 70cb3abd76..badc3835cf 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 5b25958a77..8b35deb954 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extensions@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 595ee635f5..5eb64a0b4f 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 2bfe532061..f3ce0a795b 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-list@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index dadd342741..8e911a8e16 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 3447317e3b..8d8c4b3a31 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-list@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 4e80dce259..4e91c37023 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index edc2136290..cf9b2c8119 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extensions@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index f42735c31b..03e2f09775 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index eac9e1a61e..d5ad00251b 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-table@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index c056896ad1..33224af983 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index bd0acdebb9..ede21f104a 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-table@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 62f11520e4..ddf4cc7b1d 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 5817d55051..ec413ec2f2 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-table@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 1979d73b9d..d8dd49ef7b 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index fd5bba6972..bb7a12e4ee 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-list@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 931ab3234f..ccde556fef 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 3292a805b8..94cc1913a0 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-list@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index e9abc2f6f5..df37f74f07 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 12d0c18886..5b27371881 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Major Changes diff --git a/packages/core/package.json b/packages/core/package.json index c8871280f1..41f11cf705 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index ec91f7936c..475245885d 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index d603e8f3ed..0b35e0b721 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 77a1d29d13..8e49af0136 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index ef6ead9007..c3e4d3610a 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 9aad86af5d..e6f5ca228e 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index e4c55ef2b6..91ac206032 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index f8bd68af22..57ea9c061c 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-list@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 62d1913dab..593b1d6a9b 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 2597296514..82c32d19e3 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/extension-code-block@3.0.0-beta.5 + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index c6e4e78276..78ae36a817 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index d23592efac..67cbd04255 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index eac1a9b69b..a8ea008e54 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index c2834a0390..addea955b4 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 61d7820347..c53ab75d60 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 37562dbefb..a87dab0bfe 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index f942157c37..0e4b123f56 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index b854a9c9e5..23f28d635c 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 3b26c24ec0..24edee9f38 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index b1638729c4..da24b01e89 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-text-style@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index ce434662a6..90fb639436 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 93a7a6ad9f..e449f504b5 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 76e2267376..e7887f7f5a 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index c25272c46e..797edd85dc 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index bf6428e753..7b0d801b5f 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 62b0d08c00..7201baaa93 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-text-style@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 2a055febc3..7b7f85a0b2 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 613062172b..e5bebe5725 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 04ee0d99a6..d3a84175b9 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 27bcfe8ed5..141c1db421 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index f5903bcacc..580114109d 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index c7edab70b0..c14ba8a984 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 2005aa6c7f..10c2f83a3b 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 7a498432f3..c7b79f79cd 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index ca303acca0..26cf81e82a 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 93f7bd1e09..77396da191 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index f5f362ee60..88b5320481 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 7c33439206..eed6f923bc 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 9f3520ebe0..61637bcce2 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 3de52ab98e..602327e2c5 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index f36fc8e36f..e032395323 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index a88f151662..94c71ee97b 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 1dd3193edd..c593e74893 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 0b4dec8dab..96bfd52835 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/suggestion@3.0.0-beta.5 + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Minor Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index efa245bc36..223370b886 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index f08ff4209c..2244d22932 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/extension-list@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 6c85ad3528..d0eaf86587 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 86b8cffdb8..d6f2787254 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 9ca9dfcfaa..5345ebb2ff 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 3e05a82027..614d7cd1ea 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 39266b6e90..afd7e2dd5a 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index d3e1d3aac6..f549e6149f 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index fec9ae8d37..700a260d5f 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index d66075a964..12c9def52b 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index ad59494f9f..fb44b6853c 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index c5865e55cf..a1ecce5d8d 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index d223f94be7..843f611ff8 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 1966631951..bead101037 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 31042f085b..b16943fd25 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index c6c15094d3..7144e57cce 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 34cfafe99e..fa0dc26602 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 4711764010..139d28fca2 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 51cc346630..c4914c6841 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 5d4764f4db..bca9d974f6 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 0e85801222..a5d37d4820 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 81a90d8a0b..a47a577480 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index c7177d342e..dfb481b2c3 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 3fc9127988..577c884cf1 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] + - @tiptap/core@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index f1918dfc60..8217032497 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index f556f52e3c..1ef1f4b793 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 7ca459154b..3fe8a9d9ef 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index da83fcd927..37efacf3b0 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 9c3e078476..4578cfed09 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 2aa33a92a3..a8f44279ef 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Minor Changes + +- 62b0877: Update prosemirror changeset to support token encoders + +### Patch Changes + +- 8c69002: Synced beta with stable features + ## 3.0.0-beta.4 ## 3.0.0-beta.3 diff --git a/packages/pm/package.json b/packages/pm/package.json index 78924963a6..3e67f42587 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index db78e8c2c8..39309772e0 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 38ec88d114..06c1e14c6d 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 2571f75d9f..6a8c512751 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,37 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/extension-list-keymap@3.0.0-beta.5 + - @tiptap/extension-dropcursor@3.0.0-beta.5 + - @tiptap/extension-gapcursor@3.0.0-beta.5 + - @tiptap/extension-list-item@3.0.0-beta.5 + - @tiptap/extension-horizontal-rule@3.0.0-beta.5 + - @tiptap/extension-ordered-list@3.0.0-beta.5 + - @tiptap/extension-bullet-list@3.0.0-beta.5 + - @tiptap/extension-blockquote@3.0.0-beta.5 + - @tiptap/extension-code-block@3.0.0-beta.5 + - @tiptap/extension-hard-break@3.0.0-beta.5 + - @tiptap/extension-paragraph@3.0.0-beta.5 + - @tiptap/extension-underline@3.0.0-beta.5 + - @tiptap/extension-document@3.0.0-beta.5 + - @tiptap/extension-heading@3.0.0-beta.5 + - @tiptap/extension-italic@3.0.0-beta.5 + - @tiptap/extension-strike@3.0.0-beta.5 + - @tiptap/extension-bold@3.0.0-beta.5 + - @tiptap/extension-code@3.0.0-beta.5 + - @tiptap/extension-link@3.0.0-beta.5 + - @tiptap/extension-list@3.0.0-beta.5 + - @tiptap/extension-text@3.0.0-beta.5 + - @tiptap/extensions@3.0.0-beta.5 + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index e19a2932d0..9d4ac58d15 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 225a140a78..cd4467b44d 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 06d3104b1d..447d677551 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 5ebf003e29..91c8955f5f 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index c318402273..4eafb7157d 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 307cef5c8c..d94303612e 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 5842d94ede..e7e24ede0f 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 5b4f21c863..1a44083b3b 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.5 + +### Patch Changes + +- 8c69002: Synced beta with stable features +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/core@3.0.0-beta.5 + - @tiptap/pm@3.0.0-beta.5 + ## 3.0.0-beta.4 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 0c75b80dd1..8c972524ad 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ad0da39848..61d8b97376 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -334,7 +334,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.4 + specifier: 3.0.0-beta.5 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From 2ea04755187dfb8928c38442c484c633a119b64c Mon Sep 17 00:00:00 2001 From: Tada Sayuri Date: Wed, 14 May 2025 00:30:41 +0900 Subject: [PATCH 170/629] Allow setting HTML tags other than for "as" in MarkViewContent (#6346) * fix: Allow setting HTML tags other than for "as" in MarkView * Create quiet-falcons-study.md --- .changeset/quiet-falcons-study.md | 5 +++++ packages/react/src/ReactMarkViewRenderer.tsx | 12 +++++++----- 2 files changed, 12 insertions(+), 5 deletions(-) create mode 100644 .changeset/quiet-falcons-study.md diff --git a/.changeset/quiet-falcons-study.md b/.changeset/quiet-falcons-study.md new file mode 100644 index 0000000000..3aa408ec01 --- /dev/null +++ b/.changeset/quiet-falcons-study.md @@ -0,0 +1,5 @@ +--- +"@tiptap/react": patch +--- + +Allow setting HTML tags other than for "as" in MarkViewContent diff --git a/packages/react/src/ReactMarkViewRenderer.tsx b/packages/react/src/ReactMarkViewRenderer.tsx index 005dd6658d..ed76a0d429 100644 --- a/packages/react/src/ReactMarkViewRenderer.tsx +++ b/packages/react/src/ReactMarkViewRenderer.tsx @@ -16,16 +16,18 @@ export const ReactMarkViewContext = React.createContext({ }) export type MarkViewContentProps = { - as?: NoInfer -} & React.ComponentProps + as?: T +} & Omit, 'as'> -export const MarkViewContent: React.FC = props => { - const Tag = props.as || 'span' +export const MarkViewContent = ( + props: MarkViewContentProps, +) => { + const { as: Tag = 'span', ...rest } = props const { markViewContentRef } = React.useContext(ReactMarkViewContext) return ( // @ts-ignore - + ) } From 4c03acf68ad90d7c4bfa7d37a41de67c0142d0fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 19 May 2025 15:19:50 +0200 Subject: [PATCH 171/629] fix: fix eslint issues when you run lint:fix command --- .prettierignore | 12 ++++++++++++ package.json | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 .prettierignore diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000000..0186fd168d --- /dev/null +++ b/.prettierignore @@ -0,0 +1,12 @@ +**/.git +**/.svn +**/.hg +**/node_modules + +.turbo +.changeset +.github/**/* + +demos/dist/**/* +demos/node_modules/**/* +pnpm-lock.yaml diff --git a/package.json b/package.json index 68260bc326..74743cd43c 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "start": "pnpm --prefix ./demos run start", "dev": "pnpm run start", "lint": "turbo run lint", - "lint:fix": "prettier . --write && eslint --fix --cache --quiet --no-error-on-unmatched-pattern ./", + "lint:fix": "prettier -w --log-level warn . && eslint --fix --cache --quiet --no-error-on-unmatched-pattern .", "lint:staged": "lint-staged", "test:open": "cypress open --project tests", "test:run": "cypress run --project tests", From 2bd5b987eb503137fac4f93b0da2a38e32110fc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Tue, 20 May 2025 15:01:15 +0200 Subject: [PATCH 172/629] fix: apply prettier and eslint automatic fixes --- .../tiptap-2-migrate-imports/.codemodrc.json | 6 ++-- .../tiptap-2-migrate-imports/tsconfig.json | 14 ++------ .../Examples/EnterShortcuts/React/styles.scss | 36 +++++++++---------- .../Extensions/BackgroundColor/Vue/index.vue | 2 +- .../src/Extensions/FontFamily/React/index.jsx | 2 +- demos/src/Extensions/FontFamily/Vue/index.vue | 2 +- demos/src/Extensions/FontSize/React/index.jsx | 2 +- demos/src/Extensions/FontSize/Vue/index.vue | 2 +- .../Extensions/LineHeight/React/styles.scss | 2 +- .../src/Extensions/LineHeight/Vue/styles.scss | 2 +- .../Extensions/Selection/React/styles.scss | 1 - .../Extensions/TrailingNode/React/styles.scss | 1 - .../cypress/integration/core/isActive.spec.ts | 2 +- 13 files changed, 31 insertions(+), 43 deletions(-) diff --git a/codemods/tiptap-2-migrate-imports/.codemodrc.json b/codemods/tiptap-2-migrate-imports/.codemodrc.json index 6eea424d13..0ae3384f02 100644 --- a/codemods/tiptap-2-migrate-imports/.codemodrc.json +++ b/codemods/tiptap-2-migrate-imports/.codemodrc.json @@ -6,9 +6,7 @@ "private": false, "arguments": [], "meta": { - "tags": [ - "tiptap" - ], + "tags": ["tiptap"], "git": "https://github.com/ueberdosis/tiptap.git" } -} \ No newline at end of file +} diff --git a/codemods/tiptap-2-migrate-imports/tsconfig.json b/codemods/tiptap-2-migrate-imports/tsconfig.json index b277021787..d6c5773fb5 100644 --- a/codemods/tiptap-2-migrate-imports/tsconfig.json +++ b/codemods/tiptap-2-migrate-imports/tsconfig.json @@ -3,10 +3,7 @@ "module": "NodeNext", "target": "ESNext", "moduleResolution": "NodeNext", - "lib": [ - "ESNext", - "DOM" - ], + "lib": ["ESNext", "DOM"], "skipLibCheck": true, "esModuleInterop": true, "resolveJsonModule": true, @@ -25,14 +22,9 @@ "noPropertyAccessFromIndexSignature": false, "allowJs": true }, - "include": [ - "./src/**/*.ts", - "./src/**/*.js", - "./test/**/*.ts", - "./test/**/*.js" - ], + "include": ["./src/**/*.ts", "./src/**/*.js", "./test/**/*.ts", "./test/**/*.js"], "exclude": ["node_modules", "./dist/**/*"], "ts-node": { "transpileOnly": true } -} \ No newline at end of file +} diff --git a/demos/src/Examples/EnterShortcuts/React/styles.scss b/demos/src/Examples/EnterShortcuts/React/styles.scss index 7694d7322a..15283b15a5 100644 --- a/demos/src/Examples/EnterShortcuts/React/styles.scss +++ b/demos/src/Examples/EnterShortcuts/React/styles.scss @@ -5,11 +5,11 @@ } /* List styles */ - ul, + ul, ol { padding: 0 1rem; margin: 1.25rem 1rem 1.25rem 0.4rem; - + li p { margin-top: 0.25em; margin-bottom: 0.25em; @@ -17,39 +17,39 @@ } /* Heading styles */ - h1, - h2, - h3, - h4, - h5, + h1, + h2, + h3, + h4, + h5, h6 { line-height: 1.1; margin-top: 2.5rem; text-wrap: pretty; } - h1, + h1, h2 { margin-top: 3.5rem; margin-bottom: 1.5rem; } - h1 { - font-size: 1.4rem; + h1 { + font-size: 1.4rem; } - h2 { - font-size: 1.2rem; + h2 { + font-size: 1.2rem; } - h3 { - font-size: 1.1rem; + h3 { + font-size: 1.1rem; } - h4, - h5, - h6 { - font-size: 1rem; + h4, + h5, + h6 { + font-size: 1rem; } /* Code and preformatted text styles */ diff --git a/demos/src/Extensions/BackgroundColor/Vue/index.vue b/demos/src/Extensions/BackgroundColor/Vue/index.vue index 44ae09922e..d1c8efe6d1 100644 --- a/demos/src/Extensions/BackgroundColor/Vue/index.vue +++ b/demos/src/Extensions/BackgroundColor/Vue/index.vue @@ -70,7 +70,7 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { BackgroundColor , TextStyle } from '@tiptap/extension-text-style' +import { BackgroundColor, TextStyle } from '@tiptap/extension-text-style' import { Editor, EditorContent } from '@tiptap/vue-3' export default { diff --git a/demos/src/Extensions/FontFamily/React/index.jsx b/demos/src/Extensions/FontFamily/React/index.jsx index e1c2489af0..7ff3deccd2 100644 --- a/demos/src/Extensions/FontFamily/React/index.jsx +++ b/demos/src/Extensions/FontFamily/React/index.jsx @@ -3,7 +3,7 @@ import './styles.scss' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { FontFamily , TextStyle } from '@tiptap/extension-text-style' +import { FontFamily, TextStyle } from '@tiptap/extension-text-style' import { EditorContent, useEditor, useEditorState } from '@tiptap/react' import React from 'react' diff --git a/demos/src/Extensions/FontFamily/Vue/index.vue b/demos/src/Extensions/FontFamily/Vue/index.vue index 75c218c76b..7f5a00e6f0 100644 --- a/demos/src/Extensions/FontFamily/Vue/index.vue +++ b/demos/src/Extensions/FontFamily/Vue/index.vue @@ -43,7 +43,7 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { FontFamily , TextStyle } from '@tiptap/extension-text-style' +import { FontFamily, TextStyle } from '@tiptap/extension-text-style' import { Editor, EditorContent } from '@tiptap/vue-3' export default { diff --git a/demos/src/Extensions/FontSize/React/index.jsx b/demos/src/Extensions/FontSize/React/index.jsx index 1a9c1ab48a..6968df45a6 100644 --- a/demos/src/Extensions/FontSize/React/index.jsx +++ b/demos/src/Extensions/FontSize/React/index.jsx @@ -1,4 +1,4 @@ -import { FontSize , TextStyle } from '@tiptap/extension-text-style' +import { FontSize, TextStyle } from '@tiptap/extension-text-style' import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' diff --git a/demos/src/Extensions/FontSize/Vue/index.vue b/demos/src/Extensions/FontSize/Vue/index.vue index 2b165bff35..67dace0974 100644 --- a/demos/src/Extensions/FontSize/Vue/index.vue +++ b/demos/src/Extensions/FontSize/Vue/index.vue @@ -26,7 +26,7 @@ + + diff --git a/demos/src/Extensions/DragHandle/Vue/style.css b/demos/src/Extensions/DragHandle/Vue/style.css new file mode 100644 index 0000000000..60f1eab971 --- /dev/null +++ b/demos/src/Extensions/DragHandle/Vue/style.css @@ -0,0 +1,3 @@ +body { + color: red; +} diff --git a/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/Recommendation.jsx b/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/Recommendation.jsx new file mode 100644 index 0000000000..16ce45807b --- /dev/null +++ b/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/Recommendation.jsx @@ -0,0 +1,65 @@ +import { mergeAttributes, Node } from '@tiptap/core' +import { ReactNodeViewRenderer } from '@tiptap/react' + +import { RecommendationView } from './views/index.jsx' + +export const Recommendation = Node.create({ + name: 'recommendation', + + group: 'block', + + draggable: true, + + addOptions() { + return { + publicationId: '', + HTMLAttributes: { + class: `node-${this.name}`, + }, + } + }, + + addAttributes() { + return { + id: { + default: undefined, + parseHTML: element => element.getAttribute('data-id'), + renderHTML: attributes => ({ + 'data-id': attributes.id, + }), + }, + } + }, + + parseHTML() { + return [ + { + tag: `div.node-${this.name}`, + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['div', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes)] + }, + + addCommands() { + return { + setRecommendation: + () => + ({ chain }) => + chain() + .focus() + .insertContent({ + type: this.name, + }) + .run(), + } + }, + + addNodeView() { + return ReactNodeViewRenderer(RecommendationView) + }, +}) + +export default Recommendation diff --git a/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/index.jsx b/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/index.jsx new file mode 100644 index 0000000000..5c3d4ba952 --- /dev/null +++ b/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/index.jsx @@ -0,0 +1 @@ +export * from './Recommendation.jsx' diff --git a/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/views/RecommendationView.jsx b/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/views/RecommendationView.jsx new file mode 100644 index 0000000000..6565956712 --- /dev/null +++ b/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/views/RecommendationView.jsx @@ -0,0 +1,10 @@ +import { NodeViewWrapper } from '@tiptap/react' + +export const RecommendationView = ({ node }) => { + return ( + +
Recommendation {node.attrs.id}
+

Test

+
+ ) +} diff --git a/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/views/index.jsx b/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/views/index.jsx new file mode 100644 index 0000000000..42bf3b5c01 --- /dev/null +++ b/demos/src/Extensions/DragHandleWithNodeViews/React/extensions/recommendation/views/index.jsx @@ -0,0 +1 @@ +export * from './RecommendationView.jsx' diff --git a/demos/src/Extensions/DragHandleWithNodeViews/React/index.html b/demos/src/Extensions/DragHandleWithNodeViews/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/DragHandleWithNodeViews/React/index.jsx b/demos/src/Extensions/DragHandleWithNodeViews/React/index.jsx new file mode 100644 index 0000000000..0d486ef771 --- /dev/null +++ b/demos/src/Extensions/DragHandleWithNodeViews/React/index.jsx @@ -0,0 +1,37 @@ +import './styles.scss' + +import DragHandle from '@tiptap/extension-drag-handle-react' +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React from 'react' + +import { Recommendation } from './extensions/recommendation/index.jsx' + +export default () => { + const editor = useEditor({ + extensions: [StarterKit, Recommendation], + content: ` +

+ This is a very unique heading. +

+

+ This is a unique paragraph. It’s so unique, it even has an ID attached to it. +

+
+

+ And this one, too. +

+ `, + }) + + return ( + <> + + + + + + + + ) +} diff --git a/demos/src/Extensions/DragHandleWithNodeViews/React/styles.scss b/demos/src/Extensions/DragHandleWithNodeViews/React/styles.scss new file mode 100644 index 0000000000..29d5241957 --- /dev/null +++ b/demos/src/Extensions/DragHandleWithNodeViews/React/styles.scss @@ -0,0 +1,62 @@ +.ProseMirror { + padding-inline: 4rem; + + > * + * { + margin-top: 0.75em; + } + + [data-id] { + border: 3px solid #0D0D0D; + border-radius: 0.5rem; + margin: 1rem 0; + position: relative; + margin-top: 1.5rem; + padding: 2rem 1rem 1rem; + + &::before { + content: attr(data-id); + background-color: #0D0D0D; + font-size: 0.6rem; + letter-spacing: 1px; + font-weight: bold; + text-transform: uppercase; + color: #fff; + position: absolute; + top: 0; + padding: 0.25rem 0.75rem; + border-radius: 0 0 0.5rem 0.5rem; + } + } +} + +.drag-handle { + align-items: center; + background: #f0f0f0; + border-radius: .25rem; + border: 1px solid rgba(0, 0, 0, 0.1); + cursor: grab; + display: flex; + height: 1.5rem; + justify-content: center; + width: 1.5rem; + + svg { + width: 1.25rem; + height: 1.25rem; + } +} + +.node-recommendation { + padding: 0.5rem; + border-radius: 0.5rem; + border: 0.15rem solid #000; + + .title { + font-size: .875rem; + color: #777; + } + + p { + margin: 0; + } +} diff --git a/demos/src/Extensions/FileHandler/React/index.html b/demos/src/Extensions/FileHandler/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/FileHandler/React/index.jsx b/demos/src/Extensions/FileHandler/React/index.jsx new file mode 100644 index 0000000000..cb6e6bb948 --- /dev/null +++ b/demos/src/Extensions/FileHandler/React/index.jsx @@ -0,0 +1,82 @@ +import './styles.scss' + +import Document from '@tiptap/extension-document' +import FileHandler from '@tiptap/extension-file-handler' +import Heading from '@tiptap/extension-heading' +import Image from '@tiptap/extension-image' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { EditorContent, useEditor } from '@tiptap/react' +import React from 'react' + +export default () => { + const editor = useEditor({ + extensions: [ + Document, + Heading, + Paragraph, + Text, + Image, + FileHandler.configure({ + allowedMimeTypes: ['image/png', 'image/jpeg', 'image/gif', 'image/webp'], + onDrop: (currentEditor, files, pos) => { + files.forEach(file => { + const fileReader = new FileReader() + + fileReader.readAsDataURL(file) + fileReader.onload = () => { + currentEditor + .chain() + .insertContentAt(pos, { + type: 'image', + attrs: { + src: fileReader.result, + }, + }) + .focus() + .run() + } + }) + }, + onPaste: (currentEditor, files, htmlContent) => { + files.forEach(file => { + if (htmlContent) { + // if there is htmlContent, stop manual insertion & let other extensions handle insertion via inputRule + // you could extract the pasted file from this url string and upload it to a server for example + console.log(htmlContent) // eslint-disable-line no-console + return false + } + + const fileReader = new FileReader() + + fileReader.readAsDataURL(file) + fileReader.onload = () => { + currentEditor + .chain() + .insertContentAt(currentEditor.state.selection.anchor, { + type: 'image', + attrs: { + src: fileReader.result, + }, + }) + .focus() + .run() + } + }) + }, + }), + ], + content: ` +

+ Try to paste or drop files into this editor +

+

+

+

+

+

+ `, + }) + + return +} diff --git a/demos/src/Extensions/FileHandler/React/styles.scss b/demos/src/Extensions/FileHandler/React/styles.scss new file mode 100644 index 0000000000..51aa105ad4 --- /dev/null +++ b/demos/src/Extensions/FileHandler/React/styles.scss @@ -0,0 +1,17 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + img { + display: block; + height: auto; + margin: 1.5rem 0; + max-width: 100%; + + &.ProseMirror-selectednode { + outline: 3px solid var(--purple); + } + } +} diff --git a/demos/src/Extensions/FileHandler/Vue/index.html b/demos/src/Extensions/FileHandler/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/FileHandler/Vue/index.vue b/demos/src/Extensions/FileHandler/Vue/index.vue new file mode 100644 index 0000000000..d0edbc97e6 --- /dev/null +++ b/demos/src/Extensions/FileHandler/Vue/index.vue @@ -0,0 +1,113 @@ + + + + + diff --git a/demos/src/Extensions/InvisibleCharacters/React/index.html b/demos/src/Extensions/InvisibleCharacters/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/InvisibleCharacters/React/index.jsx b/demos/src/Extensions/InvisibleCharacters/React/index.jsx new file mode 100644 index 0000000000..8cd35ceb4c --- /dev/null +++ b/demos/src/Extensions/InvisibleCharacters/React/index.jsx @@ -0,0 +1,61 @@ +import './styles.scss' + +import Document from '@tiptap/extension-document' +import HardBreak from '@tiptap/extension-hard-break' +import Heading from '@tiptap/extension-heading' +import InvisibleCharacters from '@tiptap/extension-invisible-characters' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { EditorContent, useEditor } from '@tiptap/react' +import React from 'react' + +export default () => { + const editor = useEditor({ + extensions: [ + Document, + Paragraph, + Heading, + Text, + InvisibleCharacters, + HardBreak, + ], + content: ` +

+ This is a heading. +

+

+ This
is
a
paragraph. +

+

+ This is a paragraph, but without breaks. +

+ `, + }) + + if (!editor) { + return false + } + + return ( +
+
+
+ + {/* Works as well */} + {/* */} + + +
+
+ { + const value = event.currentTarget.checked + + editor.commands.showInvisibleCharacters(value) + }} /> + +
+
+ +
+ ) +} diff --git a/demos/src/Extensions/InvisibleCharacters/React/index.spec.js b/demos/src/Extensions/InvisibleCharacters/React/index.spec.js new file mode 100644 index 0000000000..90283aedcc --- /dev/null +++ b/demos/src/Extensions/InvisibleCharacters/React/index.spec.js @@ -0,0 +1,9 @@ +context('/src/Extensions/InvisibleCharacters/React/', () => { + before(() => { + cy.visit('/src/Extensions/InvisibleCharacters/React/') + }) + + it('should have invisible characters', () => { + cy.get('[class*="Tiptap-invisible-character"]').should('exist') + }) +}) diff --git a/demos/src/Extensions/InvisibleCharacters/React/styles.scss b/demos/src/Extensions/InvisibleCharacters/React/styles.scss new file mode 100644 index 0000000000..afd5ba2145 --- /dev/null +++ b/demos/src/Extensions/InvisibleCharacters/React/styles.scss @@ -0,0 +1,6 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } +} diff --git a/demos/src/Extensions/InvisibleCharacters/Vue/index.html b/demos/src/Extensions/InvisibleCharacters/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/InvisibleCharacters/Vue/index.spec.js b/demos/src/Extensions/InvisibleCharacters/Vue/index.spec.js new file mode 100644 index 0000000000..110f7b7c72 --- /dev/null +++ b/demos/src/Extensions/InvisibleCharacters/Vue/index.spec.js @@ -0,0 +1,9 @@ +context('/src/Extensions/InvisibleCharacters/Vue/', () => { + before(() => { + cy.visit('/src/Extensions/InvisibleCharacters/Vue/') + }) + + it('should have invisible characters', () => { + cy.get('[class*="Tiptap-invisible-character"]').should('exist') + }) +}) diff --git a/demos/src/Extensions/InvisibleCharacters/Vue/index.vue b/demos/src/Extensions/InvisibleCharacters/Vue/index.vue new file mode 100644 index 0000000000..fe28b1537d --- /dev/null +++ b/demos/src/Extensions/InvisibleCharacters/Vue/index.vue @@ -0,0 +1,82 @@ + + + + + diff --git a/demos/src/Extensions/Mathematics/React/index.html b/demos/src/Extensions/Mathematics/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/Mathematics/React/index.jsx b/demos/src/Extensions/Mathematics/React/index.jsx new file mode 100644 index 0000000000..984ef28697 --- /dev/null +++ b/demos/src/Extensions/Mathematics/React/index.jsx @@ -0,0 +1,74 @@ +import 'katex/dist/katex.min.css' +import './styles.scss' + +import { Mathematics } from '@tiptap/extension-mathematics' +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React, { useCallback } from 'react' + +export default () => { + const editor = useEditor({ + shouldRerenderOnTransaction: true, + extensions: [StarterKit, Mathematics], + content: ` +

+ This editor supports $\\LaTeX$ math expressions. +

+

+ Did you know that $3 * 3 = 9$? Isn't that crazy? Also Pythagoras' theorem is $a^2 + b^2 = c^2$.
+ Also the square root of 2 is $\\sqrt{2}$. If you want to know more about $\\LaTeX$ visit katex.org. +

+ +
$\\LaTeX$
+
+

+ Do you want go deeper? Here is a list of all supported functions: +

+
    +
  • $\\sin(x)$
  • +
  • $\\cos(x)$
  • +
  • $\\tan(x)$
  • +
  • $\\log(x)$
  • +
  • $\\ln(x)$
  • +
  • $\\sqrt{x}$
  • +
  • $\\sum_{i=0}^n x_i$
  • +
  • $\\int_a^b x^2 dx$
  • +
  • $\\frac{1}{x}$
  • +
  • $\\binom{n}{k}$
  • +
  • $\\sqrt[n]{x}$
  • +
  • $\\left(\\frac{1}{x}\\right)$
  • +
  • $\\left\\{\\begin{matrix}x&\\text{if }x>0\\\\0&\\text{otherwise}\\end{matrix}\\right.$
  • +
+ `, + }) + + const toggleEditing = useCallback( + e => { + if (!editor) { + return + } + + const { checked } = e.target + + editor.setEditable(!checked, true) + editor.view.dispatch(editor.view.state.tr.scrollIntoView()) + }, + [editor], + ) + + if (!editor) { + return null + } + + return ( + <> +
+ +
+ + + ) +} diff --git a/demos/src/Extensions/Mathematics/React/index.spec.js b/demos/src/Extensions/Mathematics/React/index.spec.js new file mode 100644 index 0000000000..315fd0c42b --- /dev/null +++ b/demos/src/Extensions/Mathematics/React/index.spec.js @@ -0,0 +1,21 @@ +context('/src/Extensions/Mathematics/React/', () => { + beforeEach(() => { + cy.visit('/src/Extensions/Mathematics/React/') + }) + + // TODO: Write tests + it('should render latex tags when no focus', () => { + cy.get('.ProseMirror').then(() => { + // find latex tags by class .katex + cy.get('.katex').should('exist') + cy.get('.katex').should('have.length', 18) + cy.get('.katex').should('be.visible') + }) + }) + + it('should not render latex tags in codeBlock', () => { + cy.get('.ProseMirror').then(() => { + cy.get('.ProseMirror pre code .katex').should('not.exist') + }) + }) +}) diff --git a/demos/src/Extensions/Mathematics/React/styles.scss b/demos/src/Extensions/Mathematics/React/styles.scss new file mode 100644 index 0000000000..e5a976b744 --- /dev/null +++ b/demos/src/Extensions/Mathematics/React/styles.scss @@ -0,0 +1,33 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + // Mathematics extension styles + .Tiptap-mathematics-editor { + background: #202020; + color: #fff; + font-family: monospace; + padding: 0.2rem 0.5rem; + } + + .Tiptap-mathematics-render { + padding: 0 0.25rem; + + &--editable { + cursor: pointer; + transition: background 0.2s; + + &:hover { + background: #eee; + } + } + } + + .Tiptap-mathematics-editor, + .Tiptap-mathematics-render { + border-radius: 0.25rem; + display: inline-block; + } +} diff --git a/demos/src/Extensions/Mathematics/Vue/index.html b/demos/src/Extensions/Mathematics/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/Mathematics/Vue/index.spec.js b/demos/src/Extensions/Mathematics/Vue/index.spec.js new file mode 100644 index 0000000000..68633484d1 --- /dev/null +++ b/demos/src/Extensions/Mathematics/Vue/index.spec.js @@ -0,0 +1,7 @@ +context('/src/Extensions/Mathematics/Vue/', () => { + before(() => { + cy.visit('/src/Extensions/Mathematics/Vue/') + }) + + // TODO: Write tests +}) diff --git a/demos/src/Extensions/Mathematics/Vue/index.vue b/demos/src/Extensions/Mathematics/Vue/index.vue new file mode 100644 index 0000000000..4646f6aec0 --- /dev/null +++ b/demos/src/Extensions/Mathematics/Vue/index.vue @@ -0,0 +1,119 @@ + + + + + diff --git a/demos/src/Extensions/TableOfContents/React/ToC.jsx b/demos/src/Extensions/TableOfContents/React/ToC.jsx new file mode 100644 index 0000000000..4a3d05257e --- /dev/null +++ b/demos/src/Extensions/TableOfContents/React/ToC.jsx @@ -0,0 +1,67 @@ +import { TextSelection } from '@tiptap/pm/state' + +export const ToCItem = ({ item, onItemClick }) => { + return ( + + ) +} + +export const ToCEmptyState = () => { + return ( +
+

Start editing your document to see the outline.

+
+ ) +} + +export const ToC = ({ items = [], editor }) => { + if (items.length === 0) { + return + } + + const onItemClick = (e, id) => { + e.preventDefault() + + if (editor) { + const element = editor.view.dom.querySelector(`[data-toc-id="${id}"`) + const pos = editor.view.posAtDOM(element, 0) + + // set focus + const tr = editor.view.state.tr + + tr.setSelection(new TextSelection(tr.doc.resolve(pos))) + + editor.view.dispatch(tr) + + editor.view.focus() + + // eslint-disable-next-line + if (history.pushState) { + // eslint-disable-next-line + history.pushState(null, null, `#${id}`) + } + + window.scrollTo({ + top: element.getBoundingClientRect().top + window.scrollY, + behavior: 'smooth', + }) + } + } + + return ( + <> + {items.map((item, i) => ( + + ))} + + ) +} diff --git a/demos/src/Extensions/TableOfContents/React/index.html b/demos/src/Extensions/TableOfContents/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/TableOfContents/React/index.jsx b/demos/src/Extensions/TableOfContents/React/index.jsx new file mode 100644 index 0000000000..3927551dd4 --- /dev/null +++ b/demos/src/Extensions/TableOfContents/React/index.jsx @@ -0,0 +1,48 @@ +import './styles.scss' + +import { getHierarchicalIndexes, TableOfContents } from '@tiptap/extension-table-of-contents' +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React, { useState } from 'react' + +import { content as bookContent } from '../content.js' +import { ToC } from './ToC.jsx' + +const MemorizedToC = React.memo(ToC) + +export default () => { + const [items, setItems] = useState([]) + + const editor = useEditor({ + extensions: [ + StarterKit, + TableOfContents.configure({ + getIndex: getHierarchicalIndexes, + onUpdate(content) { + setItems(content) + }, + }), + ], + content: bookContent, + }) + + if (!editor) { + return null + } + + return ( +
+
+ +
+
+
+
Table of contents
+
+ +
+
+
+
+ ) +} diff --git a/demos/src/Extensions/TableOfContents/React/styles.scss b/demos/src/Extensions/TableOfContents/React/styles.scss new file mode 100644 index 0000000000..4a8b273519 --- /dev/null +++ b/demos/src/Extensions/TableOfContents/React/styles.scss @@ -0,0 +1,100 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } +} + +.col-group { + display: flex; + flex-direction: row; + + @media (max-width: 540px) { + flex-direction: column-reverse; + } +} + +.main { + display: flex; + flex-direction: column; + width: 100%; + height: 100%; + overflow: auto; +} + +.sidebar { + border-left: 1px solid var(--gray-3); + flex-grow: 0; + flex-shrink: 0; + padding: 1rem; + width: 15rem; + position: sticky; + height: 100vh; + top: 0; + + @media (min-width: 800px) { + width: 20rem; + } + + @media (max-width: 540px) { + border-bottom: 1px solid var(--gray-3); + border-left: unset; + width: 100%; + height: auto; + position: unset; + padding: 1.5rem; + } +} + +.sidebar-options { + align-items: flex-start; + display: flex; + flex-direction: column; + height: 100%; + gap: 1rem; + position: sticky; + top: 1rem; +} + +.table-of-contents { + display: flex; + flex-direction: column; + font-size: 0.875rem; + gap: 0.25rem; + overflow: auto; + text-decoration: none; + + > div { + border-radius: 0.25rem; + padding-left: calc(0.875rem * (var(--level) - 1)); + transition: all 0.2s cubic-bezier(0.65,0.05,0.36,1); + + &:hover { + background-color: var(--gray-2); + } + } + + .empty-state { + color: var(--gray-5); + user-select: none; + } + + .is-active a { + color: var(--purple); + } + + .is-scrolled-over a { + color: var(--gray-5); + } + + a { + color: var(--black); + display: flex; + gap: 0.25rem; + text-decoration: none; + + &::before { + content:attr(data-item-index)"."; + } + } +} diff --git a/demos/src/Extensions/TableOfContents/Vue/ToC.vue b/demos/src/Extensions/TableOfContents/Vue/ToC.vue new file mode 100644 index 0000000000..2ed098ae2b --- /dev/null +++ b/demos/src/Extensions/TableOfContents/Vue/ToC.vue @@ -0,0 +1,63 @@ + + + diff --git a/demos/src/Extensions/TableOfContents/Vue/ToCEmptyState.vue b/demos/src/Extensions/TableOfContents/Vue/ToCEmptyState.vue new file mode 100644 index 0000000000..2236ab8e31 --- /dev/null +++ b/demos/src/Extensions/TableOfContents/Vue/ToCEmptyState.vue @@ -0,0 +1,5 @@ + diff --git a/demos/src/Extensions/TableOfContents/Vue/ToCItem.vue b/demos/src/Extensions/TableOfContents/Vue/ToCItem.vue new file mode 100644 index 0000000000..e5a722763c --- /dev/null +++ b/demos/src/Extensions/TableOfContents/Vue/ToCItem.vue @@ -0,0 +1,38 @@ + + + diff --git a/demos/src/Extensions/TableOfContents/Vue/index.html b/demos/src/Extensions/TableOfContents/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/TableOfContents/Vue/index.spec.js b/demos/src/Extensions/TableOfContents/Vue/index.spec.js new file mode 100644 index 0000000000..839eb83420 --- /dev/null +++ b/demos/src/Extensions/TableOfContents/Vue/index.spec.js @@ -0,0 +1,7 @@ +context('/src/Extensions/TableOfContents/Vue', () => { + before(() => { + cy.visit('/src/Extensions/TableOfContents/Vue') + }) + + // TODO: Write tests +}) diff --git a/demos/src/Extensions/TableOfContents/Vue/index.vue b/demos/src/Extensions/TableOfContents/Vue/index.vue new file mode 100644 index 0000000000..9650fc4d85 --- /dev/null +++ b/demos/src/Extensions/TableOfContents/Vue/index.vue @@ -0,0 +1,163 @@ + + + + + diff --git a/demos/src/Extensions/TableOfContents/content.js b/demos/src/Extensions/TableOfContents/content.js new file mode 100644 index 0000000000..a22dbcac61 --- /dev/null +++ b/demos/src/Extensions/TableOfContents/content.js @@ -0,0 +1,27 @@ +export const content = ` +

Text editor

+

A text editor is a type of computer program that edits plain text. Such programs are sometimes known as "notepad" software (e.g. Windows Notepad). Text editors are provided with operating systems and software development packages, and can be used to change files such as configuration files, documentation files and programming language source code.

+ +

Plain text and rich text

+

There are important differences between plain text (created and edited by text editors) and rich text (such as that created by word processors or desktop publishing software).

+

Plain text exclusively consists of character representation. Each character is represented by a fixed-length sequence of one, two, or four bytes, or as a variable-length sequence of one to four bytes, in accordance to specific character encoding conventions, such as ASCII, ISO/IEC 2022, Shift JIS, UTF-8, or UTF-16. These conventions define many printable characters, but also non-printing characters that control the flow of the text, such as space, line break, and page break. Plain text contains no other information about the text itself, not even the character encoding convention employed. Plain text is stored in text files, although text files do not exclusively store plain text. Since the early days of computers, plain text was (once by necessity and now by convention) generally displayed using a monospace font, such that horizontal alignment and columnar formatting were sometimes done using whitespace characters.

+

Rich text, on the other hand, may contain metadata, character formatting data (e.g. typeface, size, weight and style), paragraph formatting data (e.g. indentation, alignment, letter and word distribution, and space between lines or other paragraphs), and page specification data (e.g. size, margin and reading direction). Rich text can be very complex. Rich text can be saved in binary format (e.g. DOC), text files adhering to a markup language (e.g. RTF or HTML), or in a hybrid form of both (e.g. Office Open XML).

+

Text editors are intended to open and save text files containing either plain text or anything that can be interpreted as plain text, including the markup for rich text or the markup for something else (e.g. SVG).

+ +

History

+ +

Before text editors existed, computer text was punched into cards with keypunch machines. Physical boxes of these thin cardboard cards were then inserted into a card reader. Magnetic tape, drum and disk card image files created from such card decks often had no line-separation characters at all, and assumed fixed-length 80- or 90-character records. An alternative to cards was Punched tape. It could be created by some teleprinters (such as the Teletype), which used special characters to indicate ends of records. Some early operating systems included batch text editors, either integrated with language processors or as separate utility programs; one early example was the ability to edit SQUOZE source files for SCAT in SHARE Operating System.

+

The first interactive text editors were "line editors" oriented to teleprinter- or typewriter-style terminals without displays. Commands (often a single keystroke) effected edits to a file at an imaginary insertion point called the "cursor". Edits were verified by typing a command to print a small section of the file, and periodically by printing the entire file. In some line editors, the cursor could be moved by commands that specified the line number in the file, text strings (context) for which to search, and eventually regular expressions. Line editors were major improvements over keypunching. Some line editors could be used by keypunch; editing commands could be taken from a deck of cards and applied to a specified file. Some common line editors supported a "verify" mode in which change commands displayed the altered lines.

+ +
Weird h5 headline
+

When computer terminals with video screens became available, screen-based text editors (sometimes called just "screen editors") became common. One of the earliest full-screen editors was O26, which was written for the operator console of the CDC 6000 series computers in 1967. Another early full-screen editor was vi. Written in the 1970s, it is still a standard editor on Unix and Linux operating systems. Also written in the 1970s was the UCSD Pascal Screen Oriented Editor, which was optimized both for indented source code and general text. Emacs, one of the first free and open-source software projects, is another early full-screen or real-time editor, one that was ported to many systems. A full-screen editor's ease-of-use and speed (compared to the line-based editors) motivated many early purchases of video terminals.

+ +

Types of text editors

+ +

Simple text editors

+

Some text editors are small and simple, while others offer broad and complex functions. For example, Unix and Unix-like operating systems have the pico editor (or a variant), but many also include the vi and Emacs editors. Microsoft Windows systems come with the simple Notepad, though many people—especially programmers—prefer other editors with more features. Under Apple Macintosh's classic Mac OS there was the native TeachText later replaced by SimpleText in 1994, which was replaced in Mac OS X by TextEdit, which combines features of a text editor with those typical of a word processor such as rulers, margins and multiple font selection. These features are not available simultaneously, but must be switched by user command, or through the program automatically determining the file type.

+ +

Word editors

+ +

Most word processors can read and write files in plain text format, allowing them to open files saved from text editors. Saving these files from a word processor, however, requires ensuring the file is written in plain text format, and that any text encoding or BOM settings won't obscure the file for its intended use. Non-WYSIWYG word processors, such as WordStar, are more easily pressed into service as text editors, and in fact were commonly used as such during the 1980s. The default file format of these word processors often resembles a markup language, with the basic format being plain text and visual formatting achieved using non-printing control characters or escape sequences. Later word processors like Microsoft Word store their files in a binary format and are almost never used to edit plain text files.

+` diff --git a/demos/src/Extensions/UniqueID/React/index.html b/demos/src/Extensions/UniqueID/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/UniqueID/React/index.jsx b/demos/src/Extensions/UniqueID/React/index.jsx new file mode 100644 index 0000000000..254886006e --- /dev/null +++ b/demos/src/Extensions/UniqueID/React/index.jsx @@ -0,0 +1,30 @@ +import './styles.scss' + +import UniqueID from '@tiptap/extension-unique-id' +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React from 'react' + +export default () => { + const editor = useEditor({ + extensions: [ + StarterKit, + UniqueID.configure({ + types: ['heading', 'paragraph'], + }), + ], + content: ` +

+ This is a very unique heading. +

+

+ This is a unique paragraph. It’s so unique, it even has an ID attached to it. +

+

+ And this one, too. +

+ `, + }) + + return +} diff --git a/demos/src/Extensions/UniqueID/React/index.spec.js b/demos/src/Extensions/UniqueID/React/index.spec.js new file mode 100644 index 0000000000..c550baf264 --- /dev/null +++ b/demos/src/Extensions/UniqueID/React/index.spec.js @@ -0,0 +1,13 @@ +context('/src/Extensions/UniqueID/React/', () => { + beforeEach(() => { + cy.visit('/src/Extensions/UniqueID/React/') + }) + + it('has a heading with an unique ID', () => { + cy.get('.ProseMirror h1').should('have.attr', 'data-id') + }) + + it('has a paragraph with an unique ID', () => { + cy.get('.ProseMirror p').should('have.attr', 'data-id') + }) +}) diff --git a/demos/src/Extensions/UniqueID/React/styles.scss b/demos/src/Extensions/UniqueID/React/styles.scss new file mode 100644 index 0000000000..d879ff185a --- /dev/null +++ b/demos/src/Extensions/UniqueID/React/styles.scss @@ -0,0 +1,28 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* Unique data id */ + [data-id] { + border: 2px solid var(--black); + border-radius: 0.5rem; + padding: 2.5rem 1rem 1rem; + position: relative; + + &::before { + background-color: var(--black); + border-radius: 0 0 0.5rem 0; + color: var(--white); + content: attr(data-id); + font-size: 0.75rem; + font-weight: bold; + left: 0; + line-height: 1.5; + padding: 0.25rem 0.5rem; + position: absolute; + top: 0; + } + } +} diff --git a/demos/src/Extensions/UniqueID/Vue/index.html b/demos/src/Extensions/UniqueID/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/UniqueID/Vue/index.spec.js b/demos/src/Extensions/UniqueID/Vue/index.spec.js new file mode 100644 index 0000000000..b8798541c6 --- /dev/null +++ b/demos/src/Extensions/UniqueID/Vue/index.spec.js @@ -0,0 +1,13 @@ +context('/src/Extensions/UniqueID/Vue/', () => { + beforeEach(() => { + cy.visit('/src/Extensions/UniqueID/React/') + }) + + it('has a heading with an unique ID', () => { + cy.get('.ProseMirror h1').should('have.attr', 'data-id') + }) + + it('has a paragraph with an unique ID', () => { + cy.get('.ProseMirror p').should('have.attr', 'data-id') + }) +}) diff --git a/demos/src/Extensions/UniqueID/Vue/index.vue b/demos/src/Extensions/UniqueID/Vue/index.vue new file mode 100644 index 0000000000..d6b4921cbc --- /dev/null +++ b/demos/src/Extensions/UniqueID/Vue/index.vue @@ -0,0 +1,85 @@ + + + + + diff --git a/demos/src/Extensions/UniqueIDWithYdoc/React/index.html b/demos/src/Extensions/UniqueIDWithYdoc/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/UniqueIDWithYdoc/React/index.jsx b/demos/src/Extensions/UniqueIDWithYdoc/React/index.jsx new file mode 100644 index 0000000000..1a700b6337 --- /dev/null +++ b/demos/src/Extensions/UniqueIDWithYdoc/React/index.jsx @@ -0,0 +1,50 @@ +import './styles.scss' + +import { TiptapTransformer } from '@hocuspocus/transformer' +import Collaboration from '@tiptap/extension-collaboration' +import Document from '@tiptap/extension-document' +import Heading from '@tiptap/extension-heading' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import UniqueID from '@tiptap/extension-unique-id' +import { EditorContent, useEditor } from '@tiptap/react' +import React from 'react' + +const doc = TiptapTransformer.toYdoc({ + type: 'doc', + content: [ + { + type: 'heading', + attrs: { level: 1 }, + content: [{ type: 'text', text: 'This is a predefined, collaborative ydoc' }], + }, + { + type: 'paragraph', + content: [{ type: 'text', text: "Let's see how this works out." }], + }, + { + type: 'paragraph', + content: [{ type: 'text', text: 'This should now generate unique IDs correctly' }], + }, + ], +}) + +export default () => { + const editor = useEditor({ + extensions: [ + Document, + Heading, + Paragraph, + Text, + Collaboration.configure({ + document: doc, + }), + UniqueID.configure({ + types: ['heading', 'paragraph'], + filterTransaction: () => true, + }), + ], + }) + + return +} diff --git a/demos/src/Extensions/UniqueIDWithYdoc/React/index.spec.js b/demos/src/Extensions/UniqueIDWithYdoc/React/index.spec.js new file mode 100644 index 0000000000..c550baf264 --- /dev/null +++ b/demos/src/Extensions/UniqueIDWithYdoc/React/index.spec.js @@ -0,0 +1,13 @@ +context('/src/Extensions/UniqueID/React/', () => { + beforeEach(() => { + cy.visit('/src/Extensions/UniqueID/React/') + }) + + it('has a heading with an unique ID', () => { + cy.get('.ProseMirror h1').should('have.attr', 'data-id') + }) + + it('has a paragraph with an unique ID', () => { + cy.get('.ProseMirror p').should('have.attr', 'data-id') + }) +}) diff --git a/demos/src/Extensions/UniqueIDWithYdoc/React/styles.scss b/demos/src/Extensions/UniqueIDWithYdoc/React/styles.scss new file mode 100644 index 0000000000..80811178c1 --- /dev/null +++ b/demos/src/Extensions/UniqueIDWithYdoc/React/styles.scss @@ -0,0 +1,55 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* Unique data id */ + [data-id] { + border: 2px solid var(--black); + border-radius: 0.5rem; + padding: 2.5rem 1rem 1rem; + position: relative; + + &::before { + background-color: var(--black); + border-radius: 0 0 0.5rem 0; + color: var(--white); + content: attr(data-id); + font-size: 0.75rem; + font-weight: bold; + left: 0; + line-height: 1.5; + padding: 0.25rem 0.5rem; + position: absolute; + top: 0; + } + } + + /* Give a remote user a caret */ + .collaboration-carets__caret { + border-left: 1px solid #0d0d0d; + border-right: 1px solid #0d0d0d; + margin-left: -1px; + margin-right: -1px; + pointer-events: none; + position: relative; + word-break: normal; + } + + /* Render the username above the caret */ + .collaboration-carets__label { + border-radius: 3px 3px 3px 0; + color: #0d0d0d; + font-size: 12px; + font-style: normal; + font-weight: 600; + left: -1px; + line-height: normal; + padding: 0.1rem 0.3rem; + position: absolute; + top: -1.4em; + user-select: none; + white-space: nowrap; + } +} diff --git a/demos/src/Nodes/Details/React/index.html b/demos/src/Nodes/Details/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Nodes/Details/React/index.jsx b/demos/src/Nodes/Details/React/index.jsx new file mode 100644 index 0000000000..3b46f63ad4 --- /dev/null +++ b/demos/src/Nodes/Details/React/index.jsx @@ -0,0 +1,85 @@ +import './styles.scss' + +import Details from '@tiptap/extension-details' +import DetailsContent from '@tiptap/extension-details-content' +import DetailsSummary from '@tiptap/extension-details-summary' +import { Placeholder } from '@tiptap/extensions' +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React from 'react' + +export default () => { + const editor = useEditor({ + extensions: [ + StarterKit, + Details.configure({ + persist: true, + HTMLAttributes: { + class: 'details', + }, + }), + DetailsSummary, + DetailsContent, + Placeholder.configure({ + includeChildren: true, + placeholder: ({ node }) => { + if (node.type.name === 'detailsSummary') { + return 'Summary' + } + + return null + }, + }), + ], + content: ` +

Look at these details

+
+ This is a summary +

Surprise!

+
+

Nested details are also supported

+
+ This is another summary +

And there is even more.

+
+ We need to go deeper +

Booya!

+
+
+ `, + }) + + if (!editor) { + return null + } + + return ( + <> +
+
+ + + +
+
+ + + ) +} diff --git a/demos/src/Nodes/Details/React/styles.scss b/demos/src/Nodes/Details/React/styles.scss new file mode 100644 index 0000000000..0fa20fc3c3 --- /dev/null +++ b/demos/src/Nodes/Details/React/styles.scss @@ -0,0 +1,62 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* Details */ + .details { + display: flex; + gap: 0.25rem; + margin: 1.5rem 0; + border: 1px solid var(--gray-3); + border-radius: 0.5rem; + padding: 0.5rem; + + summary { + font-weight: 700; + } + + > button { + align-items: center; + background: transparent; + border-radius: 4px; + display: flex; + font-size: 0.625rem; + height: 1.25rem; + justify-content: center; + line-height: 1; + margin-top: 0.1rem; + padding: 0; + width: 1.25rem; + + &:hover { + background-color: var(--gray-3); + } + + &::before { + content: '\25B6'; + } + + } + + &.is-open > button::before { + transform: rotate(90deg); + } + + > div { + display: flex; + flex-direction: column; + gap: 1rem; + width: 100%; + + > [data-type="detailsContent"] > :last-child { + margin-bottom: 0.5rem; + } + } + + .details { + margin: 0.5rem 0; + } + } +} diff --git a/demos/src/Nodes/Details/Vue/index.html b/demos/src/Nodes/Details/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Nodes/Details/Vue/index.spec.js b/demos/src/Nodes/Details/Vue/index.spec.js new file mode 100644 index 0000000000..36836e601e --- /dev/null +++ b/demos/src/Nodes/Details/Vue/index.spec.js @@ -0,0 +1,45 @@ +context('/src/Nodes/Details/Vue/', () => { + beforeEach(() => { + cy.visit('/src/Nodes/Details/Vue/') + cy.get('.ProseMirror').then(([{ editor }]) => { + editor.commands.setContent('

Example Text

') + cy.get('.ProseMirror').type('{selectall}') + }) + }) + + it('should parse details tags correctly', () => { + cy.get('.ProseMirror').then(([{ editor }]) => { + editor.commands.setContent('
Summary

Content

') + expect(editor.getHTML()).to.eq( + '
Summary

Content

', + ) + }) + }) + + it('should parse details tags without paragraphs correctly', () => { + cy.get('.ProseMirror').then(([{ editor }]) => { + editor.commands.setContent('
SummaryContent
') + expect(editor.getHTML()).to.eq( + '
Summary

Content

', + ) + }) + }) + + it('setDetails should make the selected line a details node', () => { + cy.get('.ProseMirror [data-type="details"]').should('not.exist') + + cy.get('button:first').click() + + cy.get('.ProseMirror').find('[data-type="details"] [data-type="detailsContent"]').should('contain', 'Example Text') + }) + + it('unsetDetails should make the selected line a paragraph node', () => { + cy.get('button:first').click() + + cy.get('.ProseMirror [data-type="details"]').should('exist') + + cy.get('button:nth-child(2)').click() + + cy.get('.ProseMirror [data-type="details"]').should('not.exist') + }) +}) diff --git a/demos/src/Nodes/Details/Vue/index.vue b/demos/src/Nodes/Details/Vue/index.vue new file mode 100644 index 0000000000..bc7b9279a3 --- /dev/null +++ b/demos/src/Nodes/Details/Vue/index.vue @@ -0,0 +1,146 @@ + + + + + diff --git a/demos/src/Nodes/Emoji/React/EmojiList.jsx b/demos/src/Nodes/Emoji/React/EmojiList.jsx new file mode 100644 index 0000000000..aadc6a7b6f --- /dev/null +++ b/demos/src/Nodes/Emoji/React/EmojiList.jsx @@ -0,0 +1,62 @@ +import './EmojiList.scss' + +import React, { forwardRef, useEffect, useImperativeHandle, useState } from 'react' + +export const EmojiList = forwardRef((props, ref) => { + const [selectedIndex, setSelectedIndex] = useState(0) + + const selectItem = index => { + const item = props.items[index] + + if (item) { + props.command({ name: item.name }) + } + } + + const upHandler = () => { + setSelectedIndex((selectedIndex + props.items.length - 1) % props.items.length) + } + + const downHandler = () => { + setSelectedIndex((selectedIndex + 1) % props.items.length) + } + + const enterHandler = () => { + selectItem(selectedIndex) + } + + useEffect(() => setSelectedIndex(0), [props.items]) + + useImperativeHandle(ref, () => { + return { + onKeyDown: x => { + if (x.event.key === 'ArrowUp') { + upHandler() + return true + } + + if (x.event.key === 'ArrowDown') { + downHandler() + return true + } + + if (x.event.key === 'Enter') { + enterHandler() + return true + } + + return false + }, + } + }, [upHandler, downHandler, enterHandler]) + + return ( +
+ {props.items.map((item, index) => ( + + ))} +
+ ) +}) diff --git a/demos/src/Nodes/Emoji/React/EmojiList.scss b/demos/src/Nodes/Emoji/React/EmojiList.scss new file mode 100644 index 0000000000..bc2671c3f8 --- /dev/null +++ b/demos/src/Nodes/Emoji/React/EmojiList.scss @@ -0,0 +1,36 @@ +/* Dropdown menu */ +.dropdown-menu { + background: var(--white); + border: 1px solid var(--gray-1); + border-radius: 0.7rem; + box-shadow: var(--shadow); + display: flex; + flex-direction: column; + gap: 0.1rem; + overflow: auto; + padding: 0.4rem; + position: relative; + + button { + align-items: center; + background-color: transparent; + display: flex; + gap: 0.25rem; + text-align: left; + width: 100%; + + &:hover, + &:hover.is-selected { + background-color: var(--gray-3); + } + + &.is-selected { + background-color: var(--gray-2); + } + + img { + height: 1em; + width: 1em; + } + } +} diff --git a/demos/src/Nodes/Emoji/React/index.html b/demos/src/Nodes/Emoji/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Nodes/Emoji/React/index.jsx b/demos/src/Nodes/Emoji/React/index.jsx new file mode 100644 index 0000000000..18b70dfb8a --- /dev/null +++ b/demos/src/Nodes/Emoji/React/index.jsx @@ -0,0 +1,61 @@ +import './styles.scss' + +import Emoji, { gitHubEmojis } from '@tiptap/extension-emoji' +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React from 'react' + +import suggestion from './suggestion.js' + +export default () => { + const editor = useEditor({ + extensions: [ + StarterKit, + Emoji.configure({ + emojis: gitHubEmojis, + enableEmoticons: true, + suggestion, + }), + ], + content: ` +

+ These + are + some + emojis + rendered + as + inline + nodes. +

+

+ Type : to open the autocomplete. +

+

+ Even + custom + emojis + are + supported. +

+

+ And unsupported emojis (without a fallback image) are rendered as just the shortcode . +

+
In code blocks all emojis are rendered as plain text. 👩‍💻👨‍💻
+

+ There is also support for emoticons. Try typing <3. +

+ `, + }) + + return ( + <> +
+
+ +
+
+ + + ) +} diff --git a/demos/src/Nodes/Emoji/React/styles.scss b/demos/src/Nodes/Emoji/React/styles.scss new file mode 100644 index 0000000000..372bab23ff --- /dev/null +++ b/demos/src/Nodes/Emoji/React/styles.scss @@ -0,0 +1,14 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + // Emoji extension styles + [data-type="emoji"] { + img { + height: 1em; + width: 1em; + } + } +} diff --git a/demos/src/Nodes/Emoji/React/suggestion.js b/demos/src/Nodes/Emoji/React/suggestion.js new file mode 100644 index 0000000000..259d159d8f --- /dev/null +++ b/demos/src/Nodes/Emoji/React/suggestion.js @@ -0,0 +1,80 @@ +import { computePosition } from '@floating-ui/dom' +import { ReactRenderer } from '@tiptap/react' + +import { EmojiList } from './EmojiList.jsx' + +export default { + items: ({ editor, query }) => { + return editor.storage.emoji.emojis + .filter(({ shortcodes, tags }) => { + return ( + shortcodes.find(shortcode => shortcode.startsWith(query.toLowerCase())) || + tags.find(tag => tag.startsWith(query.toLowerCase())) + ) + }) + .slice(0, 5) + }, + + allowSpaces: false, + + render: () => { + let component + + function repositionComponent(clientRect) { + if (!component || !component.element) { + return + } + + const virtualElement = { + getBoundingClientRect() { + return clientRect + }, + } + + computePosition(virtualElement, component.element, { + placement: 'bottom-start', + }).then(pos => { + Object.assign(component.element.style, { + left: `${pos.x}px`, + top: `${pos.y}px`, + position: pos.strategy === 'fixed' ? 'fixed' : 'absolute', + }) + }) + } + + return { + onStart: props => { + component = new ReactRenderer(EmojiList, { + props, + editor: props.editor, + }) + + document.body.appendChild(component.element) + repositionComponent(props.clientRect()) + }, + + onUpdate(props) { + component.updateProps(props) + repositionComponent(props.clientRect()) + }, + + onKeyDown(props) { + if (props.event.key === 'Escape') { + document.body.removeChild(component.element) + component.destroy() + + return true + } + + return component.ref?.onKeyDown(props) + }, + + onExit() { + if (document.body.contains(component.element)) { + document.body.removeChild(component.element) + } + component.destroy() + }, + } + }, +} diff --git a/demos/src/Nodes/Emoji/Vue/EmojiList.vue b/demos/src/Nodes/Emoji/Vue/EmojiList.vue new file mode 100644 index 0000000000..0121bb5208 --- /dev/null +++ b/demos/src/Nodes/Emoji/Vue/EmojiList.vue @@ -0,0 +1,129 @@ + + + + + diff --git a/demos/src/Nodes/Emoji/Vue/index.html b/demos/src/Nodes/Emoji/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Nodes/Emoji/Vue/index.vue b/demos/src/Nodes/Emoji/Vue/index.vue new file mode 100644 index 0000000000..859322be08 --- /dev/null +++ b/demos/src/Nodes/Emoji/Vue/index.vue @@ -0,0 +1,92 @@ + + + + + diff --git a/demos/src/Nodes/Emoji/Vue/suggestion.js b/demos/src/Nodes/Emoji/Vue/suggestion.js new file mode 100644 index 0000000000..b7c6f52a12 --- /dev/null +++ b/demos/src/Nodes/Emoji/Vue/suggestion.js @@ -0,0 +1,78 @@ +import { computePosition } from '@floating-ui/dom' +import { VueRenderer } from '@tiptap/vue-3' + +import EmojiList from './EmojiList.vue' + +export default { + items: ({ editor, query }) => { + return editor.storage.emoji.emojis + .filter(({ shortcodes, tags }) => { + return ( + shortcodes.find(shortcode => shortcode.startsWith(query.toLowerCase())) || + tags.find(tag => tag.startsWith(query.toLowerCase())) + ) + }) + .slice(0, 5) + }, + + render: () => { + let component + + function repositionComponent(clientRect) { + if (!component || !component.element) { + return + } + + const virtualElement = { + getBoundingClientRect() { + return clientRect + }, + } + + computePosition(virtualElement, component.element, { + placement: 'bottom-start', + }).then(pos => { + Object.assign(component.element.style, { + left: `${pos.x}px`, + top: `${pos.y}px`, + position: pos.strategy === 'fixed' ? 'fixed' : 'absolute', + }) + }) + } + + return { + onStart: props => { + component = new VueRenderer(EmojiList, { + props, + editor: props.editor, + }) + + document.body.appendChild(component.element) + repositionComponent(props.clientRect()) + }, + + onUpdate(props) { + component.updateProps(props) + repositionComponent(props.clientRect()) + }, + + onKeyDown(props) { + if (props.event.key === 'Escape') { + document.body.removeChild(component.element) + component.destroy() + + return true + } + + return component.ref?.onKeyDown(props) + }, + + onExit() { + if (document.body.contains(component.element)) { + document.body.removeChild(component.element) + } + component.destroy() + }, + } + }, +} diff --git a/demos/vite.config.ts b/demos/vite.config.ts index 83daea160f..ed0af0a067 100644 --- a/demos/vite.config.ts +++ b/demos/vite.config.ts @@ -81,7 +81,7 @@ export default defineConfig({ build: { rollupOptions: { input: fg.sync('./**/index.html', { - ignore: ['dist'], + ignore: ['dist', 'node_modules'], }), }, }, @@ -265,7 +265,7 @@ export default defineConfig({ load(id) { if (id.startsWith('source!')) { const path = id.split('!!')[0].replace('source!', '') - const ignore = ['**/*.spec.js', '**/*.spec.ts'] + const ignore = ['**/*.spec.js', '**/*.spec.ts', 'node_modules/**'] if (!path.endsWith('/JS')) { ignore.push('**/index.html') diff --git a/packages/extension-details-content/README.md b/packages/extension-details-content/README.md new file mode 100644 index 0000000000..aa676bac61 --- /dev/null +++ b/packages/extension-details-content/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-details-content +[![Version](https://img.shields.io/npm/v/@tiptap/extension-details-content.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-details-content) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-details-content.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-details-content.svg)](https://www.npmjs.com/package/@tiptap/extension-details-content) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-details-content/package.json b/packages/extension-details-content/package.json new file mode 100644 index 0000000000..02a32cb7a1 --- /dev/null +++ b/packages/extension-details-content/package.json @@ -0,0 +1,51 @@ +{ + "name": "@tiptap/extension-details-content", + "description": "details content extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/api/nodes/details-content", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-details-content" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-details-content/src/details-content.ts b/packages/extension-details-content/src/details-content.ts new file mode 100644 index 0000000000..e32fde232b --- /dev/null +++ b/packages/extension-details-content/src/details-content.ts @@ -0,0 +1,156 @@ +import { defaultBlockAt, findParentNode, mergeAttributes, Node } from '@tiptap/core' +import { Selection } from '@tiptap/pm/state' +import type { ViewMutationRecord } from '@tiptap/pm/view' + +export interface DetailsContentOptions { + /** + * Custom HTML attributes that should be added to the rendered HTML tag. + */ + HTMLAttributes: { + [key: string]: any + } +} + +export const DetailsContent = Node.create({ + name: 'detailsContent', + + content: 'block+', + + defining: true, + + selectable: false, + + addOptions() { + return { + HTMLAttributes: {}, + } + }, + + parseHTML() { + return [ + { + tag: `div[data-type="${this.name}"]`, + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['div', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes, { 'data-type': this.name }), 0] + }, + + addNodeView() { + return ({ HTMLAttributes }) => { + const dom = document.createElement('div') + const attributes = mergeAttributes(this.options.HTMLAttributes, HTMLAttributes, { + 'data-type': this.name, + hidden: 'hidden', + }) + + Object.entries(attributes).forEach(([key, value]) => dom.setAttribute(key, value)) + + dom.addEventListener('toggleDetailsContent', () => { + dom.toggleAttribute('hidden') + }) + + return { + dom, + contentDOM: dom, + ignoreMutation(mutation: ViewMutationRecord) { + if (mutation.type === 'selection') { + return false + } + + return !dom.contains(mutation.target) || dom === mutation.target + }, + update: updatedNode => { + if (updatedNode.type !== this.type) { + return false + } + + return true + }, + } + } + }, + + addKeyboardShortcuts() { + return { + // Escape node on double enter + Enter: ({ editor }) => { + const { state, view } = editor + const { selection } = state + const { $from, empty } = selection + const detailsContent = findParentNode(node => node.type === this.type)(selection) + + if (!empty || !detailsContent || !detailsContent.node.childCount) { + return false + } + + const fromIndex = $from.index(detailsContent.depth) + const { childCount } = detailsContent.node + const isAtEnd = childCount === fromIndex + 1 + + if (!isAtEnd) { + return false + } + + const defaultChildType = detailsContent.node.type.contentMatch.defaultType + const defaultChildNode = defaultChildType?.createAndFill() + + if (!defaultChildNode) { + return false + } + + const $childPos = state.doc.resolve(detailsContent.pos + 1) + const lastChildIndex = childCount - 1 + const lastChildNode = detailsContent.node.child(lastChildIndex) + const lastChildPos = $childPos.posAtIndex(lastChildIndex, detailsContent.depth) + const lastChildNodeIsEmpty = lastChildNode.eq(defaultChildNode) + + if (!lastChildNodeIsEmpty) { + return false + } + + // get parent of details node + const above = $from.node(-3) + + if (!above) { + return false + } + + // get default node type after details node + const after = $from.indexAfter(-3) + const type = defaultBlockAt(above.contentMatchAt(after)) + + if (!type || !above.canReplaceWith(after, after, type)) { + return false + } + + const node = type.createAndFill() + + if (!node) { + return false + } + + const { tr } = state + const pos = $from.after(-2) + + tr.replaceWith(pos, pos, node) + + const $pos = tr.doc.resolve(pos) + const newSelection = Selection.near($pos, 1) + + tr.setSelection(newSelection) + + const deleteFrom = lastChildPos + const deleteTo = lastChildPos + lastChildNode.nodeSize + + tr.delete(deleteFrom, deleteTo) + tr.scrollIntoView() + view.dispatch(tr) + + return true + }, + } + }, +}) diff --git a/packages/extension-details-content/src/index.ts b/packages/extension-details-content/src/index.ts new file mode 100644 index 0000000000..9c4bc7dfd8 --- /dev/null +++ b/packages/extension-details-content/src/index.ts @@ -0,0 +1,5 @@ +import { DetailsContent } from './details-content.js' + +export * from './details-content.js' + +export default DetailsContent diff --git a/packages/extension-details-content/tsup.config.ts b/packages/extension-details-content/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-details-content/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-details-summary/README.md b/packages/extension-details-summary/README.md new file mode 100644 index 0000000000..b0b05a0989 --- /dev/null +++ b/packages/extension-details-summary/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-details-summary +[![Version](https://img.shields.io/npm/v/@tiptap/extension-details-summary.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-details-summary) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-details-summary.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-details-summary.svg)](https://www.npmjs.com/package/@tiptap/extension-details-summary) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-details-summary/package.json b/packages/extension-details-summary/package.json new file mode 100644 index 0000000000..3e82c4e222 --- /dev/null +++ b/packages/extension-details-summary/package.json @@ -0,0 +1,52 @@ +{ + "name": "@tiptap/extension-details-summary", + "description": "details summary extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/api/nodes/details-summary", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-details-summary" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-details-summary/src/details-summary.ts b/packages/extension-details-summary/src/details-summary.ts new file mode 100644 index 0000000000..094511cf09 --- /dev/null +++ b/packages/extension-details-summary/src/details-summary.ts @@ -0,0 +1,40 @@ +import { mergeAttributes, Node } from '@tiptap/core' + +export interface DetailsSummaryOptions { + /** + * Custom HTML attributes that should be added to the rendered HTML tag. + */ + HTMLAttributes: { + [key: string]: any + } +} + +export const DetailsSummary = Node.create({ + name: 'detailsSummary', + + content: 'text*', + + defining: true, + + selectable: false, + + isolating: true, + + addOptions() { + return { + HTMLAttributes: {}, + } + }, + + parseHTML() { + return [ + { + tag: 'summary', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['summary', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0] + }, +}) diff --git a/packages/extension-details-summary/src/index.ts b/packages/extension-details-summary/src/index.ts new file mode 100644 index 0000000000..6e97364a70 --- /dev/null +++ b/packages/extension-details-summary/src/index.ts @@ -0,0 +1,5 @@ +import { DetailsSummary } from './details-summary.js' + +export * from './details-summary.js' + +export default DetailsSummary diff --git a/packages/extension-details-summary/tsup.config.ts b/packages/extension-details-summary/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-details-summary/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-details/README.md b/packages/extension-details/README.md new file mode 100644 index 0000000000..0c78d5b1d2 --- /dev/null +++ b/packages/extension-details/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-details +[![Version](https://img.shields.io/npm/v/@tiptap/extension-details.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-details) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-details.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-details.svg)](https://www.npmjs.com/package/@tiptap/extension-details) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json new file mode 100644 index 0000000000..494cc19001 --- /dev/null +++ b/packages/extension-details/package.json @@ -0,0 +1,52 @@ +{ + "name": "@tiptap/extension-details", + "description": "details extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/api/nodes/details", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-details" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-details/src/details.ts b/packages/extension-details/src/details.ts new file mode 100644 index 0000000000..82e727f27a --- /dev/null +++ b/packages/extension-details/src/details.ts @@ -0,0 +1,426 @@ +import { defaultBlockAt, findChildren, findParentNode, isActive, mergeAttributes, Node } from '@tiptap/core' +import { Plugin, PluginKey, Selection, TextSelection } from '@tiptap/pm/state' +import type { ViewMutationRecord } from '@tiptap/pm/view' + +import { findClosestVisibleNode } from './helpers/findClosestVisibleNode.js' +import { isNodeVisible } from './helpers/isNodeVisible.js' +import { setGapCursor } from './helpers/setGapCursor.js' + +export interface DetailsOptions { + /** + * Specify if the open status should be saved in the document. Defaults to `false`. + */ + persist: boolean + /** + * Specifies a CSS class that is set when toggling the content. Defaults to `is-open`. + */ + openClassName: string + /** + * Custom HTML attributes that should be added to the rendered HTML tag. + */ + HTMLAttributes: { + [key: string]: any + } +} + +declare module '@tiptap/core' { + interface Commands { + details: { + /** + * Set a details node + */ + setDetails: () => ReturnType + /** + * Unset a details node + */ + unsetDetails: () => ReturnType + } + } +} + +export const Details = Node.create({ + name: 'details', + + content: 'detailsSummary detailsContent', + + group: 'block', + + defining: true, + + isolating: true, + + // @ts-ignore: allowGapCursor is not a valid option by default, dts on build doesnt pick this up + allowGapCursor: false, + + addOptions() { + return { + persist: false, + openClassName: 'is-open', + HTMLAttributes: {}, + } + }, + + addAttributes() { + if (!this.options.persist) { + return [] + } + + return { + open: { + default: false, + parseHTML: element => element.hasAttribute('open'), + renderHTML: ({ open }) => { + if (!open) { + return {} + } + + return { open: '' } + }, + }, + } + }, + + parseHTML() { + return [ + { + tag: 'details', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['details', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0] + }, + + addNodeView() { + return ({ editor, getPos, node, HTMLAttributes }) => { + const dom = document.createElement('div') + const attributes = mergeAttributes(this.options.HTMLAttributes, HTMLAttributes, { + 'data-type': this.name, + }) + + Object.entries(attributes).forEach(([key, value]) => dom.setAttribute(key, value)) + + const toggle = document.createElement('button') + + toggle.type = 'button' + + dom.append(toggle) + + const content = document.createElement('div') + + dom.append(content) + + const toggleDetailsContent = (setToValue?: boolean) => { + if (setToValue !== undefined) { + if (setToValue) { + if (dom.classList.contains(this.options.openClassName)) { + return + } + dom.classList.add(this.options.openClassName) + } else { + if (!dom.classList.contains(this.options.openClassName)) { + return + } + dom.classList.remove(this.options.openClassName) + } + } else { + dom.classList.toggle(this.options.openClassName) + } + + const event = new Event('toggleDetailsContent') + const detailsContent = content.querySelector(':scope > div[data-type="detailsContent"]') + + detailsContent?.dispatchEvent(event) + } + + if (node.attrs.open) { + setTimeout(() => toggleDetailsContent()) + } + + toggle.addEventListener('click', () => { + toggleDetailsContent() + + if (!this.options.persist) { + editor.commands.focus(undefined, { scrollIntoView: false }) + + return + } + + if (editor.isEditable && typeof getPos === 'function') { + const { from, to } = editor.state.selection + + editor + .chain() + .command(({ tr }) => { + const pos = getPos() + if (pos === undefined) { + return false + } + + const currentNode = tr.doc.nodeAt(pos) + + if (currentNode?.type !== this.type) { + return false + } + + tr.setNodeMarkup(pos, undefined, { + open: !currentNode.attrs.open, + }) + + return true + }) + .setTextSelection({ + from, + to, + }) + .focus(undefined, { scrollIntoView: false }) + .run() + } + }) + + return { + dom, + contentDOM: content, + ignoreMutation(mutation: ViewMutationRecord) { + if (mutation.type === 'selection') { + return false + } + + return !dom.contains(mutation.target) || dom === mutation.target + }, + update: updatedNode => { + if (updatedNode.type !== this.type) { + return false + } + + // Only update the open state if set + if (updatedNode.attrs.open !== undefined) { + toggleDetailsContent(updatedNode.attrs.open) + } + + return true + }, + } + } + }, + + addCommands() { + return { + setDetails: + () => + ({ state, chain }) => { + const { schema, selection } = state + const { $from, $to } = selection + const range = $from.blockRange($to) + + if (!range) { + return false + } + + const slice = state.doc.slice(range.start, range.end) + const match = schema.nodes.detailsContent.contentMatch.matchFragment(slice.content) + + if (!match) { + return false + } + + const content = slice.toJSON()?.content || [] + + return chain() + .insertContentAt( + { from: range.start, to: range.end }, + { + type: this.name, + content: [ + { + type: 'detailsSummary', + }, + { + type: 'detailsContent', + content, + }, + ], + }, + ) + .setTextSelection(range.start + 2) + .run() + }, + + unsetDetails: + () => + ({ state, chain }) => { + const { selection, schema } = state + const details = findParentNode(node => node.type === this.type)(selection) + + if (!details) { + return false + } + + const detailsSummaries = findChildren(details.node, node => node.type === schema.nodes.detailsSummary) + const detailsContents = findChildren(details.node, node => node.type === schema.nodes.detailsContent) + + if (!detailsSummaries.length || !detailsContents.length) { + return false + } + + const detailsSummary = detailsSummaries[0] + const detailsContent = detailsContents[0] + const from = details.pos + const $from = state.doc.resolve(from) + const to = from + details.node.nodeSize + const range = { from, to } + const content = (detailsContent.node.content.toJSON() as []) || [] + const defaultTypeForSummary = $from.parent.type.contentMatch.defaultType + + // TODO: this may break for some custom schemas + const summaryContent = defaultTypeForSummary?.create(null, detailsSummary.node.content).toJSON() + const mergedContent = [summaryContent, ...content] + + return chain() + .insertContentAt(range, mergedContent) + .setTextSelection(from + 1) + .run() + }, + } + }, + + addKeyboardShortcuts() { + return { + Backspace: () => { + const { schema, selection } = this.editor.state + const { empty, $anchor } = selection + + if (!empty || $anchor.parent.type !== schema.nodes.detailsSummary) { + return false + } + + // for some reason safari removes the whole text content within a ``tag on backspace + // so we have to remove the text manually + // see: https://discuss.prosemirror.net/t/safari-backspace-bug-with-details-tag/4223 + if ($anchor.parentOffset !== 0) { + return this.editor.commands.command(({ tr }) => { + const from = $anchor.pos - 1 + const to = $anchor.pos + + tr.delete(from, to) + + return true + }) + } + + return this.editor.commands.unsetDetails() + }, + + // Creates a new node below it if it is closed. + // Otherwise inside `DetailsContent`. + Enter: ({ editor }) => { + const { state, view } = editor + const { schema, selection } = state + const { $head } = selection + + if ($head.parent.type !== schema.nodes.detailsSummary) { + return false + } + + const isVisible = isNodeVisible($head.after() + 1, editor) + const above = isVisible ? state.doc.nodeAt($head.after()) : $head.node(-2) + + if (!above) { + return false + } + + const after = isVisible ? 0 : $head.indexAfter(-1) + const type = defaultBlockAt(above.contentMatchAt(after)) + + if (!type || !above.canReplaceWith(after, after, type)) { + return false + } + + const node = type.createAndFill() + + if (!node) { + return false + } + + const pos = isVisible ? $head.after() + 1 : $head.after(-1) + const tr = state.tr.replaceWith(pos, pos, node) + const $pos = tr.doc.resolve(pos) + const newSelection = Selection.near($pos, 1) + + tr.setSelection(newSelection) + tr.scrollIntoView() + view.dispatch(tr) + + return true + }, + + // The default gapcursor implementation can’t handle hidden content, so we need to fix this. + ArrowRight: ({ editor }) => { + return setGapCursor(editor, 'right') + }, + + // The default gapcursor implementation can’t handle hidden content, so we need to fix this. + ArrowDown: ({ editor }) => { + return setGapCursor(editor, 'down') + }, + } + }, + + addProseMirrorPlugins() { + return [ + // This plugin prevents text selections within the hidden content in `DetailsContent`. + // The cursor is moved to the next visible position. + new Plugin({ + key: new PluginKey('detailsSelection'), + appendTransaction: (transactions, oldState, newState) => { + const { editor, type } = this + const selectionSet = transactions.some(transaction => transaction.selectionSet) + + if (!selectionSet || !oldState.selection.empty || !newState.selection.empty) { + return + } + + const detailsIsActive = isActive(newState, type.name) + + if (!detailsIsActive) { + return + } + + const { $from } = newState.selection + const isVisible = isNodeVisible($from.pos, editor) + + if (isVisible) { + return + } + + const details = findClosestVisibleNode($from, node => node.type === type, editor) + + if (!details) { + return + } + + const detailsSummaries = findChildren( + details.node, + node => node.type === newState.schema.nodes.detailsSummary, + ) + + if (!detailsSummaries.length) { + return + } + + const detailsSummary = detailsSummaries[0] + const selectionDirection = oldState.selection.from < newState.selection.from ? 'forward' : 'backward' + const correctedPosition = + selectionDirection === 'forward' + ? details.start + detailsSummary.pos + : details.pos + detailsSummary.pos + detailsSummary.node.nodeSize + const selection = TextSelection.create(newState.doc, correctedPosition) + const transaction = newState.tr.setSelection(selection) + + return transaction + }, + }), + ] + }, +}) diff --git a/packages/extension-details/src/helpers/findClosestVisibleNode.ts b/packages/extension-details/src/helpers/findClosestVisibleNode.ts new file mode 100644 index 0000000000..33c246ff8f --- /dev/null +++ b/packages/extension-details/src/helpers/findClosestVisibleNode.ts @@ -0,0 +1,32 @@ +import type { Editor, Predicate } from '@tiptap/core' +import type { Node as ProseMirrorNode, ResolvedPos } from '@tiptap/pm/model' + +import { isNodeVisible } from './isNodeVisible.js' + +export const findClosestVisibleNode = ( + $pos: ResolvedPos, + predicate: Predicate, + editor: Editor, +): + | { + pos: number + start: number + depth: number + node: ProseMirrorNode + } + | undefined => { + for (let i = $pos.depth; i > 0; i -= 1) { + const node = $pos.node(i) + const match = predicate(node) + const isVisible = isNodeVisible($pos.start(i), editor) + + if (match && isVisible) { + return { + pos: i > 0 ? $pos.before(i) : 0, + start: $pos.start(i), + depth: i, + node, + } + } + } +} diff --git a/packages/extension-details/src/helpers/isNodeVisible.ts b/packages/extension-details/src/helpers/isNodeVisible.ts new file mode 100644 index 0000000000..aee0622cf6 --- /dev/null +++ b/packages/extension-details/src/helpers/isNodeVisible.ts @@ -0,0 +1,8 @@ +import type { Editor } from '@tiptap/core' + +export const isNodeVisible = (position: number, editor: Editor): boolean => { + const node = editor.view.domAtPos(position).node as HTMLElement + const isOpen = node.offsetParent !== null + + return isOpen +} diff --git a/packages/extension-details/src/helpers/setGapCursor.ts b/packages/extension-details/src/helpers/setGapCursor.ts new file mode 100644 index 0000000000..d1e1be951e --- /dev/null +++ b/packages/extension-details/src/helpers/setGapCursor.ts @@ -0,0 +1,56 @@ +import type { Editor } from '@tiptap/core' +import { findChildren, findParentNode } from '@tiptap/core' +import { GapCursor } from '@tiptap/pm/gapcursor' +import type { ResolvedPos } from '@tiptap/pm/model' +import type { Selection } from '@tiptap/pm/state' + +import { isNodeVisible } from './isNodeVisible.js' + +export const setGapCursor = (editor: Editor, direction: 'down' | 'right') => { + const { state, view, extensionManager } = editor + const { schema, selection } = state + const { empty, $anchor } = selection + const hasGapCursorExtension = !!extensionManager.extensions.find(extension => extension.name === 'gapCursor') + + if (!empty || $anchor.parent.type !== schema.nodes.detailsSummary || !hasGapCursorExtension) { + return false + } + + if (direction === 'right' && $anchor.parentOffset !== $anchor.parent.nodeSize - 2) { + return false + } + + const details = findParentNode(node => node.type === schema.nodes.details)(selection) + + if (!details) { + return false + } + + const detailsContent = findChildren(details.node, node => node.type === schema.nodes.detailsContent) + + if (!detailsContent.length) { + return false + } + + const isOpen = isNodeVisible(details.start + detailsContent[0].pos + 1, editor) + + if (isOpen) { + return false + } + + const $position = state.doc.resolve(details.pos + details.node.nodeSize) + const $validPosition = GapCursor.findFrom($position, 1, false) as unknown as null | ResolvedPos + + if (!$validPosition) { + return false + } + + const { tr } = state + const gapCursorSelection = new GapCursor($validPosition) as Selection + + tr.setSelection(gapCursorSelection) + tr.scrollIntoView() + view.dispatch(tr) + + return true +} diff --git a/packages/extension-details/src/index.ts b/packages/extension-details/src/index.ts new file mode 100644 index 0000000000..80f3f7be02 --- /dev/null +++ b/packages/extension-details/src/index.ts @@ -0,0 +1,5 @@ +import { Details } from './details.js' + +export * from './details.js' + +export default Details diff --git a/packages/extension-details/tsup.config.ts b/packages/extension-details/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-details/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-drag-handle-react/README.md b/packages/extension-drag-handle-react/README.md new file mode 100644 index 0000000000..60fc519ef6 --- /dev/null +++ b/packages/extension-drag-handle-react/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-drag-handle-react +[![Version](https://img.shields.io/npm/v/@tiptap/extension-drag-handle-react.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-drag-handle-react) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-drag-handle-react.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-drag-handle-react.svg)](https://www.npmjs.com/package/@tiptap/extension-drag-handle-react) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json new file mode 100644 index 0000000000..7cd4f384a7 --- /dev/null +++ b/packages/extension-drag-handle-react/package.json @@ -0,0 +1,53 @@ +{ + "name": "@tiptap/extension-drag-handle-react", + "description": "drag handle extension for tiptap with react", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "peerDependencies": { + "@tiptap/extension-drag-handle": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/react": "workspace:*", + "react": "^16.8 || ^17 || ^18 || ^19", + "react-dom": "^16.8 || ^17 || ^18 || ^19" + }, + "devDependencies": { + "@tiptap/extension-drag-handle": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/react": "workspace:*", + "@types/react": "^18.0.0", + "@types/react-dom": "^18.0.0", + "react": "^18.0.0", + "react-dom": "^18.0.0" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-drag-handle-react/src/DragHandle.tsx b/packages/extension-drag-handle-react/src/DragHandle.tsx new file mode 100644 index 0000000000..ed2419cb0f --- /dev/null +++ b/packages/extension-drag-handle-react/src/DragHandle.tsx @@ -0,0 +1,78 @@ +import { + type DragHandlePluginProps, + defaultComputePositionConfig, + DragHandlePlugin, + dragHandlePluginDefaultKey, +} from '@tiptap/extension-drag-handle' +import type { Node } from '@tiptap/pm/model' +import type { Plugin } from '@tiptap/pm/state' +import type { Editor } from '@tiptap/react' +import { type ReactNode, useEffect, useRef, useState } from 'react' + +type Optional = Pick, K> & Omit + +export type DragHandleProps = Omit, 'element'> & { + className?: string + onNodeChange?: (data: { node: Node | null; editor: Editor; pos: number }) => void + children: ReactNode +} + +export const DragHandle = (props: DragHandleProps) => { + const { + className = 'drag-handle', + children, + editor, + pluginKey = dragHandlePluginDefaultKey, + onNodeChange, + computePositionConfig = defaultComputePositionConfig, + } = props + const [element, setElement] = useState(null) + const plugin = useRef(null) + + useEffect(() => { + let initPlugin: { + plugin: Plugin + unbind: () => void + } | null = null + + if (!element) { + return () => { + plugin.current = null + } + } + + if (editor.isDestroyed) { + return () => { + plugin.current = null + } + } + + if (!plugin.current) { + initPlugin = DragHandlePlugin({ + editor, + element, + pluginKey, + computePositionConfig: { ...defaultComputePositionConfig, ...computePositionConfig }, + onNodeChange, + }) + plugin.current = initPlugin.plugin + + editor.registerPlugin(plugin.current) + } + + return () => { + editor.unregisterPlugin(pluginKey) + plugin.current = null + if (initPlugin) { + initPlugin.unbind() + initPlugin = null + } + } + }, [element, editor, onNodeChange, pluginKey, computePositionConfig]) + + return ( +
+ {children} +
+ ) +} diff --git a/packages/extension-drag-handle-react/src/index.ts b/packages/extension-drag-handle-react/src/index.ts new file mode 100644 index 0000000000..af284f85e9 --- /dev/null +++ b/packages/extension-drag-handle-react/src/index.ts @@ -0,0 +1,5 @@ +import { DragHandle } from './DragHandle.js' + +export * from './DragHandle.js' + +export default DragHandle diff --git a/packages/extension-drag-handle-react/tsup.config.ts b/packages/extension-drag-handle-react/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-drag-handle-react/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-drag-handle-vue-2/README.md b/packages/extension-drag-handle-vue-2/README.md new file mode 100644 index 0000000000..a72d4f0008 --- /dev/null +++ b/packages/extension-drag-handle-vue-2/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-drag-handle-vue-2 +[![Version](https://img.shields.io/npm/v/@tiptap/extension-drag-handle-vue-2.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-drag-handle-vue-2) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-drag-handle-vue-2.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-drag-handle-vue-2.svg)](https://www.npmjs.com/package/@tiptap/extension-drag-handle-vue-2) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json new file mode 100644 index 0000000000..4045f0db21 --- /dev/null +++ b/packages/extension-drag-handle-vue-2/package.json @@ -0,0 +1,50 @@ +{ + "name": "@tiptap/extension-drag-handle-vue-2", + "description": "drag handle extension for tiptap with vue 2", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "peerDependencies": { + "@tiptap/extension-drag-handle": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/vue-2": "workspace:*", + "vue": "^2.0.0" + }, + "devDependencies": { + "@tiptap/extension-drag-handle": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/vue-2": "workspace:*", + "vue": "^2.0.0", + "vue-ts-types": "1.6.2" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-drag-handle-vue-2/src/DragHandle.ts b/packages/extension-drag-handle-vue-2/src/DragHandle.ts new file mode 100644 index 0000000000..55e8348b64 --- /dev/null +++ b/packages/extension-drag-handle-vue-2/src/DragHandle.ts @@ -0,0 +1,77 @@ +import type { Editor } from '@tiptap/core' +import { + type DragHandlePluginProps, + defaultComputePositionConfig, + DragHandlePlugin, + dragHandlePluginDefaultKey, +} from '@tiptap/extension-drag-handle' +import Vue, { type PropType } from 'vue' + +type Optional = Pick, K> & Omit + +export type DragHandleProps = Omit, 'element'> & { + class?: string + onNodeChange?: (data: { node: Node | null; editor: Editor; pos: number }) => void +} + +export const DragHandle = Vue.extend({ + name: 'DragHandleVue', + + props: { + pluginKey: { + type: [String, Object] as PropType, + default: dragHandlePluginDefaultKey, + }, + + editor: { + type: Object as PropType, + required: true, + }, + + computePositionConfig: { + type: Object as PropType, + default: () => ({}), + }, + + onNodeChange: { + type: Function as PropType, + default: null, + }, + + class: { + type: String as PropType, + default: 'drag-handle', + }, + }, + + mounted() { + const { editor, pluginKey, onNodeChange } = this.$props + + editor.registerPlugin( + DragHandlePlugin({ + editor, + element: this.$el as HTMLElement, + pluginKey, + computePositionConfig: { ...defaultComputePositionConfig, ...this.computePositionConfig }, + onNodeChange, + }).plugin, + ) + }, + + // eslint-disable-next-line vue/no-deprecated-destroyed-lifecycle + beforeDestroy() { + const { pluginKey, editor } = this.$props + + editor.unregisterPlugin(pluginKey as string) + }, + + render(h) { + return h( + 'div', + { + class: this.class, + }, + this.$slots.default, + ) + }, +}) diff --git a/packages/extension-drag-handle-vue-2/src/index.ts b/packages/extension-drag-handle-vue-2/src/index.ts new file mode 100644 index 0000000000..af284f85e9 --- /dev/null +++ b/packages/extension-drag-handle-vue-2/src/index.ts @@ -0,0 +1,5 @@ +import { DragHandle } from './DragHandle.js' + +export * from './DragHandle.js' + +export default DragHandle diff --git a/packages/extension-drag-handle-vue-2/tsup.config.ts b/packages/extension-drag-handle-vue-2/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-drag-handle-vue-2/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-drag-handle-vue-3/README.md b/packages/extension-drag-handle-vue-3/README.md new file mode 100644 index 0000000000..c41d962178 --- /dev/null +++ b/packages/extension-drag-handle-vue-3/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-drag-handle-vue3 +[![Version](https://img.shields.io/npm/v/@tiptap/extension-drag-handle-vue3.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-drag-handle-vue3) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-drag-handle-vue3.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-drag-handle-vue3.svg)](https://www.npmjs.com/package/@tiptap/extension-drag-handle-vue3) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json new file mode 100644 index 0000000000..feeb32dc08 --- /dev/null +++ b/packages/extension-drag-handle-vue-3/package.json @@ -0,0 +1,49 @@ +{ + "name": "@tiptap/extension-drag-handle-vue-3", + "description": "drag handle extension for tiptap with vue 3", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "peerDependencies": { + "@tiptap/extension-drag-handle": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/vue-3": "workspace:*", + "vue": "^3.0.0" + }, + "devDependencies": { + "@tiptap/extension-drag-handle": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/vue-3": "workspace:*", + "vue": "^3.0.0" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-drag-handle-vue-3/src/DragHandle.ts b/packages/extension-drag-handle-vue-3/src/DragHandle.ts new file mode 100644 index 0000000000..e405b2b8fc --- /dev/null +++ b/packages/extension-drag-handle-vue-3/src/DragHandle.ts @@ -0,0 +1,73 @@ +import type { DragHandlePluginProps } from '@tiptap/extension-drag-handle' +import { + defaultComputePositionConfig, + DragHandlePlugin, + dragHandlePluginDefaultKey, +} from '@tiptap/extension-drag-handle' +import type { Editor } from '@tiptap/vue-3' +import type { PropType } from 'vue' +import { defineComponent, h, onBeforeUnmount, onMounted, ref } from 'vue' + +type Optional = Pick, K> & Omit + +export type DragHandleProps = Omit, 'element'> & { + class?: string + onNodeChange?: (data: { node: Node | null; editor: Editor; pos: number }) => void +} + +export const DragHandle = defineComponent({ + name: 'DragHandleVue', + + props: { + pluginKey: { + type: [String, Object] as PropType, + default: dragHandlePluginDefaultKey, + }, + + editor: { + type: Object as PropType, + required: true, + }, + + computePositionConfig: { + type: Object as PropType, + default: () => ({}), + }, + + onNodeChange: { + type: Function as PropType, + default: null, + }, + + class: { + type: String as PropType, + default: 'drag-handle', + }, + }, + + setup(props, { slots }) { + const root = ref(null) + + onMounted(() => { + const { editor, pluginKey, onNodeChange, computePositionConfig } = props + + editor.registerPlugin( + DragHandlePlugin({ + editor, + element: root.value as HTMLElement, + pluginKey, + computePositionConfig: { ...defaultComputePositionConfig, ...computePositionConfig }, + onNodeChange, + }).plugin, + ) + }) + + onBeforeUnmount(() => { + const { pluginKey, editor } = props + + editor.unregisterPlugin(pluginKey as string) + }) + + return () => h('div', { ref: root, class: props.class }, slots.default?.()) + }, +}) diff --git a/packages/extension-drag-handle-vue-3/src/index.ts b/packages/extension-drag-handle-vue-3/src/index.ts new file mode 100644 index 0000000000..af284f85e9 --- /dev/null +++ b/packages/extension-drag-handle-vue-3/src/index.ts @@ -0,0 +1,5 @@ +import { DragHandle } from './DragHandle.js' + +export * from './DragHandle.js' + +export default DragHandle diff --git a/packages/extension-drag-handle-vue-3/tsup.config.ts b/packages/extension-drag-handle-vue-3/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-drag-handle-vue-3/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-drag-handle/README.md b/packages/extension-drag-handle/README.md new file mode 100644 index 0000000000..09acaf3d49 --- /dev/null +++ b/packages/extension-drag-handle/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-drag-handle +[![Version](https://img.shields.io/npm/v/@tiptap/extension-drag-handle.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-drag-handle) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-drag-handle.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-drag-handle.svg)](https://www.npmjs.com/package/@tiptap/extension-drag-handle) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json new file mode 100644 index 0000000000..84e2d7d95f --- /dev/null +++ b/packages/extension-drag-handle/package.json @@ -0,0 +1,55 @@ +{ + "name": "@tiptap/extension-drag-handle", + "description": "drag handle extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "peerDependencies": { + "@tiptap/extension-node-range": "workspace:*", + "@tiptap/core": "workspace:*", + "@tiptap/extension-collaboration": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/y-tiptap": "^3.0.0-beta.3" + }, + "dependencies": { + "@floating-ui/dom": "^1.6.13" + }, + "devDependencies": { + "@floating-ui/dom": "^1.6.13", + "@tiptap/extension-node-range": "workspace:*", + "@tiptap/core": "workspace:*", + "@tiptap/extension-collaboration": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/y-tiptap": "^3.0.0-beta.3" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-drag-handle/src/drag-handle-plugin.ts b/packages/extension-drag-handle/src/drag-handle-plugin.ts new file mode 100644 index 0000000000..8fe09680eb --- /dev/null +++ b/packages/extension-drag-handle/src/drag-handle-plugin.ts @@ -0,0 +1,367 @@ +import { type ComputePositionConfig, computePosition } from '@floating-ui/dom' +import type { Editor } from '@tiptap/core' +import { isChangeOrigin } from '@tiptap/extension-collaboration' +import type { Node } from '@tiptap/pm/model' +import { type EditorState, type Transaction, Plugin, PluginKey } from '@tiptap/pm/state' +import type { EditorView } from '@tiptap/pm/view' +import { + absolutePositionToRelativePosition, + relativePositionToAbsolutePosition, + ySyncPluginKey, +} from '@tiptap/y-tiptap' + +import { dragHandler } from './helpers/dragHandler.js' +import { findElementNextToCoords } from './helpers/findNextElementFromCursor.js' +import { getOuterNode, getOuterNodePos } from './helpers/getOuterNode.js' +import { removeNode } from './helpers/removeNode.js' + +type PluginState = { + locked: boolean +} + +const getRelativePos = (state: EditorState, absolutePos: number) => { + const ystate = ySyncPluginKey.getState(state) + + if (!ystate) { + return null + } + + return absolutePositionToRelativePosition(absolutePos, ystate.type, ystate.binding.mapping) +} + +// biome-ignore lint/suspicious/noExplicitAny: y-prosemirror (and y-tiptap by extension) does not have types for relative positions +const getAbsolutePos = (state: EditorState, relativePos: any) => { + const ystate = ySyncPluginKey.getState(state) + + if (!ystate) { + return -1 + } + + return relativePositionToAbsolutePosition(ystate.doc, ystate.type, relativePos, ystate.binding.mapping) || 0 +} + +const getOuterDomNode = (view: EditorView, domNode: HTMLElement) => { + let tmpDomNode = domNode + + // Traverse to top level node. + while (tmpDomNode?.parentNode) { + if (tmpDomNode.parentNode === view.dom) { + break + } + + tmpDomNode = tmpDomNode.parentNode as HTMLElement + } + + return tmpDomNode +} + +export interface DragHandlePluginProps { + pluginKey?: PluginKey | string + editor: Editor + element: HTMLElement + onNodeChange?: (data: { editor: Editor; node: Node | null; pos: number }) => void + computePositionConfig?: ComputePositionConfig +} + +export const dragHandlePluginDefaultKey = new PluginKey('dragHandle') + +export const DragHandlePlugin = ({ + pluginKey = dragHandlePluginDefaultKey, + element, + editor, + computePositionConfig, + onNodeChange, +}: DragHandlePluginProps) => { + const wrapper = document.createElement('div') + let locked = false + let currentNode: Node | null = null + let currentNodePos = -1 + // biome-ignore lint/suspicious/noExplicitAny: See above - relative positions in y-prosemirror are not typed + let currentNodeRelPos: any + + function hideHandle() { + if (!element) { + return + } + + element.style.visibility = 'hidden' + element.style.pointerEvents = 'none' + } + + function showHandle() { + if (!element) { + return + } + + if (!editor.isEditable) { + hideHandle() + return + } + + element.style.visibility = '' + element.style.pointerEvents = 'auto' + } + + function repositionDragHandle(dom: Element) { + const virtualElement = { + getBoundingClientRect: () => dom.getBoundingClientRect(), + } + + computePosition(virtualElement, element, computePositionConfig).then(val => { + Object.assign(element.style, { + position: val.strategy, + left: `${val.x}px`, + top: `${val.y}px`, + }) + }) + } + + function onDragStart(e: DragEvent) { + // Push this to the end of the event cue + // Fixes bug where incorrect drag pos is returned if drag handle has position: absolute + // @ts-ignore + dragHandler(e, editor) + + setTimeout(() => { + if (element) { + element.style.pointerEvents = 'none' + } + }, 0) + } + + function onDragEnd() { + hideHandle() + if (element) { + element.style.pointerEvents = 'auto' + } + } + + element.addEventListener('dragstart', onDragStart) + element.addEventListener('dragend', onDragEnd) + + wrapper.appendChild(element) + + return { + unbind() { + element.removeEventListener('dragstart', onDragStart) + element.removeEventListener('dragend', onDragEnd) + }, + plugin: new Plugin({ + key: typeof pluginKey === 'string' ? new PluginKey(pluginKey) : pluginKey, + + state: { + init() { + return { locked: false } + }, + apply(tr: Transaction, value: PluginState, _oldState: EditorState, state: EditorState) { + const isLocked = tr.getMeta('lockDragHandle') + const hideDragHandle = tr.getMeta('hideDragHandle') + + if (isLocked !== undefined) { + locked = isLocked + } + + if (hideDragHandle) { + hideHandle() + + locked = false + currentNode = null + currentNodePos = -1 + + onNodeChange?.({ editor, node: null, pos: -1 }) + + return value + } + + // Something has changed and drag handler is visible… + if (tr.docChanged && currentNodePos !== -1 && element) { + // Yjs replaces the entire document on every incoming change and needs a special handling. + // If change comes from another user … + if (isChangeOrigin(tr)) { + // https://discuss.yjs.dev/t/y-prosemirror-mapping-a-single-relative-position-when-doc-changes/851/3 + const newPos = getAbsolutePos(state, currentNodeRelPos) + + if (newPos !== currentNodePos) { + // Set the new position for our current node. + currentNodePos = newPos + + // We will get the outer node with data and position in views update method. + } + } else { + // … otherwise use ProseMirror mapping to update the position. + const newPos = tr.mapping.map(currentNodePos) + + if (newPos !== currentNodePos) { + // TODO: Remove + // console.log('Position has changed …', { old: currentNodePos, new: newPos }, tr); + + // Set the new position for our current node. + currentNodePos = newPos + + // Memorize relative position to retrieve absolute position in case of collaboration + currentNodeRelPos = getRelativePos(state, currentNodePos) + + // We will get the outer node with data and position in views update method. + } + } + } + + return value + }, + }, + + view: view => { + element.draggable = true + element.style.pointerEvents = 'auto' + + editor.view.dom.parentElement?.appendChild(wrapper) + + wrapper.style.pointerEvents = 'none' + wrapper.style.position = 'absolute' + wrapper.style.top = '0' + wrapper.style.left = '0' + + return { + update(_, oldState) { + if (!element) { + return + } + + if (!editor.isEditable) { + hideHandle() + return + } + + // Prevent element being draggend while being open. + if (locked) { + element.draggable = false + } else { + element.draggable = true + } + + // Recalculate popup position if doc has changend and drag handler is visible. + if (view.state.doc.eq(oldState.doc) || currentNodePos === -1) { + return + } + + // Get domNode from (new) position. + let domNode = view.nodeDOM(currentNodePos) as HTMLElement + + // Since old element could have been wrapped, we need to find + // the outer node and take its position and node data. + domNode = getOuterDomNode(view, domNode) + + // Skip if domNode is editor dom. + if (domNode === view.dom) { + return + } + + // We only want `Element`. + if (domNode?.nodeType !== 1) { + return + } + + const domNodePos = view.posAtDOM(domNode, 0) + const outerNode = getOuterNode(editor.state.doc, domNodePos) + const outerNodePos = getOuterNodePos(editor.state.doc, domNodePos) // TODO: needed? + + currentNode = outerNode + currentNodePos = outerNodePos + + // Memorize relative position to retrieve absolute position in case of collaboration + currentNodeRelPos = getRelativePos(view.state, currentNodePos) + + onNodeChange?.({ editor, node: currentNode, pos: currentNodePos }) + + repositionDragHandle(domNode as Element) + }, + + // TODO: Kills even on hot reload + destroy() { + if (element) { + removeNode(wrapper) + } + }, + } + }, + + props: { + handleDOMEvents: { + mouseleave(_view, e) { + // Do not hide open popup on mouseleave. + if (locked) { + return false + } + + // If e.target is not inside the wrapper, hide. + if (e.target && !wrapper.contains(e.relatedTarget as HTMLElement)) { + hideHandle() + + currentNode = null + currentNodePos = -1 + + onNodeChange?.({ editor, node: null, pos: -1 }) + } + + return false + }, + + mousemove(view, e) { + // Do not continue if popup is not initialized or open. + if (!element || locked) { + return false + } + + const nodeData = findElementNextToCoords({ + x: e.clientX, + y: e.clientY, + direction: 'right', + editor, + }) + + // Skip if there is no node next to coords + if (!nodeData.resultElement) { + return false + } + + let domNode = nodeData.resultElement as HTMLElement + + domNode = getOuterDomNode(view, domNode) + + // Skip if domNode is editor dom. + if (domNode === view.dom) { + return false + } + + // We only want `Element`. + if (domNode?.nodeType !== 1) { + return false + } + + const domNodePos = view.posAtDOM(domNode, 0) + const outerNode = getOuterNode(editor.state.doc, domNodePos) + + if (outerNode !== currentNode) { + const outerNodePos = getOuterNodePos(editor.state.doc, domNodePos) + + currentNode = outerNode + currentNodePos = outerNodePos + + // Memorize relative position to retrieve absolute position in case of collaboration + currentNodeRelPos = getRelativePos(view.state, currentNodePos) + + onNodeChange?.({ editor, node: currentNode, pos: currentNodePos }) + + // Set nodes clientRect. + repositionDragHandle(domNode as Element) + + showHandle() + } + + return false + }, + }, + }, + }), + } +} diff --git a/packages/extension-drag-handle/src/drag-handle.ts b/packages/extension-drag-handle/src/drag-handle.ts new file mode 100644 index 0000000000..0577d94cff --- /dev/null +++ b/packages/extension-drag-handle/src/drag-handle.ts @@ -0,0 +1,106 @@ +import type { ComputePositionConfig } from '@floating-ui/dom' +import { type Editor, Extension } from '@tiptap/core' +import type { Node } from '@tiptap/pm/model' + +import { DragHandlePlugin } from './drag-handle-plugin.js' + +export const defaultComputePositionConfig: ComputePositionConfig = { + placement: 'left-start', + strategy: 'absolute', +} + +export interface DragHandleOptions { + /** + * Renders an element that is positioned with the floating-ui/dom package + */ + render(): HTMLElement + /** + * Configuration for position computation of the drag handle + * using the floating-ui/dom package + */ + computePositionConfig?: ComputePositionConfig + /** + * Locks the draghandle in place and visibility + */ + locked?: boolean + /** + * Returns a node or null when a node is hovered over + */ + onNodeChange?: (options: { node: Node | null; editor: Editor }) => void +} + +declare module '@tiptap/core' { + interface Commands { + dragHandle: { + /** + * Locks the draghandle in place and visibility + */ + lockDragHandle: () => ReturnType + /** + * Unlocks the draghandle + */ + unlockDragHandle: () => ReturnType + /** + * Toggle draghandle lock state + */ + toggleDragHandle: () => ReturnType + } + } +} + +export const DragHandle = Extension.create({ + name: 'dragHandle', + + addOptions() { + return { + render() { + const element = document.createElement('div') + + element.classList.add('drag-handle') + + return element + }, + computePositionConfig: {}, + locked: false, + onNodeChange: () => { + return null + }, + } + }, + + addCommands() { + return { + lockDragHandle: + () => + ({ editor }) => { + this.options.locked = true + return editor.commands.setMeta('lockDragHandle', this.options.locked) + }, + unlockDragHandle: + () => + ({ editor }) => { + this.options.locked = false + return editor.commands.setMeta('lockDragHandle', this.options.locked) + }, + toggleDragHandle: + () => + ({ editor }) => { + this.options.locked = !this.options.locked + return editor.commands.setMeta('lockDragHandle', this.options.locked) + }, + } + }, + + addProseMirrorPlugins() { + const element = this.options.render() + + return [ + DragHandlePlugin({ + computePositionConfig: { ...defaultComputePositionConfig, ...this.options.computePositionConfig }, + element, + editor: this.editor, + onNodeChange: this.options.onNodeChange, + }).plugin, + ] + }, +}) diff --git a/packages/extension-drag-handle/src/helpers/cloneElement.ts b/packages/extension-drag-handle/src/helpers/cloneElement.ts new file mode 100644 index 0000000000..d01a61a768 --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/cloneElement.ts @@ -0,0 +1,22 @@ +function getCSSText(element: Element) { + let value = '' + const style = getComputedStyle(element) + + for (let i = 0; i < style.length; i += 1) { + value += `${style[i]}:${style.getPropertyValue(style[i])};` + } + + return value +} + +export function cloneElement(node: HTMLElement) { + const clonedNode = node.cloneNode(true) as HTMLElement + const sourceElements = [node, ...Array.from(node.getElementsByTagName('*'))] as HTMLElement[] + const targetElements = [clonedNode, ...Array.from(clonedNode.getElementsByTagName('*'))] as HTMLElement[] + + sourceElements.forEach((sourceElement, index) => { + targetElements[index].style.cssText = getCSSText(sourceElement) + }) + + return clonedNode +} diff --git a/packages/extension-drag-handle/src/helpers/dragHandler.ts b/packages/extension-drag-handle/src/helpers/dragHandler.ts new file mode 100644 index 0000000000..2e116af229 --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/dragHandler.ts @@ -0,0 +1,102 @@ +import type { Editor } from '@tiptap/core' +import { getSelectionRanges, NodeRangeSelection } from '@tiptap/extension-node-range' +import type { SelectionRange } from '@tiptap/pm/state' + +import { cloneElement } from './cloneElement.js' +import { findElementNextToCoords } from './findNextElementFromCursor.js' +import { getInnerCoords } from './getInnerCoords.js' +import { removeNode } from './removeNode.js' + +function getDragHandleRanges(event: DragEvent, editor: Editor): SelectionRange[] { + const { doc } = editor.view.state + + const result = findElementNextToCoords({ + editor, + x: event.clientX, + y: event.clientY, + direction: 'right', + }) + + if (!result.resultNode || result.pos === null) { + return [] + } + + const x = event.clientX + + // @ts-ignore + const coords = getInnerCoords(editor.view, x, event.clientY) + const posAtCoords = editor.view.posAtCoords(coords) + + if (!posAtCoords) { + return [] + } + + const { pos } = posAtCoords + const nodeAt = doc.resolve(pos).parent + + if (!nodeAt) { + return [] + } + + const $from = doc.resolve(result.pos) + const $to = doc.resolve(result.pos + 1) + + return getSelectionRanges($from, $to, 0) +} + +export function dragHandler(event: DragEvent, editor: Editor) { + const { view } = editor + + if (!event.dataTransfer) { + return + } + + const { empty, $from, $to } = view.state.selection + + const dragHandleRanges = getDragHandleRanges(event, editor) + + const selectionRanges = getSelectionRanges($from, $to, 0) + const isDragHandleWithinSelection = selectionRanges.some(range => { + return dragHandleRanges.find(dragHandleRange => { + return dragHandleRange.$from === range.$from && dragHandleRange.$to === range.$to + }) + }) + + const ranges = empty || !isDragHandleWithinSelection ? dragHandleRanges : selectionRanges + + if (!ranges.length) { + return + } + + const { tr } = view.state + const wrapper = document.createElement('div') + const from = ranges[0].$from.pos + const to = ranges[ranges.length - 1].$to.pos + + const selection = NodeRangeSelection.create(view.state.doc, from, to) + const slice = selection.content() + + ranges.forEach(range => { + const element = view.nodeDOM(range.$from.pos) as HTMLElement + const clonedElement = cloneElement(element) + + wrapper.append(clonedElement) + }) + + wrapper.style.position = 'absolute' + wrapper.style.top = '-10000px' + document.body.append(wrapper) + + event.dataTransfer.clearData() + event.dataTransfer.setDragImage(wrapper, 0, 0) + + // tell ProseMirror the dragged content + view.dragging = { slice, move: true } + + tr.setSelection(selection) + + view.dispatch(tr) + + // clean up + document.addEventListener('drop', () => removeNode(wrapper), { once: true }) +} diff --git a/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts b/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts new file mode 100644 index 0000000000..7e25a26556 --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts @@ -0,0 +1,53 @@ +import type { Editor } from '@tiptap/core' +import type { Node } from '@tiptap/pm/model' + +export type FindElementNextToCoords = { + x: number + y: number + direction?: 'left' | 'right' + editor: Editor +} + +export const findElementNextToCoords = (options: FindElementNextToCoords) => { + const { x, y, direction, editor } = options + let resultElement: HTMLElement | null = null + let resultNode: Node | null = null + let pos: number | null = null + + let currentX = x + + while (resultNode === null && currentX < window.innerWidth && currentX > 0) { + const allElements = document.elementsFromPoint(currentX, y) + const prosemirrorIndex = allElements.findIndex(element => element.classList.contains('ProseMirror')) + const filteredElements = allElements.slice(0, prosemirrorIndex) + + if (filteredElements.length > 0) { + const target = filteredElements[0] + + resultElement = target as HTMLElement + pos = editor.view.posAtDOM(target, 0) + + if (pos >= 0) { + resultNode = editor.state.doc.nodeAt(Math.max(pos - 1, 0)) + + if (resultNode?.isText) { + resultNode = editor.state.doc.nodeAt(Math.max(pos - 1, 0)) + } + + if (!resultNode) { + resultNode = editor.state.doc.nodeAt(Math.max(pos, 0)) + } + + break + } + } + + if (direction === 'left') { + currentX -= 1 + } else { + currentX += 1 + } + } + + return { resultElement, resultNode, pos: pos ?? null } +} diff --git a/packages/extension-drag-handle/src/helpers/getComputedStyle.ts b/packages/extension-drag-handle/src/helpers/getComputedStyle.ts new file mode 100644 index 0000000000..93732f3d2d --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/getComputedStyle.ts @@ -0,0 +1,5 @@ +export function getComputedStyle(node: Element, property: keyof CSSStyleDeclaration): any { + const style = window.getComputedStyle(node) + + return style[property] +} diff --git a/packages/extension-drag-handle/src/helpers/getInnerCoords.ts b/packages/extension-drag-handle/src/helpers/getInnerCoords.ts new file mode 100644 index 0000000000..45932ce56d --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/getInnerCoords.ts @@ -0,0 +1,18 @@ +import type { EditorView } from '@tiptap/pm/view' + +import { getComputedStyle } from './getComputedStyle.js' +import { minMax } from './minMax.js' + +export function getInnerCoords(view: EditorView, x: number, y: number): { left: number; top: number } { + const paddingLeft = parseInt(getComputedStyle(view.dom, 'paddingLeft'), 10) + const paddingRight = parseInt(getComputedStyle(view.dom, 'paddingRight'), 10) + const borderLeft = parseInt(getComputedStyle(view.dom, 'borderLeftWidth'), 10) + const borderRight = parseInt(getComputedStyle(view.dom, 'borderLeftWidth'), 10) + const bounds = view.dom.getBoundingClientRect() + const coords = { + left: minMax(x, bounds.left + paddingLeft + borderLeft, bounds.right - paddingRight - borderRight), + top: y, + } + + return coords +} diff --git a/packages/extension-drag-handle/src/helpers/getOuterNode.ts b/packages/extension-drag-handle/src/helpers/getOuterNode.ts new file mode 100644 index 0000000000..0a3c25846e --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/getOuterNode.ts @@ -0,0 +1,34 @@ +import type { Node } from '@tiptap/pm/model' + +export const getOuterNodePos = (doc: Node, pos: number): number => { + const resolvedPos = doc.resolve(pos) + const { depth } = resolvedPos + + if (depth === 0) { + return pos + } + + const a = resolvedPos.pos - resolvedPos.parentOffset + + return a - 1 +} + +export const getOuterNode = (doc: Node, pos: number): Node | null => { + const node = doc.nodeAt(pos) + const resolvedPos = doc.resolve(pos) + + let { depth } = resolvedPos + let parent = node + + while (depth > 0) { + const currentNode = resolvedPos.node(depth) + + depth -= 1 + + if (depth === 0) { + parent = currentNode + } + } + + return parent +} diff --git a/packages/extension-drag-handle/src/helpers/minMax.ts b/packages/extension-drag-handle/src/helpers/minMax.ts new file mode 100644 index 0000000000..d13ce8bb6c --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/minMax.ts @@ -0,0 +1,3 @@ +export function minMax(value = 0, min = 0, max = 0): number { + return Math.min(Math.max(value, min), max) +} diff --git a/packages/extension-drag-handle/src/helpers/removeNode.ts b/packages/extension-drag-handle/src/helpers/removeNode.ts new file mode 100644 index 0000000000..b87e2b8e23 --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/removeNode.ts @@ -0,0 +1,3 @@ +export function removeNode(node: HTMLElement) { + node.parentNode?.removeChild(node) +} diff --git a/packages/extension-drag-handle/src/index.ts b/packages/extension-drag-handle/src/index.ts new file mode 100644 index 0000000000..2d313e6643 --- /dev/null +++ b/packages/extension-drag-handle/src/index.ts @@ -0,0 +1,6 @@ +import { DragHandle } from './drag-handle.js' + +export * from './drag-handle.js' +export * from './drag-handle-plugin.js' + +export default DragHandle diff --git a/packages/extension-drag-handle/tsup.config.ts b/packages/extension-drag-handle/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-drag-handle/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json new file mode 100644 index 0000000000..29d41f76d6 --- /dev/null +++ b/packages/extension-emoji/package.json @@ -0,0 +1,55 @@ +{ + "name": "@tiptap/extension-emoji", + "description": "emoji extension for tiptap", + "version": "2.21.4", + "homepage": "https://tiptap.dev/api/nodes/emoji", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/suggestion": "workspace:*" + }, + "dependencies": { + "emoji-regex": "^10.4.0", + "emojibase-data": "^15", + "is-emoji-supported": "^0.0.5" + }, + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*", + "@tiptap/suggestion": "workspace:*", + "emoji-datasource": "^7.0.2", + "json5": "^2.2.3", + "tsm": "^2.3.0" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-emoji/src/data.ts b/packages/extension-emoji/src/data.ts new file mode 100644 index 0000000000..4913e21c0f --- /dev/null +++ b/packages/extension-emoji/src/data.ts @@ -0,0 +1,19373 @@ +// This is a generated file + +import type { EmojiItem } from './emoji.js' + +export const emojis: EmojiItem[] = [ + { + emoji: '🇦', + name: 'regional_indicator_a', + shortcodes: ['regional_indicator_a'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇧', + name: 'regional_indicator_b', + shortcodes: ['regional_indicator_b'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇨', + name: 'regional_indicator_c', + shortcodes: ['regional_indicator_c'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇩', + name: 'regional_indicator_d', + shortcodes: ['regional_indicator_d'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇪', + name: 'regional_indicator_e', + shortcodes: ['regional_indicator_e'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇫', + name: 'regional_indicator_f', + shortcodes: ['regional_indicator_f'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇬', + name: 'regional_indicator_g', + shortcodes: ['regional_indicator_g'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇭', + name: 'regional_indicator_h', + shortcodes: ['regional_indicator_h'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇮', + name: 'regional_indicator_i', + shortcodes: ['regional_indicator_i'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇯', + name: 'regional_indicator_j', + shortcodes: ['regional_indicator_j'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇰', + name: 'regional_indicator_k', + shortcodes: ['regional_indicator_k'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇱', + name: 'regional_indicator_l', + shortcodes: ['regional_indicator_l'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇲', + name: 'regional_indicator_m', + shortcodes: ['regional_indicator_m'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇳', + name: 'regional_indicator_n', + shortcodes: ['regional_indicator_n'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇴', + name: 'regional_indicator_o', + shortcodes: ['regional_indicator_o'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇵', + name: 'regional_indicator_p', + shortcodes: ['regional_indicator_p'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇶', + name: 'regional_indicator_q', + shortcodes: ['regional_indicator_q'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇷', + name: 'regional_indicator_r', + shortcodes: ['regional_indicator_r'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇸', + name: 'regional_indicator_s', + shortcodes: ['regional_indicator_s'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇹', + name: 'regional_indicator_t', + shortcodes: ['regional_indicator_t'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇺', + name: 'regional_indicator_u', + shortcodes: ['regional_indicator_u'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇻', + name: 'regional_indicator_v', + shortcodes: ['regional_indicator_v'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇼', + name: 'regional_indicator_w', + shortcodes: ['regional_indicator_w'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇽', + name: 'regional_indicator_x', + shortcodes: ['regional_indicator_x'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇾', + name: 'regional_indicator_y', + shortcodes: ['regional_indicator_y'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '🇿', + name: 'regional_indicator_z', + shortcodes: ['regional_indicator_z'], + tags: [], + group: '', + emoticons: [], + version: 0, + }, + { + emoji: '😀', + name: 'grinning', + shortcodes: ['grinning', 'grinning_face'], + tags: ['face', 'grin'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f600.png', + }, + { + emoji: '😃', + name: 'smiley', + shortcodes: ['grinning_face_with_big_eyes', 'smiley'], + tags: ['face', 'mouth', 'open', 'smile'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f603.png', + }, + { + emoji: '😄', + name: 'smile', + shortcodes: ['grinning_face_with_closed_eyes', 'smile'], + tags: ['eye', 'face', 'mouth', 'open', 'smile'], + group: '', + emoticons: [':D'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f604.png', + }, + { + emoji: '😁', + name: 'grin', + shortcodes: ['beaming_face', 'grin'], + tags: ['eye', 'face', 'grin', 'smile'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f601.png', + }, + { + emoji: '😆', + name: 'laughing', + shortcodes: ['laughing', 'lol', 'satisfied', 'squinting_face'], + tags: ['face', 'laugh', 'mouth', 'satisfied', 'smile'], + group: '', + emoticons: ['xD', 'XD'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f606.png', + }, + { + emoji: '😅', + name: 'sweat_smile', + shortcodes: ['grinning_face_with_sweat', 'sweat_smile'], + tags: ['cold', 'face', 'open', 'smile', 'sweat'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f605.png', + }, + { + emoji: '🤣', + name: 'rofl', + shortcodes: ['rofl'], + tags: ['face', 'floor', 'laugh', 'rofl', 'rolling', 'rotfl'], + group: '', + emoticons: [":'D"], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f923.png', + }, + { + emoji: '😂', + name: 'joy', + shortcodes: ['joy', 'lmao', 'tears_of_joy'], + tags: ['face', 'joy', 'laugh', 'tear'], + group: '', + emoticons: [":')"], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f602.png', + }, + { + emoji: '🙂', + name: 'slightly_smiling_face', + shortcodes: ['slightly_smiling_face'], + tags: ['face', 'smile'], + group: '', + emoticons: [':)'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f642.png', + }, + { + emoji: '🙃', + name: 'upside_down_face', + shortcodes: ['upside_down_face'], + tags: ['face', 'upside-down'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f643.png', + }, + { + emoji: '🫠', + name: 'melting_face', + shortcodes: ['melt', 'melting_face'], + tags: ['disappear', 'dissolve', 'liquid', 'melt'], + group: '', + emoticons: [], + version: 14, + }, + { + emoji: '😉', + name: 'wink', + shortcodes: ['wink', 'winking_face'], + tags: ['face', 'wink'], + group: '', + emoticons: [';)'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f609.png', + }, + { + emoji: '😊', + name: 'blush', + shortcodes: ['blush', 'smiling_face_with_closed_eyes'], + tags: ['blush', 'eye', 'face', 'smile'], + group: '', + emoticons: [':>'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60a.png', + }, + { + emoji: '😇', + name: 'innocent', + shortcodes: ['halo', 'innocent'], + tags: ['angel', 'face', 'fantasy', 'halo', 'innocent'], + group: '', + emoticons: ['o:)', 'O:)'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f607.png', + }, + { + emoji: '🥰', + name: 'smiling_face_with_three_hearts', + shortcodes: ['smiling_face_with_3_hearts'], + tags: ['adore', 'crush', 'hearts', 'in love'], + group: '', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f970.png', + }, + { + emoji: '😍', + name: 'heart_eyes', + shortcodes: ['heart_eyes', 'smiling_face_with_heart_eyes'], + tags: ['eye', 'face', 'love', 'smile'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60d.png', + }, + { + emoji: '🤩', + name: 'star_struck', + shortcodes: ['star_struck'], + tags: ['eyes', 'face', 'grinning', 'star'], + group: '', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f929.png', + }, + { + emoji: '😘', + name: 'kissing_heart', + shortcodes: ['blowing_a_kiss', 'kissing_heart'], + tags: ['face', 'kiss'], + group: '', + emoticons: [':x', ':X'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f618.png', + }, + { + emoji: '😗', + name: 'kissing', + shortcodes: ['kissing', 'kissing_face'], + tags: ['face', 'kiss'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f617.png', + }, + { + emoji: '☺', + name: 'relaxed', + shortcodes: ['relaxed', 'smiling_face'], + tags: ['face', 'outlined', 'relaxed', 'smile'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/263a-fe0f.png', + }, + { + emoji: '😚', + name: 'kissing_closed_eyes', + shortcodes: ['kissing_closed_eyes', 'kissing_face_with_closed_eyes'], + tags: ['closed', 'eye', 'face', 'kiss'], + group: '', + emoticons: [':*'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61a.png', + }, + { + emoji: '😙', + name: 'kissing_smiling_eyes', + shortcodes: ['kissing_face_with_smiling_eyes', 'kissing_smiling_eyes'], + tags: ['eye', 'face', 'kiss', 'smile'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f619.png', + }, + { + emoji: '🥲', + name: 'smiling_face_with_tear', + shortcodes: ['smiling_face_with_tear'], + tags: ['grateful', 'proud', 'relieved', 'smiling', 'tear', 'touched'], + group: '', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f972.png', + }, + { + emoji: '😋', + name: 'yum', + shortcodes: ['savoring_food', 'yum'], + tags: ['delicious', 'face', 'savouring', 'smile', 'yum'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60b.png', + }, + { + emoji: '😛', + name: 'stuck_out_tongue', + shortcodes: ['face_with_tongue', 'stuck_out_tongue'], + tags: ['face', 'tongue'], + group: '', + emoticons: [':p', ':P'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61b.png', + }, + { + emoji: '😜', + name: 'stuck_out_tongue_winking_eye', + shortcodes: ['stuck_out_tongue_winking_eye'], + tags: ['eye', 'face', 'joke', 'tongue', 'wink'], + group: '', + emoticons: [';p', ';P'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61c.png', + }, + { + emoji: '🤪', + name: 'zany_face', + shortcodes: ['zany', 'zany_face'], + tags: ['eye', 'goofy', 'large', 'small'], + group: '', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92a.png', + }, + { + emoji: '😝', + name: 'stuck_out_tongue_closed_eyes', + shortcodes: ['stuck_out_tongue_closed_eyes'], + tags: ['eye', 'face', 'horrible', 'taste', 'tongue'], + group: '', + emoticons: ['xp', 'xP', 'XP'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61d.png', + }, + { + emoji: '🤑', + name: 'money_mouth_face', + shortcodes: ['money_mouth_face'], + tags: ['face', 'money', 'mouth'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f911.png', + }, + { + emoji: '🤗', + name: 'hugs', + shortcodes: ['hug', 'hugging', 'hugging_face'], + tags: ['face', 'hug', 'hugging', 'open hands', 'smiling face'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f917.png', + }, + { + emoji: '🤭', + name: 'hand_over_mouth', + shortcodes: ['face_with_hand_over_mouth', 'hand_over_mouth'], + tags: ['whoops'], + group: '', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92d.png', + }, + { + emoji: '🫢', + name: 'face_with_open_eyes_and_hand_over_mouth', + shortcodes: ['face_with_open_eyes_hand_over_mouth', 'gasp'], + tags: ['amazement', 'awe', 'disbelief', 'embarrass', 'scared', 'surprise'], + group: '', + emoticons: [], + version: 14, + }, + { + emoji: '🫣', + name: 'face_with_peeking_eye', + shortcodes: ['face_with_peeking_eye', 'peek'], + tags: ['captivated', 'peep', 'stare'], + group: '', + emoticons: [], + version: 14, + }, + { + emoji: '🤫', + name: 'shushing_face', + shortcodes: ['shush', 'shushing_face'], + tags: ['quiet', 'shush'], + group: '', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92b.png', + }, + { + emoji: '🤔', + name: 'thinking', + shortcodes: ['thinking', 'thinking_face', 'wtf'], + tags: ['face', 'thinking'], + group: '', + emoticons: [':l', ':L'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f914.png', + }, + { + emoji: '🫡', + name: 'saluting_face', + shortcodes: ['salute', 'saluting_face'], + tags: ['ok', 'salute', 'sunny', 'troops', 'yes'], + group: '', + emoticons: [], + version: 14, + }, + { + emoji: '🤐', + name: 'zipper_mouth_face', + shortcodes: ['zipper_mouth', 'zipper_mouth_face'], + tags: ['face', 'mouth', 'zip', 'zipper'], + group: '', + emoticons: [':z', ':Z'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f910.png', + }, + { + emoji: '🤨', + name: 'raised_eyebrow', + shortcodes: ['face_with_raised_eyebrow', 'raised_eyebrow'], + tags: ['distrust', 'skeptic'], + group: '', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f928.png', + }, + { + emoji: '😐', + name: 'neutral_face', + shortcodes: ['neutral', 'neutral_face'], + tags: ['deadpan', 'face', 'meh', 'neutral'], + group: '', + emoticons: [':|'], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f610.png', + }, + { + emoji: '😑', + name: 'expressionless', + shortcodes: ['expressionless', 'expressionless_face'], + tags: ['expressionless', 'face', 'inexpressive', 'meh', 'unexpressive'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f611.png', + }, + { + emoji: '😶', + name: 'no_mouth', + shortcodes: ['no_mouth'], + tags: ['face', 'mouth', 'quiet', 'silent'], + group: '', + emoticons: [':#'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f636.png', + }, + { + emoji: '🫥', + name: 'dotted_line_face', + shortcodes: ['dotted_line_face'], + tags: ['depressed', 'disappear', 'hide', 'introvert', 'invisible'], + group: '', + emoticons: [], + version: 14, + }, + { + emoji: '😶‍🌫', + name: 'face_in_clouds', + shortcodes: ['in_clouds'], + tags: ['absentminded', 'face in the fog', 'head in clouds'], + group: '', + emoticons: [], + version: 13.1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f636-200d-1f32b-fe0f.png', + }, + { + emoji: '😏', + name: 'smirk', + shortcodes: ['smirk', 'smirking', 'smirking_face'], + tags: ['face', 'smirk'], + group: '', + emoticons: [':j'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60f.png', + }, + { + emoji: '😒', + name: 'unamused', + shortcodes: ['unamused', 'unamused_face'], + tags: ['face', 'unamused', 'unhappy'], + group: '', + emoticons: [':?'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f612.png', + }, + { + emoji: '🙄', + name: 'roll_eyes', + shortcodes: ['rolling_eyes'], + tags: ['eyeroll', 'eyes', 'face', 'rolling'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f644.png', + }, + { + emoji: '😬', + name: 'grimacing', + shortcodes: ['grimacing', 'grimacing_face'], + tags: ['face', 'grimace'], + group: '', + emoticons: ['8D'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62c.png', + }, + { + emoji: '😮‍💨', + name: 'face_exhaling', + shortcodes: ['exhale', 'exhaling'], + tags: ['exhale', 'gasp', 'groan', 'relief', 'whisper', 'whistle'], + group: '', + emoticons: [], + version: 13.1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62e-200d-1f4a8.png', + }, + { + emoji: '🤥', + name: 'lying_face', + shortcodes: ['lying', 'lying_face'], + tags: ['face', 'lie', 'pinocchio'], + group: '', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f925.png', + }, + { + emoji: '🫨', + name: 'shaking_face', + shortcodes: ['shaking', 'shaking_face'], + tags: ['earthquake', 'face', 'shaking', 'shock', 'vibrate'], + group: '', + emoticons: [], + version: 15, + }, + { + emoji: '🙂‍↔', + name: 'head_shaking_horizontally', + shortcodes: ['head_shaking_horizontally'], + tags: ['no', 'shake'], + group: '', + emoticons: [], + version: 15.1, + }, + { + emoji: '🙂‍↕', + name: 'head_shaking_vertically', + shortcodes: ['head_shaking_vertically'], + tags: ['nod', 'yes'], + group: '', + emoticons: [], + version: 15.1, + }, + { + emoji: '😌', + name: 'relieved', + shortcodes: ['relieved', 'relieved_face'], + tags: ['face', 'relieved'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60c.png', + }, + { + emoji: '😔', + name: 'pensive', + shortcodes: ['pensive', 'pensive_face'], + tags: ['dejected', 'face', 'pensive'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f614.png', + }, + { + emoji: '😪', + name: 'sleepy', + shortcodes: ['sleepy', 'sleepy_face'], + tags: ['face', 'good night', 'sleep'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62a.png', + }, + { + emoji: '🤤', + name: 'drooling_face', + shortcodes: ['drooling', 'drooling_face'], + tags: ['drooling', 'face'], + group: '', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f924.png', + }, + { + emoji: '😴', + name: 'sleeping', + shortcodes: ['sleeping', 'sleeping_face'], + tags: ['face', 'good night', 'sleep', 'zzz'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f634.png', + }, + { + emoji: '😷', + name: 'mask', + shortcodes: ['mask', 'medical_mask'], + tags: ['cold', 'doctor', 'face', 'mask', 'sick'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f637.png', + }, + { + emoji: '🤒', + name: 'face_with_thermometer', + shortcodes: ['face_with_thermometer'], + tags: ['face', 'ill', 'sick', 'thermometer'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f912.png', + }, + { + emoji: '🤕', + name: 'face_with_head_bandage', + shortcodes: ['face_with_head_bandage'], + tags: ['bandage', 'face', 'hurt', 'injury'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f915.png', + }, + { + emoji: '🤢', + name: 'nauseated_face', + shortcodes: ['nauseated', 'nauseated_face'], + tags: ['face', 'nauseated', 'vomit'], + group: '', + emoticons: ['%('], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f922.png', + }, + { + emoji: '🤮', + name: 'vomiting_face', + shortcodes: ['face_vomiting', 'vomiting'], + tags: ['puke', 'sick', 'vomit'], + group: '', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92e.png', + }, + { + emoji: '🤧', + name: 'sneezing_face', + shortcodes: ['sneezing', 'sneezing_face'], + tags: ['face', 'gesundheit', 'sneeze'], + group: '', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f927.png', + }, + { + emoji: '🥵', + name: 'hot_face', + shortcodes: ['hot', 'hot_face'], + tags: ['feverish', 'heat stroke', 'hot', 'red-faced', 'sweating'], + group: '', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f975.png', + }, + { + emoji: '🥶', + name: 'cold_face', + shortcodes: ['cold', 'cold_face'], + tags: ['blue-faced', 'cold', 'freezing', 'frostbite', 'icicles'], + group: '', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f976.png', + }, + { + emoji: '🥴', + name: 'woozy_face', + shortcodes: ['woozy', 'woozy_face'], + tags: ['dizzy', 'intoxicated', 'tipsy', 'uneven eyes', 'wavy mouth'], + group: '', + emoticons: [':&'], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f974.png', + }, + { + emoji: '😵', + name: 'dizzy_face', + shortcodes: ['dizzy_face', 'knocked_out'], + tags: ['crossed-out eyes', 'dead', 'face', 'knocked out'], + group: '', + emoticons: ['xo', 'XO'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f635.png', + }, + { + emoji: '😵‍💫', + name: 'face_with_spiral_eyes', + shortcodes: ['dizzy_eyes'], + tags: ['dizzy', 'hypnotized', 'spiral', 'trouble', 'whoa'], + group: '', + emoticons: [], + version: 13.1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f635-200d-1f4ab.png', + }, + { + emoji: '🤯', + name: 'exploding_head', + shortcodes: ['exploding_head'], + tags: ['mind blown', 'shocked'], + group: '', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92f.png', + }, + { + emoji: '🤠', + name: 'cowboy_hat_face', + shortcodes: ['cowboy', 'cowboy_face'], + tags: ['cowboy', 'cowgirl', 'face', 'hat'], + group: '', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f920.png', + }, + { + emoji: '🥳', + name: 'partying_face', + shortcodes: ['hooray', 'partying', 'partying_face'], + tags: ['celebration', 'hat', 'horn', 'party'], + group: '', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f973.png', + }, + { + emoji: '🥸', + name: 'disguised_face', + shortcodes: ['disguised', 'disguised_face'], + tags: ['disguise', 'face', 'glasses', 'incognito', 'nose'], + group: '', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f978.png', + }, + { + emoji: '😎', + name: 'sunglasses', + shortcodes: ['smiling_face_with_sunglasses', 'sunglasses_cool', 'too_cool'], + tags: ['bright', 'cool', 'face', 'sun', 'sunglasses'], + group: '', + emoticons: ['8)'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f60e.png', + }, + { + emoji: '🤓', + name: 'nerd_face', + shortcodes: ['nerd', 'nerd_face'], + tags: ['face', 'geek', 'nerd'], + group: '', + emoticons: [':B'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f913.png', + }, + { + emoji: '🧐', + name: 'monocle_face', + shortcodes: ['face_with_monocle'], + tags: ['face', 'monocle', 'stuffy'], + group: '', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d0.png', + }, + { + emoji: '😕', + name: 'confused', + shortcodes: ['confused', 'confused_face'], + tags: ['confused', 'face', 'meh'], + group: '', + emoticons: [':/'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f615.png', + }, + { + emoji: '🫤', + name: 'face_with_diagonal_mouth', + shortcodes: ['face_with_diagonal_mouth'], + tags: ['disappointed', 'meh', 'skeptical', 'unsure'], + group: '', + emoticons: [], + version: 14, + }, + { + emoji: '😟', + name: 'worried', + shortcodes: ['worried', 'worried_face'], + tags: ['face', 'worried'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61f.png', + }, + { + emoji: '🙁', + name: 'slightly_frowning_face', + shortcodes: ['slightly_frowning_face'], + tags: ['face', 'frown'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f641.png', + }, + { + emoji: '☹', + name: 'frowning_face', + shortcodes: ['white_frowning_face'], + tags: ['face', 'frown'], + group: '', + emoticons: [':('], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2639-fe0f.png', + }, + { + emoji: '😮', + name: 'open_mouth', + shortcodes: ['face_with_open_mouth', 'open_mouth'], + tags: ['face', 'mouth', 'open', 'sympathy'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62e.png', + }, + { + emoji: '😯', + name: 'hushed', + shortcodes: ['hushed', 'hushed_face'], + tags: ['face', 'hushed', 'stunned', 'surprised'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62f.png', + }, + { + emoji: '😲', + name: 'astonished', + shortcodes: ['astonished', 'astonished_face'], + tags: ['astonished', 'face', 'shocked', 'totally'], + group: '', + emoticons: [':o', ':O'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f632.png', + }, + { + emoji: '😳', + name: 'flushed', + shortcodes: ['flushed', 'flushed_face'], + tags: ['dazed', 'face', 'flushed'], + group: '', + emoticons: [':$'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f633.png', + }, + { + emoji: '🥺', + name: 'pleading_face', + shortcodes: ['pleading', 'pleading_face'], + tags: ['begging', 'mercy', 'puppy eyes'], + group: '', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97a.png', + }, + { + emoji: '🥹', + name: 'face_holding_back_tears', + shortcodes: ['face_holding_back_tears', 'watery_eyes'], + tags: ['angry', 'cry', 'proud', 'resist', 'sad'], + group: '', + emoticons: [], + version: 14, + }, + { + emoji: '😦', + name: 'frowning', + shortcodes: ['frowning', 'frowning_face'], + tags: ['face', 'frown', 'mouth', 'open'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f626.png', + }, + { + emoji: '😧', + name: 'anguished', + shortcodes: ['anguished', 'anguished_face'], + tags: ['anguished', 'face'], + group: '', + emoticons: [':s', ':S'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f627.png', + }, + { + emoji: '😨', + name: 'fearful', + shortcodes: ['fearful', 'fearful_face'], + tags: ['face', 'fear', 'fearful', 'scared'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f628.png', + }, + { + emoji: '😰', + name: 'cold_sweat', + shortcodes: ['anxious', 'anxious_face', 'cold_sweat'], + tags: ['blue', 'cold', 'face', 'rushed', 'sweat'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f630.png', + }, + { + emoji: '😥', + name: 'disappointed_relieved', + shortcodes: ['disappointed_relieved', 'sad_relieved_face'], + tags: ['disappointed', 'face', 'relieved', 'whew'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f625.png', + }, + { + emoji: '😢', + name: 'cry', + shortcodes: ['cry', 'crying_face'], + tags: ['cry', 'face', 'sad', 'tear'], + group: '', + emoticons: [":'("], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f622.png', + }, + { + emoji: '😭', + name: 'sob', + shortcodes: ['loudly_crying_face', 'sob'], + tags: ['cry', 'face', 'sad', 'sob', 'tear'], + group: '', + emoticons: [":'o"], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62d.png', + }, + { + emoji: '😱', + name: 'scream', + shortcodes: ['scream', 'screaming_in_fear'], + tags: ['face', 'fear', 'munch', 'scared', 'scream'], + group: '', + emoticons: ['Dx'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f631.png', + }, + { + emoji: '😖', + name: 'confounded', + shortcodes: ['confounded', 'confounded_face'], + tags: ['confounded', 'face'], + group: '', + emoticons: ['x(', 'X('], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f616.png', + }, + { + emoji: '😣', + name: 'persevere', + shortcodes: ['persevere', 'persevering_face'], + tags: ['face', 'persevere'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f623.png', + }, + { + emoji: '😞', + name: 'disappointed', + shortcodes: ['disappointed', 'disappointed_face'], + tags: ['disappointed', 'face'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f61e.png', + }, + { + emoji: '😓', + name: 'sweat', + shortcodes: ['downcast_face', 'sweat'], + tags: ['cold', 'face', 'sweat'], + group: '', + emoticons: [':<'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f613.png', + }, + { + emoji: '😩', + name: 'weary', + shortcodes: ['weary', 'weary_face'], + tags: ['face', 'tired', 'weary'], + group: '', + emoticons: ['D:'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f629.png', + }, + { + emoji: '😫', + name: 'tired_face', + shortcodes: ['tired', 'tired_face'], + tags: ['face', 'tired'], + group: '', + emoticons: [':c', ':C'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f62b.png', + }, + { + emoji: '🥱', + name: 'yawning_face', + shortcodes: ['yawn', 'yawning', 'yawning_face'], + tags: ['bored', 'tired', 'yawn'], + group: '', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f971.png', + }, + { + emoji: '😤', + name: 'triumph', + shortcodes: ['nose_steam', 'triumph'], + tags: ['face', 'triumph', 'won'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f624.png', + }, + { + emoji: '😡', + name: 'pout', + shortcodes: ['pout', 'pouting_face', 'rage'], + tags: ['angry', 'enraged', 'face', 'mad', 'pouting', 'rage', 'red'], + group: '', + emoticons: ['>:/'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f621.png', + }, + { + emoji: '😠', + name: 'angry', + shortcodes: ['angry', 'angry_face'], + tags: ['anger', 'angry', 'face', 'mad'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f620.png', + }, + { + emoji: '🤬', + name: 'cursing_face', + shortcodes: ['censored', 'face_with_symbols_on_mouth'], + tags: ['swearing'], + group: '', + emoticons: [':@'], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f92c.png', + }, + { + emoji: '😈', + name: 'smiling_imp', + shortcodes: ['smiling_imp'], + tags: ['face', 'fairy tale', 'fantasy', 'horns', 'smile'], + group: '', + emoticons: ['>:)'], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f608.png', + }, + { + emoji: '👿', + name: 'imp', + shortcodes: ['angry_imp', 'imp'], + tags: ['demon', 'devil', 'face', 'fantasy', 'imp'], + group: '', + emoticons: ['>:('], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47f.png', + }, + { + emoji: '💀', + name: 'skull', + shortcodes: ['skull'], + tags: ['death', 'face', 'fairy tale', 'monster'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f480.png', + }, + { + emoji: '☠', + name: 'skull_and_crossbones', + shortcodes: ['skull_and_crossbones'], + tags: ['crossbones', 'death', 'face', 'monster', 'skull'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2620-fe0f.png', + }, + { + emoji: '💩', + name: 'hankey', + shortcodes: ['poop', 'shit'], + tags: ['dung', 'face', 'monster', 'poo', 'poop'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a9.png', + }, + { + emoji: '🤡', + name: 'clown_face', + shortcodes: ['clown', 'clown_face'], + tags: ['clown', 'face'], + group: '', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f921.png', + }, + { + emoji: '👹', + name: 'japanese_ogre', + shortcodes: ['japanese_ogre', 'ogre'], + tags: ['creature', 'face', 'fairy tale', 'fantasy', 'monster'], + group: '', + emoticons: ['>0)'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f479.png', + }, + { + emoji: '👺', + name: 'japanese_goblin', + shortcodes: ['goblin', 'japanese_goblin'], + tags: ['creature', 'face', 'fairy tale', 'fantasy', 'monster'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47a.png', + }, + { + emoji: '👻', + name: 'ghost', + shortcodes: ['ghost'], + tags: ['creature', 'face', 'fairy tale', 'fantasy', 'monster'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47b.png', + }, + { + emoji: '👽', + name: 'alien', + shortcodes: ['alien'], + tags: ['creature', 'extraterrestrial', 'face', 'fantasy', 'ufo'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47d.png', + }, + { + emoji: '👾', + name: 'space_invader', + shortcodes: ['alien_monster', 'space_invader'], + tags: ['alien', 'creature', 'extraterrestrial', 'face', 'monster', 'ufo'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f47e.png', + }, + { + emoji: '🤖', + name: 'robot', + shortcodes: ['robot', 'robot_face'], + tags: ['face', 'monster'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f916.png', + }, + { + emoji: '😺', + name: 'smiley_cat', + shortcodes: ['grinning_cat', 'smiley_cat'], + tags: ['cat', 'face', 'grinning', 'mouth', 'open', 'smile'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63a.png', + }, + { + emoji: '😸', + name: 'smile_cat', + shortcodes: ['grinning_cat_with_closed_eyes', 'smile_cat'], + tags: ['cat', 'eye', 'face', 'grin', 'smile'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f638.png', + }, + { + emoji: '😹', + name: 'joy_cat', + shortcodes: ['joy_cat', 'tears_of_joy_cat'], + tags: ['cat', 'face', 'joy', 'tear'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f639.png', + }, + { + emoji: '😻', + name: 'heart_eyes_cat', + shortcodes: ['heart_eyes_cat', 'smiling_cat_with_heart_eyes'], + tags: ['cat', 'eye', 'face', 'heart', 'love', 'smile'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63b.png', + }, + { + emoji: '😼', + name: 'smirk_cat', + shortcodes: ['smirk_cat', 'wry_smile_cat'], + tags: ['cat', 'face', 'ironic', 'smile', 'wry'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63c.png', + }, + { + emoji: '😽', + name: 'kissing_cat', + shortcodes: ['kissing_cat'], + tags: ['cat', 'eye', 'face', 'kiss'], + group: '', + emoticons: [':3'], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63d.png', + }, + { + emoji: '🙀', + name: 'scream_cat', + shortcodes: ['scream_cat', 'weary_cat'], + tags: ['cat', 'face', 'oh', 'surprised', 'weary'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f640.png', + }, + { + emoji: '😿', + name: 'crying_cat_face', + shortcodes: ['crying_cat'], + tags: ['cat', 'cry', 'face', 'sad', 'tear'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63f.png', + }, + { + emoji: '😾', + name: 'pouting_cat', + shortcodes: ['pouting_cat'], + tags: ['cat', 'face', 'pouting'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f63e.png', + }, + { + emoji: '🙈', + name: 'see_no_evil', + shortcodes: ['see_no_evil'], + tags: ['evil', 'face', 'forbidden', 'monkey', 'see'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f648.png', + }, + { + emoji: '🙉', + name: 'hear_no_evil', + shortcodes: ['hear_no_evil'], + tags: ['evil', 'face', 'forbidden', 'hear', 'monkey'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f649.png', + }, + { + emoji: '🙊', + name: 'speak_no_evil', + shortcodes: ['speak_no_evil'], + tags: ['evil', 'face', 'forbidden', 'monkey', 'speak'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f64a.png', + }, + { + emoji: '💌', + name: 'love_letter', + shortcodes: ['love_letter'], + tags: ['heart', 'letter', 'love', 'mail'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48c.png', + }, + { + emoji: '💘', + name: 'cupid', + shortcodes: ['cupid', 'heart_with_arrow'], + tags: ['arrow', 'cupid'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f498.png', + }, + { + emoji: '💝', + name: 'gift_heart', + shortcodes: ['gift_heart', 'heart_with_ribbon'], + tags: ['ribbon', 'valentine'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49d.png', + }, + { + emoji: '💖', + name: 'sparkling_heart', + shortcodes: ['sparkling_heart'], + tags: ['excited', 'sparkle'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f496.png', + }, + { + emoji: '💗', + name: 'heartpulse', + shortcodes: ['growing_heart', 'heartpulse'], + tags: ['excited', 'growing', 'nervous', 'pulse'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f497.png', + }, + { + emoji: '💓', + name: 'heartbeat', + shortcodes: ['beating_heart', 'heartbeat'], + tags: ['beating', 'heartbeat', 'pulsating'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f493.png', + }, + { + emoji: '💞', + name: 'revolving_hearts', + shortcodes: ['revolving_hearts'], + tags: ['revolving'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49e.png', + }, + { + emoji: '💕', + name: 'two_hearts', + shortcodes: ['two_hearts'], + tags: ['love'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f495.png', + }, + { + emoji: '💟', + name: 'heart_decoration', + shortcodes: ['heart_decoration'], + tags: ['heart'], + group: '', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f49f.png', + }, + { + emoji: '❣', + name: 'heavy_heart_exclamation', + shortcodes: ['heart_exclamation'], + tags: ['exclamation', 'mark', 'punctuation'], + group: '', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2763-fe0f.png', + }, + { + emoji: '💔', + name: 'broken_heart', + shortcodes: ['broken_heart'], + tags: ['break', 'broken'], + group: '', + emoticons: [''], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d9-200d-2642-fe0f.png', + }, + { + emoji: '🧙‍♀', + name: 'mage_woman', + shortcodes: ['woman_mage'], + tags: ['sorceress', 'witch'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d9-200d-2640-fe0f.png', + }, + { + emoji: '🧚', + name: 'fairy', + shortcodes: ['fairy'], + tags: ['oberon', 'puck', 'titania'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9da.png', + }, + { + emoji: '🧚‍♂', + name: 'fairy_man', + shortcodes: ['man_fairy'], + tags: ['oberon', 'puck'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9da-200d-2642-fe0f.png', + }, + { + emoji: '🧚‍♀', + name: 'fairy_woman', + shortcodes: ['woman_fairy'], + tags: ['titania'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9da-200d-2640-fe0f.png', + }, + { + emoji: '🧛', + name: 'vampire', + shortcodes: ['vampire'], + tags: ['dracula', 'undead'], + group: 'people & body', + emoticons: [':E'], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9db.png', + }, + { + emoji: '🧛‍♂', + name: 'vampire_man', + shortcodes: ['man_vampire'], + tags: ['dracula', 'undead'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9db-200d-2642-fe0f.png', + }, + { + emoji: '🧛‍♀', + name: 'vampire_woman', + shortcodes: ['woman_vampire'], + tags: ['undead'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9db-200d-2640-fe0f.png', + }, + { + emoji: '🧜', + name: 'merperson', + shortcodes: ['merperson'], + tags: ['mermaid', 'merman', 'merwoman'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dc.png', + }, + { + emoji: '🧜‍♂', + name: 'merman', + shortcodes: ['merman'], + tags: ['triton'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dc-200d-2642-fe0f.png', + }, + { + emoji: '🧜‍♀', + name: 'mermaid', + shortcodes: ['mermaid'], + tags: ['merwoman'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dc-200d-2640-fe0f.png', + }, + { + emoji: '🧝', + name: 'elf', + shortcodes: ['elf'], + tags: ['magical'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dd.png', + }, + { + emoji: '🧝‍♂', + name: 'elf_man', + shortcodes: ['man_elf'], + tags: ['magical'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dd-200d-2642-fe0f.png', + }, + { + emoji: '🧝‍♀', + name: 'elf_woman', + shortcodes: ['woman_elf'], + tags: ['magical'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9dd-200d-2640-fe0f.png', + }, + { + emoji: '🧞', + name: 'genie', + shortcodes: ['genie'], + tags: ['djinn'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9de.png', + }, + { + emoji: '🧞‍♂', + name: 'genie_man', + shortcodes: ['man_genie'], + tags: ['djinn'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9de-200d-2642-fe0f.png', + }, + { + emoji: '🧞‍♀', + name: 'genie_woman', + shortcodes: ['woman_genie'], + tags: ['djinn'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9de-200d-2640-fe0f.png', + }, + { + emoji: '🧟', + name: 'zombie', + shortcodes: ['zombie'], + tags: ['undead', 'walking dead'], + group: 'people & body', + emoticons: ['8#'], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9df.png', + }, + { + emoji: '🧟‍♂', + name: 'zombie_man', + shortcodes: ['man_zombie'], + tags: ['undead', 'walking dead'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9df-200d-2642-fe0f.png', + }, + { + emoji: '🧟‍♀', + name: 'zombie_woman', + shortcodes: ['woman_zombie'], + tags: ['undead', 'walking dead'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9df-200d-2640-fe0f.png', + }, + { + emoji: '🧌', + name: 'troll', + shortcodes: ['troll'], + tags: ['fairy tale', 'fantasy', 'monster'], + group: 'people & body', + emoticons: [], + version: 14, + }, + { + emoji: '💆', + name: 'massage', + shortcodes: ['massage', 'person_getting_massage'], + tags: ['face', 'massage', 'salon'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f486.png', + }, + { + emoji: '💆‍♂', + name: 'massage_man', + shortcodes: ['man_getting_massage'], + tags: ['face', 'man', 'massage'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f486-200d-2642-fe0f.png', + }, + { + emoji: '💆‍♀', + name: 'massage_woman', + shortcodes: ['woman_getting_massage'], + tags: ['face', 'massage', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f486-200d-2640-fe0f.png', + }, + { + emoji: '💇', + name: 'haircut', + shortcodes: ['haircut', 'person_getting_haircut'], + tags: ['barber', 'beauty', 'haircut', 'parlor'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f487.png', + }, + { + emoji: '💇‍♂', + name: 'haircut_man', + shortcodes: ['man_getting_haircut'], + tags: ['haircut', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f487-200d-2642-fe0f.png', + }, + { + emoji: '💇‍♀', + name: 'haircut_woman', + shortcodes: ['woman_getting_haircut'], + tags: ['haircut', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f487-200d-2640-fe0f.png', + }, + { + emoji: '🚶', + name: 'walking', + shortcodes: ['person_walking', 'walking'], + tags: ['hike', 'walk', 'walking'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b6.png', + }, + { + emoji: '🚶‍♂', + name: 'walking_man', + shortcodes: ['man_walking'], + tags: ['hike', 'man', 'walk'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b6-200d-2642-fe0f.png', + }, + { + emoji: '🚶‍♀', + name: 'walking_woman', + shortcodes: ['woman_walking'], + tags: ['hike', 'walk', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b6-200d-2640-fe0f.png', + }, + { + emoji: '🚶‍➡', + name: 'person_walking_right', + shortcodes: ['person_walking_right'], + tags: ['hike', 'person walking', 'walk', 'walking'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🚶‍♀‍➡️', + name: 'woman_walking_right', + shortcodes: ['woman_walking_right'], + tags: ['hike', 'walk', 'woman', 'woman walking'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🚶‍♂‍➡️', + name: 'man_walking_right', + shortcodes: ['man_walking_right'], + tags: ['hike', 'man', 'man walking', 'walk'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧍', + name: 'standing_person', + shortcodes: ['person_standing', 'standing'], + tags: ['stand', 'standing'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cd.png', + }, + { + emoji: '🧍‍♂', + name: 'standing_man', + shortcodes: ['man_standing'], + tags: ['man', 'standing'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cd-200d-2642-fe0f.png', + }, + { + emoji: '🧍‍♀', + name: 'standing_woman', + shortcodes: ['woman_standing'], + tags: ['standing', 'woman'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cd-200d-2640-fe0f.png', + }, + { + emoji: '🧎', + name: 'kneeling_person', + shortcodes: ['kneeling', 'person_kneeling'], + tags: ['kneel', 'kneeling'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ce.png', + }, + { + emoji: '🧎‍♂', + name: 'kneeling_man', + shortcodes: ['man_kneeling'], + tags: ['kneeling', 'man'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ce-200d-2642-fe0f.png', + }, + { + emoji: '🧎‍♀', + name: 'kneeling_woman', + shortcodes: ['woman_kneeling'], + tags: ['kneeling', 'woman'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ce-200d-2640-fe0f.png', + }, + { + emoji: '🧎‍➡', + name: 'person_kneeling_right', + shortcodes: ['person_kneeling_right'], + tags: ['kneel', 'kneeling', 'person kneeling'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧎‍♀‍➡️', + name: 'woman_kneeling_right', + shortcodes: ['woman_kneeling_right'], + tags: ['kneeling', 'woman'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧎‍♂‍➡️', + name: 'man_kneeling_right', + shortcodes: ['man_kneeling_right'], + tags: ['kneeling', 'man'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧑‍🦯', + name: 'person_with_probing_cane', + shortcodes: ['person_with_probing_cane', 'person_with_white_cane'], + tags: ['accessibility', 'blind'], + group: 'people & body', + emoticons: [], + version: 12.1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9af.png', + }, + { + emoji: '🧑‍🦯‍➡', + name: 'person_with_white_cane_right', + shortcodes: ['person_with_white_cane_right'], + tags: ['accessibility', 'blind', 'person with white cane'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '👨‍🦯', + name: 'man_with_probing_cane', + shortcodes: ['man_with_probing_cane', 'man_with_white_cane'], + tags: ['accessibility', 'blind', 'man'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9af.png', + }, + { + emoji: '👨‍🦯‍➡', + name: 'man_with_white_cane_right', + shortcodes: ['man_with_white_cane_right'], + tags: ['accessibility', 'blind', 'man', 'man with white cane'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '👩‍🦯', + name: 'woman_with_probing_cane', + shortcodes: ['woman_with_probing_cane', 'woman_with_white_cane'], + tags: ['accessibility', 'blind', 'woman'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9af.png', + }, + { + emoji: '👩‍🦯‍➡', + name: 'woman_with_white_cane_right', + shortcodes: ['woman_with_white_cane_right'], + tags: ['accessibility', 'blind', 'woman', 'woman with white cane'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧑‍🦼', + name: 'person_in_motorized_wheelchair', + shortcodes: ['person_in_motorized_wheelchair'], + tags: ['accessibility', 'wheelchair'], + group: 'people & body', + emoticons: [], + version: 12.1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9bc.png', + }, + { + emoji: '🧑‍🦼‍➡', + name: 'person_in_motorized_wheelchair_right', + shortcodes: ['person_in_motorized_wheelchair_right'], + tags: ['accessibility', 'person in motorized wheelchair', 'wheelchair'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '👨‍🦼', + name: 'man_in_motorized_wheelchair', + shortcodes: ['man_in_motorized_wheelchair'], + tags: ['accessibility', 'man', 'wheelchair'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9bc.png', + }, + { + emoji: '👨‍🦼‍➡', + name: 'man_in_motorized_wheelchair_right', + shortcodes: ['man_in_motorized_wheelchair_right'], + tags: ['accessibility', 'man', 'man in motorized wheelchair', 'wheelchair'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '👩‍🦼', + name: 'woman_in_motorized_wheelchair', + shortcodes: ['woman_in_motorized_wheelchair'], + tags: ['accessibility', 'wheelchair', 'woman'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9bc.png', + }, + { + emoji: '👩‍🦼‍➡', + name: 'woman_in_motorized_wheelchair_right', + shortcodes: ['woman_in_motorized_wheelchair_right'], + tags: ['accessibility', 'wheelchair', 'woman', 'woman in motorized wheelchair'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧑‍🦽', + name: 'person_in_manual_wheelchair', + shortcodes: ['person_in_manual_wheelchair'], + tags: ['accessibility', 'wheelchair'], + group: 'people & body', + emoticons: [], + version: 12.1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f9bd.png', + }, + { + emoji: '🧑‍🦽‍➡', + name: 'person_in_manual_wheelchair_right', + shortcodes: ['person_in_manual_wheelchair_right'], + tags: ['accessibility', 'person in manual wheelchair', 'wheelchair'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '👨‍🦽', + name: 'man_in_manual_wheelchair', + shortcodes: ['man_in_manual_wheelchair'], + tags: ['accessibility', 'man', 'wheelchair'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f9bd.png', + }, + { + emoji: '👨‍🦽‍➡', + name: 'man_in_manual_wheelchair_right', + shortcodes: ['man_in_manual_wheelchair_right'], + tags: ['accessibility', 'man', 'man in manual wheelchair', 'wheelchair'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '👩‍🦽', + name: 'woman_in_manual_wheelchair', + shortcodes: ['woman_in_manual_wheelchair'], + tags: ['accessibility', 'wheelchair', 'woman'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f9bd.png', + }, + { + emoji: '👩‍🦽‍➡', + name: 'woman_in_manual_wheelchair_right', + shortcodes: ['woman_in_manual_wheelchair_right'], + tags: ['accessibility', 'wheelchair', 'woman', 'woman in manual wheelchair'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🏃', + name: 'runner', + shortcodes: ['person_running', 'running'], + tags: ['marathon', 'running'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c3.png', + }, + { + emoji: '🏃‍♂', + name: 'running_man', + shortcodes: ['man_running'], + tags: ['man', 'marathon', 'racing', 'running'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c3-200d-2642-fe0f.png', + }, + { + emoji: '🏃‍♀', + name: 'running_woman', + shortcodes: ['woman_running'], + tags: ['marathon', 'racing', 'running', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c3-200d-2640-fe0f.png', + }, + { + emoji: '🏃‍➡', + name: 'person_running_right', + shortcodes: ['person_running_right'], + tags: ['marathon', 'person running', 'running'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🏃‍♀‍➡️', + name: 'woman_running_right', + shortcodes: ['woman_running_right'], + tags: ['marathon', 'racing', 'running', 'woman'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🏃‍♂‍➡️', + name: 'man_running_right', + shortcodes: ['man_running_right'], + tags: ['man', 'marathon', 'racing', 'running'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '💃', + name: 'dancer', + shortcodes: ['dancer', 'woman_dancing'], + tags: ['dance', 'dancing', 'woman'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f483.png', + }, + { + emoji: '🕺', + name: 'man_dancing', + shortcodes: ['man_dancing'], + tags: ['dance', 'dancing', 'man'], + group: 'people & body', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f57a.png', + }, + { + emoji: '🕴', + name: 'business_suit_levitating', + shortcodes: ['levitate', 'levitating', 'person_in_suit_levitating'], + tags: ['business', 'person', 'suit'], + group: 'people & body', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f574-fe0f.png', + }, + { + emoji: '👯', + name: 'dancers', + shortcodes: ['dancers', 'people_with_bunny_ears_partying'], + tags: ['bunny ear', 'dancer', 'partying'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46f.png', + }, + { + emoji: '👯‍♂', + name: 'dancing_men', + shortcodes: ['men_with_bunny_ears_partying'], + tags: ['bunny ear', 'dancer', 'men', 'partying'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46f-200d-2642-fe0f.png', + }, + { + emoji: '👯‍♀', + name: 'dancing_women', + shortcodes: ['women_with_bunny_ears_partying'], + tags: ['bunny ear', 'dancer', 'partying', 'women'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46f-200d-2640-fe0f.png', + }, + { + emoji: '🧖', + name: 'sauna_person', + shortcodes: ['person_in_steamy_room'], + tags: ['sauna', 'steam room'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d6.png', + }, + { + emoji: '🧖‍♂', + name: 'sauna_man', + shortcodes: ['man_in_steamy_room'], + tags: ['sauna', 'steam room'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d6-200d-2642-fe0f.png', + }, + { + emoji: '🧖‍♀', + name: 'sauna_woman', + shortcodes: ['woman_in_steamy_room'], + tags: ['sauna', 'steam room'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d6-200d-2640-fe0f.png', + }, + { + emoji: '🧗', + name: 'climbing', + shortcodes: ['climbing', 'person_climbing'], + tags: ['climber'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d7.png', + }, + { + emoji: '🧗‍♂', + name: 'climbing_man', + shortcodes: ['man_climbing'], + tags: ['climber'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d7-200d-2642-fe0f.png', + }, + { + emoji: '🧗‍♀', + name: 'climbing_woman', + shortcodes: ['woman_climbing'], + tags: ['climber'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d7-200d-2640-fe0f.png', + }, + { + emoji: '🤺', + name: 'person_fencing', + shortcodes: ['fencer', 'fencing', 'person_fencing'], + tags: ['fencer', 'fencing', 'sword'], + group: 'people & body', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93a.png', + }, + { + emoji: '🏇', + name: 'horse_racing', + shortcodes: ['horse_racing'], + tags: ['horse', 'jockey', 'racehorse', 'racing'], + group: 'people & body', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c7.png', + }, + { + emoji: '⛷', + name: 'skier', + shortcodes: ['person_skiing', 'skier', 'skiing'], + tags: ['ski', 'snow'], + group: 'people & body', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f7-fe0f.png', + }, + { + emoji: '🏂', + name: 'snowboarder', + shortcodes: ['person_snowboarding', 'snowboarder', 'snowboarding'], + tags: ['ski', 'snow', 'snowboard'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c2.png', + }, + { + emoji: '🏌', + name: 'golfing', + shortcodes: ['golfer', 'golfing', 'person_golfing'], + tags: ['ball', 'golf'], + group: 'people & body', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cc-fe0f.png', + }, + { + emoji: '🏌‍♂️', + name: 'golfing_man', + shortcodes: ['man_golfing'], + tags: ['golf', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cc-fe0f-200d-2642-fe0f.png', + }, + { + emoji: '🏌‍♀️', + name: 'golfing_woman', + shortcodes: ['woman_golfing'], + tags: ['golf', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cc-fe0f-200d-2640-fe0f.png', + }, + { + emoji: '🏄', + name: 'surfer', + shortcodes: ['person_surfing', 'surfer', 'surfing'], + tags: ['surfing'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c4.png', + }, + { + emoji: '🏄‍♂', + name: 'surfing_man', + shortcodes: ['man_surfing'], + tags: ['man', 'surfing'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c4-200d-2642-fe0f.png', + }, + { + emoji: '🏄‍♀', + name: 'surfing_woman', + shortcodes: ['woman_surfing'], + tags: ['surfing', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c4-200d-2640-fe0f.png', + }, + { + emoji: '🚣', + name: 'rowboat', + shortcodes: ['person_rowing_boat', 'rowboat'], + tags: ['boat', 'rowboat'], + group: 'people & body', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a3.png', + }, + { + emoji: '🚣‍♂', + name: 'rowing_man', + shortcodes: ['man_rowing_boat'], + tags: ['boat', 'man', 'rowboat'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a3-200d-2642-fe0f.png', + }, + { + emoji: '🚣‍♀', + name: 'rowing_woman', + shortcodes: ['woman_rowing_boat'], + tags: ['boat', 'rowboat', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a3-200d-2640-fe0f.png', + }, + { + emoji: '🏊', + name: 'swimmer', + shortcodes: ['person_swimming', 'swimmer', 'swimming'], + tags: ['swim'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ca.png', + }, + { + emoji: '🏊‍♂', + name: 'swimming_man', + shortcodes: ['man_swimming'], + tags: ['man', 'swim'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ca-200d-2642-fe0f.png', + }, + { + emoji: '🏊‍♀', + name: 'swimming_woman', + shortcodes: ['woman_swimming'], + tags: ['swim', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ca-200d-2640-fe0f.png', + }, + { + emoji: '⛹', + name: 'bouncing_ball_person', + shortcodes: ['person_bouncing_ball'], + tags: ['ball'], + group: 'people & body', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f9-fe0f.png', + }, + { + emoji: '⛹‍♂️', + name: 'basketball_man', + shortcodes: ['man_bouncing_ball'], + tags: ['ball', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f9-fe0f-200d-2642-fe0f.png', + }, + { + emoji: '⛹‍♀️', + name: 'basketball_woman', + shortcodes: ['woman_bouncing_ball'], + tags: ['ball', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f9-fe0f-200d-2640-fe0f.png', + }, + { + emoji: '🏋', + name: 'weight_lifting', + shortcodes: ['person_lifting_weights', 'weight_lifter', 'weight_lifting'], + tags: ['lifter', 'weight'], + group: 'people & body', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cb-fe0f.png', + }, + { + emoji: '🏋‍♂️', + name: 'weight_lifting_man', + shortcodes: ['man_lifting_weights'], + tags: ['man', 'weight lifter'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cb-fe0f-200d-2642-fe0f.png', + }, + { + emoji: '🏋‍♀️', + name: 'weight_lifting_woman', + shortcodes: ['woman_lifting_weights'], + tags: ['weight lifter', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cb-fe0f-200d-2640-fe0f.png', + }, + { + emoji: '🚴', + name: 'bicyclist', + shortcodes: ['bicyclist', 'biking', 'person_biking'], + tags: ['bicycle', 'biking', 'cyclist'], + group: 'people & body', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b4.png', + }, + { + emoji: '🚴‍♂', + name: 'biking_man', + shortcodes: ['man_biking'], + tags: ['bicycle', 'biking', 'cyclist', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b4-200d-2642-fe0f.png', + }, + { + emoji: '🚴‍♀', + name: 'biking_woman', + shortcodes: ['woman_biking'], + tags: ['bicycle', 'biking', 'cyclist', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b4-200d-2640-fe0f.png', + }, + { + emoji: '🚵', + name: 'mountain_bicyclist', + shortcodes: ['mountain_bicyclist', 'mountain_biking', 'person_mountain_biking'], + tags: ['bicycle', 'bicyclist', 'bike', 'cyclist', 'mountain'], + group: 'people & body', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b5.png', + }, + { + emoji: '🚵‍♂', + name: 'mountain_biking_man', + shortcodes: ['man_mountain_biking'], + tags: ['bicycle', 'bike', 'cyclist', 'man', 'mountain'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b5-200d-2642-fe0f.png', + }, + { + emoji: '🚵‍♀', + name: 'mountain_biking_woman', + shortcodes: ['woman_mountain_biking'], + tags: ['bicycle', 'bike', 'biking', 'cyclist', 'mountain', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b5-200d-2640-fe0f.png', + }, + { + emoji: '🤸', + name: 'cartwheeling', + shortcodes: ['cartwheeling', 'person_cartwheel'], + tags: ['cartwheel', 'gymnastics'], + group: 'people & body', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f938.png', + }, + { + emoji: '🤸‍♂', + name: 'man_cartwheeling', + shortcodes: ['man_cartwheeling'], + tags: ['cartwheel', 'gymnastics', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f938-200d-2642-fe0f.png', + }, + { + emoji: '🤸‍♀', + name: 'woman_cartwheeling', + shortcodes: ['woman_cartwheeling'], + tags: ['cartwheel', 'gymnastics', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f938-200d-2640-fe0f.png', + }, + { + emoji: '🤼', + name: 'wrestling', + shortcodes: ['people_wrestling', 'wrestlers', 'wrestling'], + tags: ['wrestle', 'wrestler'], + group: 'people & body', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93c.png', + }, + { + emoji: '🤼‍♂', + name: 'men_wrestling', + shortcodes: ['men_wrestling'], + tags: ['men', 'wrestle'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93c-200d-2642-fe0f.png', + }, + { + emoji: '🤼‍♀', + name: 'women_wrestling', + shortcodes: ['women_wrestling'], + tags: ['women', 'wrestle'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93c-200d-2640-fe0f.png', + }, + { + emoji: '🤽', + name: 'water_polo', + shortcodes: ['person_playing_water_polo', 'water_polo'], + tags: ['polo', 'water'], + group: 'people & body', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93d.png', + }, + { + emoji: '🤽‍♂', + name: 'man_playing_water_polo', + shortcodes: ['man_playing_water_polo'], + tags: ['man', 'water polo'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93d-200d-2642-fe0f.png', + }, + { + emoji: '🤽‍♀', + name: 'woman_playing_water_polo', + shortcodes: ['woman_playing_water_polo'], + tags: ['water polo', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93d-200d-2640-fe0f.png', + }, + { + emoji: '🤾', + name: 'handball_person', + shortcodes: ['handball', 'person_playing_handball'], + tags: ['ball', 'handball'], + group: 'people & body', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93e.png', + }, + { + emoji: '🤾‍♂', + name: 'man_playing_handball', + shortcodes: ['man_playing_handball'], + tags: ['handball', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93e-200d-2642-fe0f.png', + }, + { + emoji: '🤾‍♀', + name: 'woman_playing_handball', + shortcodes: ['woman_playing_handball'], + tags: ['handball', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93e-200d-2640-fe0f.png', + }, + { + emoji: '🤹', + name: 'juggling_person', + shortcodes: ['juggler', 'juggling', 'person_juggling'], + tags: ['balance', 'juggle', 'multitask', 'skill'], + group: 'people & body', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f939.png', + }, + { + emoji: '🤹‍♂', + name: 'man_juggling', + shortcodes: ['man_juggling'], + tags: ['juggling', 'man', 'multitask'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f939-200d-2642-fe0f.png', + }, + { + emoji: '🤹‍♀', + name: 'woman_juggling', + shortcodes: ['woman_juggling'], + tags: ['juggling', 'multitask', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f939-200d-2640-fe0f.png', + }, + { + emoji: '🧘', + name: 'lotus_position', + shortcodes: ['person_in_lotus_position'], + tags: ['meditation', 'yoga'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d8.png', + }, + { + emoji: '🧘‍♂', + name: 'lotus_position_man', + shortcodes: ['man_in_lotus_position'], + tags: ['meditation', 'yoga'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d8-200d-2642-fe0f.png', + }, + { + emoji: '🧘‍♀', + name: 'lotus_position_woman', + shortcodes: ['woman_in_lotus_position'], + tags: ['meditation', 'yoga'], + group: 'people & body', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d8-200d-2640-fe0f.png', + }, + { + emoji: '🛀', + name: 'bath', + shortcodes: ['bath', 'person_taking_bath'], + tags: ['bath', 'bathtub'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c0.png', + }, + { + emoji: '🛌', + name: 'sleeping_bed', + shortcodes: ['person_in_bed', 'sleeping_accommodation'], + tags: ['good night', 'hotel', 'sleep'], + group: 'people & body', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6cc.png', + }, + { + emoji: '🧑‍🤝‍🧑', + name: 'people_holding_hands', + shortcodes: ['people_holding_hands'], + tags: ['couple', 'hand', 'hold', 'holding hands', 'person'], + group: 'people & body', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9d1-200d-1f91d-200d-1f9d1.png', + }, + { + emoji: '👭', + name: 'two_women_holding_hands', + shortcodes: ['two_women_holding_hands'], + tags: ['couple', 'hand', 'holding hands', 'women'], + group: 'people & body', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46d.png', + }, + { + emoji: '👫', + name: 'couple', + shortcodes: ['couple'], + tags: ['couple', 'hand', 'hold', 'holding hands', 'man', 'woman'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46b.png', + }, + { + emoji: '👬', + name: 'two_men_holding_hands', + shortcodes: ['two_men_holding_hands'], + tags: ['couple', 'gemini', 'holding hands', 'man', 'men', 'twins', 'zodiac'], + group: 'people & body', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46c.png', + }, + { + emoji: '💏', + name: 'couplekiss', + shortcodes: ['couple_kiss', 'couplekiss'], + tags: ['couple'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48f.png', + }, + { + emoji: '👩‍❤‍💋‍👨', + name: 'couplekiss_man_woman', + shortcodes: ['kiss_mw', 'kiss_wm'], + tags: ['couple', 'kiss', 'man', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2764-fe0f-200d-1f48b-200d-1f468.png', + }, + { + emoji: '👨‍❤‍💋‍👨', + name: 'couplekiss_man_man', + shortcodes: ['kiss_mm'], + tags: ['couple', 'kiss', 'man'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-2764-fe0f-200d-1f48b-200d-1f468.png', + }, + { + emoji: '👩‍❤‍💋‍👩', + name: 'couplekiss_woman_woman', + shortcodes: ['kiss_ww'], + tags: ['couple', 'kiss', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2764-fe0f-200d-1f48b-200d-1f469.png', + }, + { + emoji: '💑', + name: 'couple_with_heart', + shortcodes: ['couple_with_heart'], + tags: ['couple', 'love'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f491.png', + }, + { + emoji: '👩‍❤‍👨', + name: 'couple_with_heart_woman_man', + shortcodes: ['couple_with_heart_mw', 'couple_with_heart_wm'], + tags: ['couple', 'couple with heart', 'love', 'man', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2764-fe0f-200d-1f468.png', + }, + { + emoji: '👨‍❤‍👨', + name: 'couple_with_heart_man_man', + shortcodes: ['couple_with_heart_mm'], + tags: ['couple', 'couple with heart', 'love', 'man'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-2764-fe0f-200d-1f468.png', + }, + { + emoji: '👩‍❤‍👩', + name: 'couple_with_heart_woman_woman', + shortcodes: ['couple_with_heart_ww'], + tags: ['couple', 'couple with heart', 'love', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-2764-fe0f-200d-1f469.png', + }, + { + emoji: '👨‍👩‍👦', + name: 'family_man_woman_boy', + shortcodes: ['family_mwb'], + tags: ['boy', 'family', 'man', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f466.png', + }, + { + emoji: '👨‍👩‍👧', + name: 'family_man_woman_girl', + shortcodes: ['family_mwg'], + tags: ['family', 'girl', 'man', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f467.png', + }, + { + emoji: '👨‍👩‍👧‍👦', + name: 'family_man_woman_girl_boy', + shortcodes: ['family_mwgb'], + tags: ['boy', 'family', 'girl', 'man', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f467-200d-1f466.png', + }, + { + emoji: '👨‍👩‍👦‍👦', + name: 'family_man_woman_boy_boy', + shortcodes: ['family_mwbb'], + tags: ['boy', 'family', 'man', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f466-200d-1f466.png', + }, + { + emoji: '👨‍👩‍👧‍👧', + name: 'family_man_woman_girl_girl', + shortcodes: ['family_mwgg'], + tags: ['family', 'girl', 'man', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f469-200d-1f467-200d-1f467.png', + }, + { + emoji: '👨‍👨‍👦', + name: 'family_man_man_boy', + shortcodes: ['family_mmb'], + tags: ['boy', 'family', 'man'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f466.png', + }, + { + emoji: '👨‍👨‍👧', + name: 'family_man_man_girl', + shortcodes: ['family_mmg'], + tags: ['family', 'girl', 'man'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f467.png', + }, + { + emoji: '👨‍👨‍👧‍👦', + name: 'family_man_man_girl_boy', + shortcodes: ['family_mmgb'], + tags: ['boy', 'family', 'girl', 'man'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f467-200d-1f466.png', + }, + { + emoji: '👨‍👨‍👦‍👦', + name: 'family_man_man_boy_boy', + shortcodes: ['family_mmbb'], + tags: ['boy', 'family', 'man'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f466-200d-1f466.png', + }, + { + emoji: '👨‍👨‍👧‍👧', + name: 'family_man_man_girl_girl', + shortcodes: ['family_mmgg'], + tags: ['family', 'girl', 'man'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f468-200d-1f467-200d-1f467.png', + }, + { + emoji: '👩‍👩‍👦', + name: 'family_woman_woman_boy', + shortcodes: ['family_wwb'], + tags: ['boy', 'family', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f466.png', + }, + { + emoji: '👩‍👩‍👧', + name: 'family_woman_woman_girl', + shortcodes: ['family_wwg'], + tags: ['family', 'girl', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f467.png', + }, + { + emoji: '👩‍👩‍👧‍👦', + name: 'family_woman_woman_girl_boy', + shortcodes: ['family_wwgb'], + tags: ['boy', 'family', 'girl', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f467-200d-1f466.png', + }, + { + emoji: '👩‍👩‍👦‍👦', + name: 'family_woman_woman_boy_boy', + shortcodes: ['family_wwbb'], + tags: ['boy', 'family', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f466-200d-1f466.png', + }, + { + emoji: '👩‍👩‍👧‍👧', + name: 'family_woman_woman_girl_girl', + shortcodes: ['family_wwgg'], + tags: ['family', 'girl', 'woman'], + group: 'people & body', + emoticons: [], + version: 2, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f469-200d-1f467-200d-1f467.png', + }, + { + emoji: '👨‍👦', + name: 'family_man_boy', + shortcodes: ['family_mb'], + tags: ['boy', 'family', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f466.png', + }, + { + emoji: '👨‍👦‍👦', + name: 'family_man_boy_boy', + shortcodes: ['family_mbb'], + tags: ['boy', 'family', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f466-200d-1f466.png', + }, + { + emoji: '👨‍👧', + name: 'family_man_girl', + shortcodes: ['family_mg'], + tags: ['family', 'girl', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f467.png', + }, + { + emoji: '👨‍👧‍👦', + name: 'family_man_girl_boy', + shortcodes: ['family_mgb'], + tags: ['boy', 'family', 'girl', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f467-200d-1f466.png', + }, + { + emoji: '👨‍👧‍👧', + name: 'family_man_girl_girl', + shortcodes: ['family_mgg'], + tags: ['family', 'girl', 'man'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f468-200d-1f467-200d-1f467.png', + }, + { + emoji: '👩‍👦', + name: 'family_woman_boy', + shortcodes: ['family_wb'], + tags: ['boy', 'family', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f466.png', + }, + { + emoji: '👩‍👦‍👦', + name: 'family_woman_boy_boy', + shortcodes: ['family_wbb'], + tags: ['boy', 'family', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f466-200d-1f466.png', + }, + { + emoji: '👩‍👧', + name: 'family_woman_girl', + shortcodes: ['family_wg'], + tags: ['family', 'girl', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f467.png', + }, + { + emoji: '👩‍👧‍👦', + name: 'family_woman_girl_boy', + shortcodes: ['family_wgb'], + tags: ['boy', 'family', 'girl', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f467-200d-1f466.png', + }, + { + emoji: '👩‍👧‍👧', + name: 'family_woman_girl_girl', + shortcodes: ['family_wgg'], + tags: ['family', 'girl', 'woman'], + group: 'people & body', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f469-200d-1f467-200d-1f467.png', + }, + { + emoji: '🗣', + name: 'speaking_head', + shortcodes: ['speaking_head'], + tags: ['face', 'head', 'silhouette', 'speak', 'speaking'], + group: 'people & body', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5e3-fe0f.png', + }, + { + emoji: '👤', + name: 'bust_in_silhouette', + shortcodes: ['bust_in_silhouette'], + tags: ['bust', 'silhouette'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f464.png', + }, + { + emoji: '👥', + name: 'busts_in_silhouette', + shortcodes: ['busts_in_silhouette'], + tags: ['bust', 'silhouette'], + group: 'people & body', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f465.png', + }, + { + emoji: '🫂', + name: 'people_hugging', + shortcodes: ['people_hugging'], + tags: ['goodbye', 'hello', 'hug', 'thanks'], + group: 'people & body', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fac2.png', + }, + { + emoji: '👪', + name: 'family', + shortcodes: ['family'], + tags: ['family'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f46a.png', + }, + { + emoji: '🧑‍🧑‍🧒', + name: 'family_aac', + shortcodes: ['family_aac'], + tags: ['family: adult, adult, child'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧑‍🧑‍🧒‍🧒', + name: 'family_aacc', + shortcodes: ['family_aacc'], + tags: ['family: adult, adult, child, child'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧑‍🧒', + name: 'family_ac', + shortcodes: ['family_ac'], + tags: ['family: adult, child'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '🧑‍🧒‍🧒', + name: 'family_acc', + shortcodes: ['family_acc'], + tags: ['family: adult, child, child'], + group: 'people & body', + emoticons: [], + version: 15.1, + }, + { + emoji: '👣', + name: 'footprints', + shortcodes: ['footprints'], + tags: ['clothing', 'footprint', 'print'], + group: 'people & body', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f463.png', + }, + { + emoji: '🏻', + name: 'tone1', + shortcodes: ['tone1', 'tone_light'], + tags: ['skin tone', 'type 1–2'], + group: 'components', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fb.png', + }, + { + emoji: '🏼', + name: 'tone2', + shortcodes: ['tone2', 'tone_medium_light'], + tags: ['skin tone', 'type 3'], + group: 'components', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fc.png', + }, + { + emoji: '🏽', + name: 'tone3', + shortcodes: ['tone3', 'tone_medium'], + tags: ['skin tone', 'type 4'], + group: 'components', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fd.png', + }, + { + emoji: '🏾', + name: 'tone4', + shortcodes: ['tone4', 'tone_medium_dark'], + tags: ['skin tone', 'type 5'], + group: 'components', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fe.png', + }, + { + emoji: '🏿', + name: 'tone5', + shortcodes: ['tone5', 'tone_dark'], + tags: ['skin tone', 'type 6'], + group: 'components', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ff.png', + }, + { + emoji: '🦰', + name: 'red_hair', + shortcodes: ['red_hair'], + tags: ['ginger', 'redhead'], + group: 'components', + emoticons: [], + version: 11, + }, + { + emoji: '🦱', + name: 'curly_hair', + shortcodes: ['curly_hair'], + tags: ['afro', 'curly', 'ringlets'], + group: 'components', + emoticons: [], + version: 11, + }, + { + emoji: '🦳', + name: 'white_hair', + shortcodes: ['white_hair'], + tags: ['gray', 'hair', 'old', 'white'], + group: 'components', + emoticons: [], + version: 11, + }, + { + emoji: '🦲', + name: 'no_hair', + shortcodes: ['no_hair'], + tags: ['chemotherapy', 'hairless', 'no hair', 'shaven'], + group: 'components', + emoticons: [], + version: 11, + }, + { + emoji: '🐵', + name: 'monkey_face', + shortcodes: ['monkey_face'], + tags: ['face', 'monkey'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f435.png', + }, + { + emoji: '🐒', + name: 'monkey', + shortcodes: ['monkey'], + tags: ['monkey'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f412.png', + }, + { + emoji: '🦍', + name: 'gorilla', + shortcodes: ['gorilla'], + tags: ['gorilla'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98d.png', + }, + { + emoji: '🦧', + name: 'orangutan', + shortcodes: ['orangutan'], + tags: ['ape'], + group: 'animals & nature', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a7.png', + }, + { + emoji: '🐶', + name: 'dog', + shortcodes: ['dog_face'], + tags: ['dog', 'face', 'pet'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f436.png', + }, + { + emoji: '🐕', + name: 'dog2', + shortcodes: ['dog'], + tags: ['pet'], + group: 'animals & nature', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f415.png', + }, + { + emoji: '🦮', + name: 'guide_dog', + shortcodes: ['guide_dog'], + tags: ['accessibility', 'blind', 'guide'], + group: 'animals & nature', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ae.png', + }, + { + emoji: '🐕‍🦺', + name: 'service_dog', + shortcodes: ['service_dog'], + tags: ['accessibility', 'assistance', 'dog', 'service'], + group: 'animals & nature', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f415-200d-1f9ba.png', + }, + { + emoji: '🐩', + name: 'poodle', + shortcodes: ['poodle'], + tags: ['dog'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f429.png', + }, + { + emoji: '🐺', + name: 'wolf', + shortcodes: ['wolf', 'wolf_face'], + tags: ['face'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43a.png', + }, + { + emoji: '🦊', + name: 'fox_face', + shortcodes: ['fox', 'fox_face'], + tags: ['face'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98a.png', + }, + { + emoji: '🦝', + name: 'raccoon', + shortcodes: ['raccoon'], + tags: ['curious', 'sly'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99d.png', + }, + { + emoji: '🐱', + name: 'cat', + shortcodes: ['cat_face'], + tags: ['cat', 'face', 'pet'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f431.png', + }, + { + emoji: '🐈', + name: 'cat2', + shortcodes: ['cat'], + tags: ['pet'], + group: 'animals & nature', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f408.png', + }, + { + emoji: '🐈‍⬛', + name: 'black_cat', + shortcodes: ['black_cat'], + tags: ['black', 'cat', 'unlucky'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f408-200d-2b1b.png', + }, + { + emoji: '🦁', + name: 'lion', + shortcodes: ['lion', 'lion_face'], + tags: ['face', 'leo', 'zodiac'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f981.png', + }, + { + emoji: '🐯', + name: 'tiger', + shortcodes: ['tiger_face'], + tags: ['face', 'tiger'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42f.png', + }, + { + emoji: '🐅', + name: 'tiger2', + shortcodes: ['tiger'], + tags: ['tiger'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f405.png', + }, + { + emoji: '🐆', + name: 'leopard', + shortcodes: ['leopard'], + tags: ['leopard'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f406.png', + }, + { + emoji: '🐴', + name: 'horse', + shortcodes: ['horse_face'], + tags: ['face', 'horse'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f434.png', + }, + { + emoji: '🫎', + name: 'moose', + shortcodes: ['moose'], + tags: ['animal', 'antlers', 'elk', 'mammal'], + group: 'animals & nature', + emoticons: [], + version: 15, + }, + { + emoji: '🫏', + name: 'donkey', + shortcodes: ['donkey'], + tags: ['animal', 'ass', 'burro', 'mammal', 'mule', 'stubborn'], + group: 'animals & nature', + emoticons: [], + version: 15, + }, + { + emoji: '🐎', + name: 'racehorse', + shortcodes: ['horse', 'racehorse'], + tags: ['equestrian', 'racehorse', 'racing'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40e.png', + }, + { + emoji: '🦄', + name: 'unicorn', + shortcodes: ['unicorn', 'unicorn_face'], + tags: ['face'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f984.png', + }, + { + emoji: '🦓', + name: 'zebra', + shortcodes: ['zebra'], + tags: ['stripe'], + group: 'animals & nature', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f993.png', + }, + { + emoji: '🦌', + name: 'deer', + shortcodes: ['deer'], + tags: ['deer'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98c.png', + }, + { + emoji: '🦬', + name: 'bison', + shortcodes: ['bison'], + tags: ['buffalo', 'herd', 'wisent'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ac.png', + }, + { + emoji: '🐮', + name: 'cow', + shortcodes: ['cow_face'], + tags: ['cow', 'face'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42e.png', + }, + { + emoji: '🐂', + name: 'ox', + shortcodes: ['ox'], + tags: ['bull', 'taurus', 'zodiac'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f402.png', + }, + { + emoji: '🐃', + name: 'water_buffalo', + shortcodes: ['water_buffalo'], + tags: ['buffalo', 'water'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f403.png', + }, + { + emoji: '🐄', + name: 'cow2', + shortcodes: ['cow'], + tags: ['cow'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f404.png', + }, + { + emoji: '🐷', + name: 'pig', + shortcodes: ['pig_face'], + tags: ['face', 'pig'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f437.png', + }, + { + emoji: '🐖', + name: 'pig2', + shortcodes: ['pig'], + tags: ['sow'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f416.png', + }, + { + emoji: '🐗', + name: 'boar', + shortcodes: ['boar'], + tags: ['pig'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f417.png', + }, + { + emoji: '🐽', + name: 'pig_nose', + shortcodes: ['pig_nose'], + tags: ['face', 'nose', 'pig'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43d.png', + }, + { + emoji: '🐏', + name: 'ram', + shortcodes: ['ram'], + tags: ['aries', 'male', 'sheep', 'zodiac'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40f.png', + }, + { + emoji: '🐑', + name: 'sheep', + shortcodes: ['ewe', 'sheep'], + tags: ['female', 'sheep'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f411.png', + }, + { + emoji: '🐐', + name: 'goat', + shortcodes: ['goat'], + tags: ['capricorn', 'zodiac'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f410.png', + }, + { + emoji: '🐪', + name: 'dromedary_camel', + shortcodes: ['dromedary_camel'], + tags: ['dromedary', 'hump'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42a.png', + }, + { + emoji: '🐫', + name: 'camel', + shortcodes: ['camel'], + tags: ['bactrian', 'camel', 'hump'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42b.png', + }, + { + emoji: '🦙', + name: 'llama', + shortcodes: ['llama'], + tags: ['alpaca', 'guanaco', 'vicuña', 'wool'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f999.png', + }, + { + emoji: '🦒', + name: 'giraffe', + shortcodes: ['giraffe'], + tags: ['spots'], + group: 'animals & nature', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f992.png', + }, + { + emoji: '🐘', + name: 'elephant', + shortcodes: ['elephant'], + tags: ['elephant'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f418.png', + }, + { + emoji: '🦣', + name: 'mammoth', + shortcodes: ['mammoth'], + tags: ['extinction', 'large', 'tusk', 'woolly'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a3.png', + }, + { + emoji: '🦏', + name: 'rhinoceros', + shortcodes: ['rhino', 'rhinoceros'], + tags: ['rhinoceros'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98f.png', + }, + { + emoji: '🦛', + name: 'hippopotamus', + shortcodes: ['hippo'], + tags: ['hippo'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99b.png', + }, + { + emoji: '🐭', + name: 'mouse', + shortcodes: ['mouse_face'], + tags: ['face', 'mouse'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42d.png', + }, + { + emoji: '🐁', + name: 'mouse2', + shortcodes: ['mouse'], + tags: ['mouse'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f401.png', + }, + { + emoji: '🐀', + name: 'rat', + shortcodes: ['rat'], + tags: ['rat'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f400.png', + }, + { + emoji: '🐹', + name: 'hamster', + shortcodes: ['hamster', 'hamster_face'], + tags: ['face', 'pet'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f439.png', + }, + { + emoji: '🐰', + name: 'rabbit', + shortcodes: ['rabbit_face'], + tags: ['bunny', 'face', 'pet', 'rabbit'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f430.png', + }, + { + emoji: '🐇', + name: 'rabbit2', + shortcodes: ['rabbit'], + tags: ['bunny', 'pet'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f407.png', + }, + { + emoji: '🐿', + name: 'chipmunk', + shortcodes: ['chipmunk'], + tags: ['squirrel'], + group: 'animals & nature', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43f-fe0f.png', + }, + { + emoji: '🦫', + name: 'beaver', + shortcodes: ['beaver'], + tags: ['dam'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ab.png', + }, + { + emoji: '🦔', + name: 'hedgehog', + shortcodes: ['hedgehog'], + tags: ['spiny'], + group: 'animals & nature', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f994.png', + }, + { + emoji: '🦇', + name: 'bat', + shortcodes: ['bat'], + tags: ['vampire'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f987.png', + }, + { + emoji: '🐻', + name: 'bear', + shortcodes: ['bear', 'bear_face'], + tags: ['face'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43b.png', + }, + { + emoji: '🐻‍❄', + name: 'polar_bear', + shortcodes: ['polar_bear', 'polar_bear_face'], + tags: ['arctic', 'bear', 'white'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43b-200d-2744-fe0f.png', + }, + { + emoji: '🐨', + name: 'koala', + shortcodes: ['koala', 'koala_face'], + tags: ['face', 'marsupial'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f428.png', + }, + { + emoji: '🐼', + name: 'panda_face', + shortcodes: ['panda', 'panda_face'], + tags: ['face'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43c.png', + }, + { + emoji: '🦥', + name: 'sloth', + shortcodes: ['sloth'], + tags: ['lazy', 'slow'], + group: 'animals & nature', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a5.png', + }, + { + emoji: '🦦', + name: 'otter', + shortcodes: ['otter'], + tags: ['fishing', 'playful'], + group: 'animals & nature', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a6.png', + }, + { + emoji: '🦨', + name: 'skunk', + shortcodes: ['skunk'], + tags: ['stink'], + group: 'animals & nature', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a8.png', + }, + { + emoji: '🦘', + name: 'kangaroo', + shortcodes: ['kangaroo'], + tags: ['joey', 'jump', 'marsupial'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f998.png', + }, + { + emoji: '🦡', + name: 'badger', + shortcodes: ['badger'], + tags: ['honey badger', 'pester'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a1.png', + }, + { + emoji: '🐾', + name: 'feet', + shortcodes: ['paw_prints'], + tags: ['feet', 'paw', 'print'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f43e.png', + }, + { + emoji: '🦃', + name: 'turkey', + shortcodes: ['turkey'], + tags: ['bird'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f983.png', + }, + { + emoji: '🐔', + name: 'chicken', + shortcodes: ['chicken', 'chicken_face'], + tags: ['bird'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f414.png', + }, + { + emoji: '🐓', + name: 'rooster', + shortcodes: ['rooster'], + tags: ['bird'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f413.png', + }, + { + emoji: '🐣', + name: 'hatching_chick', + shortcodes: ['hatching_chick'], + tags: ['baby', 'bird', 'chick', 'hatching'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f423.png', + }, + { + emoji: '🐤', + name: 'baby_chick', + shortcodes: ['baby_chick'], + tags: ['baby', 'bird', 'chick'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f424.png', + }, + { + emoji: '🐥', + name: 'hatched_chick', + shortcodes: ['hatched_chick'], + tags: ['baby', 'bird', 'chick'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f425.png', + }, + { + emoji: '🐦', + name: 'bird', + shortcodes: ['bird', 'bird_face'], + tags: ['bird'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f426.png', + }, + { + emoji: '🐧', + name: 'penguin', + shortcodes: ['penguin', 'penguin_face'], + tags: ['bird'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f427.png', + }, + { + emoji: '🕊', + name: 'dove', + shortcodes: ['dove'], + tags: ['bird', 'fly', 'peace'], + group: 'animals & nature', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54a-fe0f.png', + }, + { + emoji: '🦅', + name: 'eagle', + shortcodes: ['eagle'], + tags: ['bird'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f985.png', + }, + { + emoji: '🦆', + name: 'duck', + shortcodes: ['duck'], + tags: ['bird'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f986.png', + }, + { + emoji: '🦢', + name: 'swan', + shortcodes: ['swan'], + tags: ['bird', 'cygnet', 'ugly duckling'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a2.png', + }, + { + emoji: '🦉', + name: 'owl', + shortcodes: ['owl'], + tags: ['bird', 'wise'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f989.png', + }, + { + emoji: '🦤', + name: 'dodo', + shortcodes: ['dodo'], + tags: ['extinction', 'large', 'mauritius'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a4.png', + }, + { + emoji: '🪶', + name: 'feather', + shortcodes: ['feather'], + tags: ['bird', 'flight', 'light', 'plumage'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab6.png', + }, + { + emoji: '🦩', + name: 'flamingo', + shortcodes: ['flamingo'], + tags: ['flamboyant', 'tropical'], + group: 'animals & nature', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a9.png', + }, + { + emoji: '🦚', + name: 'peacock', + shortcodes: ['peacock'], + tags: ['bird', 'ostentatious', 'peahen', 'proud'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99a.png', + }, + { + emoji: '🦜', + name: 'parrot', + shortcodes: ['parrot'], + tags: ['bird', 'pirate', 'talk'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99c.png', + }, + { + emoji: '🪽', + name: 'wing', + shortcodes: ['wing'], + tags: ['angelic', 'aviation', 'bird', 'flying', 'mythology'], + group: 'animals & nature', + emoticons: [], + version: 15, + }, + { + emoji: '🐦‍⬛', + name: 'black_bird', + shortcodes: ['black_bird'], + tags: ['bird', 'black', 'crow', 'raven', 'rook'], + group: 'animals & nature', + emoticons: [], + version: 15, + }, + { + emoji: '🪿', + name: 'goose', + shortcodes: ['goose'], + tags: ['bird', 'fowl', 'honk', 'silly'], + group: 'animals & nature', + emoticons: [], + version: 15, + }, + { + emoji: '🐦‍🔥', + name: 'phoenix', + shortcodes: ['phoenix'], + tags: ['fantasy', 'firebird', 'rebirth', 'reincarnation'], + group: 'animals & nature', + emoticons: [], + version: 15.1, + }, + { + emoji: '🐸', + name: 'frog', + shortcodes: ['frog', 'frog_face'], + tags: ['face'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f438.png', + }, + { + emoji: '🐊', + name: 'crocodile', + shortcodes: ['crocodile'], + tags: ['crocodile'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40a.png', + }, + { + emoji: '🐢', + name: 'turtle', + shortcodes: ['turtle'], + tags: ['terrapin', 'tortoise'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f422.png', + }, + { + emoji: '🦎', + name: 'lizard', + shortcodes: ['lizard'], + tags: ['reptile'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98e.png', + }, + { + emoji: '🐍', + name: 'snake', + shortcodes: ['snake'], + tags: ['bearer', 'ophiuchus', 'serpent', 'zodiac'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40d.png', + }, + { + emoji: '🐲', + name: 'dragon_face', + shortcodes: ['dragon_face'], + tags: ['dragon', 'face', 'fairy tale'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f432.png', + }, + { + emoji: '🐉', + name: 'dragon', + shortcodes: ['dragon'], + tags: ['fairy tale'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f409.png', + }, + { + emoji: '🦕', + name: 'sauropod', + shortcodes: ['sauropod'], + tags: ['brachiosaurus', 'brontosaurus', 'diplodocus'], + group: 'animals & nature', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f995.png', + }, + { + emoji: '🦖', + name: 't-rex', + shortcodes: ['t-rex', 'trex'], + tags: ['t-rex', 'tyrannosaurus rex'], + group: 'animals & nature', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f996.png', + }, + { + emoji: '🐳', + name: 'whale', + shortcodes: ['spouting_whale'], + tags: ['face', 'spouting', 'whale'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f433.png', + }, + { + emoji: '🐋', + name: 'whale2', + shortcodes: ['whale'], + tags: ['whale'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40b.png', + }, + { + emoji: '🐬', + name: 'dolphin', + shortcodes: ['dolphin'], + tags: ['flipper'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f42c.png', + }, + { + emoji: '🦭', + name: 'seal', + shortcodes: ['seal'], + tags: ['sea lion'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ad.png', + }, + { + emoji: '🐟', + name: 'fish', + shortcodes: ['fish'], + tags: ['pisces', 'zodiac'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41f.png', + }, + { + emoji: '🐠', + name: 'tropical_fish', + shortcodes: ['tropical_fish'], + tags: ['fish', 'tropical'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f420.png', + }, + { + emoji: '🐡', + name: 'blowfish', + shortcodes: ['blowfish'], + tags: ['fish'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f421.png', + }, + { + emoji: '🦈', + name: 'shark', + shortcodes: ['shark'], + tags: ['fish'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f988.png', + }, + { + emoji: '🐙', + name: 'octopus', + shortcodes: ['octopus'], + tags: ['octopus'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f419.png', + }, + { + emoji: '🐚', + name: 'shell', + shortcodes: ['shell'], + tags: ['shell', 'spiral'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41a.png', + }, + { + emoji: '🪸', + name: 'coral', + shortcodes: ['coral'], + tags: ['ocean', 'reef'], + group: 'animals & nature', + emoticons: [], + version: 14, + }, + { + emoji: '🪼', + name: 'jellyfish', + shortcodes: ['jellyfish'], + tags: ['burn', 'invertebrate', 'jelly', 'marine', 'ouch', 'stinger'], + group: 'animals & nature', + emoticons: [], + version: 15, + }, + { + emoji: '🐌', + name: 'snail', + shortcodes: ['snail'], + tags: ['snail'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f40c.png', + }, + { + emoji: '🦋', + name: 'butterfly', + shortcodes: ['butterfly'], + tags: ['insect', 'pretty'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f98b.png', + }, + { + emoji: '🐛', + name: 'bug', + shortcodes: ['bug'], + tags: ['insect'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41b.png', + }, + { + emoji: '🐜', + name: 'ant', + shortcodes: ['ant'], + tags: ['insect'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41c.png', + }, + { + emoji: '🐝', + name: 'bee', + shortcodes: ['bee'], + tags: ['bee', 'insect'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41d.png', + }, + { + emoji: '🪲', + name: 'beetle', + shortcodes: ['beetle'], + tags: ['bug', 'insect'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab2.png', + }, + { + emoji: '🐞', + name: 'lady_beetle', + shortcodes: ['lady_beetle'], + tags: ['beetle', 'insect', 'ladybird', 'ladybug'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f41e.png', + }, + { + emoji: '🦗', + name: 'cricket', + shortcodes: ['cricket'], + tags: ['grasshopper'], + group: 'animals & nature', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f997.png', + }, + { + emoji: '🪳', + name: 'cockroach', + shortcodes: ['cockroach'], + tags: ['insect', 'pest', 'roach'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab3.png', + }, + { + emoji: '🕷', + name: 'spider', + shortcodes: ['spider'], + tags: ['insect'], + group: 'animals & nature', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f577-fe0f.png', + }, + { + emoji: '🕸', + name: 'spider_web', + shortcodes: ['spider_web'], + tags: ['spider', 'web'], + group: 'animals & nature', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f578-fe0f.png', + }, + { + emoji: '🦂', + name: 'scorpion', + shortcodes: ['scorpion'], + tags: ['scorpio', 'zodiac'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f982.png', + }, + { + emoji: '🦟', + name: 'mosquito', + shortcodes: ['mosquito'], + tags: ['disease', 'fever', 'malaria', 'pest', 'virus'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99f.png', + }, + { + emoji: '🪰', + name: 'fly', + shortcodes: ['fly'], + tags: ['disease', 'maggot', 'pest', 'rotting'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab0.png', + }, + { + emoji: '🪱', + name: 'worm', + shortcodes: ['worm'], + tags: ['annelid', 'earthworm', 'parasite'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab1.png', + }, + { + emoji: '🦠', + name: 'microbe', + shortcodes: ['microbe'], + tags: ['amoeba', 'bacteria', 'virus'], + group: 'animals & nature', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9a0.png', + }, + { + emoji: '💐', + name: 'bouquet', + shortcodes: ['bouquet'], + tags: ['flower'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f490.png', + }, + { + emoji: '🌸', + name: 'cherry_blossom', + shortcodes: ['cherry_blossom'], + tags: ['blossom', 'cherry', 'flower'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f338.png', + }, + { + emoji: '💮', + name: 'white_flower', + shortcodes: ['white_flower'], + tags: ['flower'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ae.png', + }, + { + emoji: '🪷', + name: 'lotus', + shortcodes: ['lotus'], + tags: ['buddhism', 'flower', 'hinduism', 'purity'], + group: 'animals & nature', + emoticons: [], + version: 14, + }, + { + emoji: '🏵', + name: 'rosette', + shortcodes: ['rosette'], + tags: ['plant'], + group: 'animals & nature', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f5-fe0f.png', + }, + { + emoji: '🌹', + name: 'rose', + shortcodes: ['rose'], + tags: ['flower'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f339.png', + }, + { + emoji: '🥀', + name: 'wilted_flower', + shortcodes: ['wilted_flower'], + tags: ['flower', 'wilted'], + group: 'animals & nature', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f940.png', + }, + { + emoji: '🌺', + name: 'hibiscus', + shortcodes: ['hibiscus'], + tags: ['flower'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33a.png', + }, + { + emoji: '🌻', + name: 'sunflower', + shortcodes: ['sunflower'], + tags: ['flower', 'sun'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33b.png', + }, + { + emoji: '🌼', + name: 'blossom', + shortcodes: ['blossom'], + tags: ['flower'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33c.png', + }, + { + emoji: '🌷', + name: 'tulip', + shortcodes: ['tulip'], + tags: ['flower'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f337.png', + }, + { + emoji: '🪻', + name: 'hyacinth', + shortcodes: ['hyacinth'], + tags: ['bluebonnet', 'flower', 'lavender', 'lupine', 'snapdragon'], + group: 'animals & nature', + emoticons: [], + version: 15, + }, + { + emoji: '🌱', + name: 'seedling', + shortcodes: ['seedling'], + tags: ['young'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f331.png', + }, + { + emoji: '🪴', + name: 'potted_plant', + shortcodes: ['potted_plant'], + tags: ['boring', 'grow', 'house', 'nurturing', 'plant', 'useless'], + group: 'animals & nature', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab4.png', + }, + { + emoji: '🌲', + name: 'evergreen_tree', + shortcodes: ['evergreen_tree'], + tags: ['tree'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f332.png', + }, + { + emoji: '🌳', + name: 'deciduous_tree', + shortcodes: ['deciduous_tree'], + tags: ['deciduous', 'shedding', 'tree'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f333.png', + }, + { + emoji: '🌴', + name: 'palm_tree', + shortcodes: ['palm_tree'], + tags: ['palm', 'tree'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f334.png', + }, + { + emoji: '🌵', + name: 'cactus', + shortcodes: ['cactus'], + tags: ['plant'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f335.png', + }, + { + emoji: '🌾', + name: 'ear_of_rice', + shortcodes: ['ear_of_rice', 'sheaf_of_rice'], + tags: ['ear', 'grain', 'rice'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33e.png', + }, + { + emoji: '🌿', + name: 'herb', + shortcodes: ['herb'], + tags: ['leaf'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33f.png', + }, + { + emoji: '☘', + name: 'shamrock', + shortcodes: ['shamrock'], + tags: ['plant'], + group: 'animals & nature', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2618-fe0f.png', + }, + { + emoji: '🍀', + name: 'four_leaf_clover', + shortcodes: ['four_leaf_clover'], + tags: ['4', 'clover', 'four', 'four-leaf clover', 'leaf'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f340.png', + }, + { + emoji: '🍁', + name: 'maple_leaf', + shortcodes: ['maple_leaf'], + tags: ['falling', 'leaf', 'maple'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f341.png', + }, + { + emoji: '🍂', + name: 'fallen_leaf', + shortcodes: ['fallen_leaf'], + tags: ['falling', 'leaf'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f342.png', + }, + { + emoji: '🍃', + name: 'leaves', + shortcodes: ['leaves'], + tags: ['blow', 'flutter', 'leaf', 'wind'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f343.png', + }, + { + emoji: '🪹', + name: 'empty_nest', + shortcodes: ['empty_nest', 'nest'], + tags: ['nesting'], + group: 'animals & nature', + emoticons: [], + version: 14, + }, + { + emoji: '🪺', + name: 'nest_with_eggs', + shortcodes: ['nest_with_eggs'], + tags: ['nesting'], + group: 'animals & nature', + emoticons: [], + version: 14, + }, + { + emoji: '🍄', + name: 'mushroom', + shortcodes: ['mushroom'], + tags: ['toadstool'], + group: 'animals & nature', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f344.png', + }, + { + emoji: '🍇', + name: 'grapes', + shortcodes: ['grapes'], + tags: ['fruit', 'grape'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f347.png', + }, + { + emoji: '🍈', + name: 'melon', + shortcodes: ['melon'], + tags: ['fruit'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f348.png', + }, + { + emoji: '🍉', + name: 'watermelon', + shortcodes: ['watermelon'], + tags: ['fruit'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f349.png', + }, + { + emoji: '🍊', + name: 'mandarin', + shortcodes: ['orange', 'tangerine'], + tags: ['fruit', 'orange'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34a.png', + }, + { + emoji: '🍋', + name: 'lemon', + shortcodes: ['lemon'], + tags: ['citrus', 'fruit'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34b.png', + }, + { + emoji: '🍋‍🟩', + name: 'lime', + shortcodes: ['lime'], + tags: ['citrus', 'fruit', 'tropical'], + group: 'food & drink', + emoticons: [], + version: 15.1, + }, + { + emoji: '🍌', + name: 'banana', + shortcodes: ['banana'], + tags: ['fruit'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34c.png', + }, + { + emoji: '🍍', + name: 'pineapple', + shortcodes: ['pineapple'], + tags: ['fruit'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34d.png', + }, + { + emoji: '🥭', + name: 'mango', + shortcodes: ['mango'], + tags: ['fruit', 'tropical'], + group: 'food & drink', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96d.png', + }, + { + emoji: '🍎', + name: 'apple', + shortcodes: ['apple', 'red_apple'], + tags: ['apple', 'fruit', 'red'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34e.png', + }, + { + emoji: '🍏', + name: 'green_apple', + shortcodes: ['green_apple'], + tags: ['apple', 'fruit', 'green'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f34f.png', + }, + { + emoji: '🍐', + name: 'pear', + shortcodes: ['pear'], + tags: ['fruit'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f350.png', + }, + { + emoji: '🍑', + name: 'peach', + shortcodes: ['peach'], + tags: ['fruit'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f351.png', + }, + { + emoji: '🍒', + name: 'cherries', + shortcodes: ['cherries'], + tags: ['berries', 'cherry', 'fruit', 'red'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f352.png', + }, + { + emoji: '🍓', + name: 'strawberry', + shortcodes: ['strawberry'], + tags: ['berry', 'fruit'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f353.png', + }, + { + emoji: '🫐', + name: 'blueberries', + shortcodes: ['blueberries'], + tags: ['berry', 'bilberry', 'blue', 'blueberry'], + group: 'food & drink', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad0.png', + }, + { + emoji: '🥝', + name: 'kiwi_fruit', + shortcodes: ['kiwi'], + tags: ['food', 'fruit', 'kiwi'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95d.png', + }, + { + emoji: '🍅', + name: 'tomato', + shortcodes: ['tomato'], + tags: ['fruit', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f345.png', + }, + { + emoji: '🫒', + name: 'olive', + shortcodes: ['olive'], + tags: ['food'], + group: 'food & drink', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad2.png', + }, + { + emoji: '🥥', + name: 'coconut', + shortcodes: ['coconut'], + tags: ['palm', 'piña colada'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f965.png', + }, + { + emoji: '🥑', + name: 'avocado', + shortcodes: ['avocado'], + tags: ['food', 'fruit'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f951.png', + }, + { + emoji: '🍆', + name: 'eggplant', + shortcodes: ['eggplant'], + tags: ['aubergine', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f346.png', + }, + { + emoji: '🥔', + name: 'potato', + shortcodes: ['potato'], + tags: ['food', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f954.png', + }, + { + emoji: '🥕', + name: 'carrot', + shortcodes: ['carrot'], + tags: ['food', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f955.png', + }, + { + emoji: '🌽', + name: 'corn', + shortcodes: ['corn', 'ear_of_corn'], + tags: ['corn', 'ear', 'maize', 'maze'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f33d.png', + }, + { + emoji: '🌶', + name: 'hot_pepper', + shortcodes: ['hot_pepper'], + tags: ['hot', 'pepper'], + group: 'food & drink', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f336-fe0f.png', + }, + { + emoji: '🫑', + name: 'bell_pepper', + shortcodes: ['bell_pepper'], + tags: ['capsicum', 'pepper', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad1.png', + }, + { + emoji: '🥒', + name: 'cucumber', + shortcodes: ['cucumber'], + tags: ['food', 'pickle', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f952.png', + }, + { + emoji: '🥬', + name: 'leafy_green', + shortcodes: ['leafy_green'], + tags: ['bok choy', 'cabbage', 'kale', 'lettuce'], + group: 'food & drink', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96c.png', + }, + { + emoji: '🥦', + name: 'broccoli', + shortcodes: ['broccoli'], + tags: ['wild cabbage'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f966.png', + }, + { + emoji: '🧄', + name: 'garlic', + shortcodes: ['garlic'], + tags: ['flavoring'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c4.png', + }, + { + emoji: '🧅', + name: 'onion', + shortcodes: ['onion'], + tags: ['flavoring'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c5.png', + }, + { + emoji: '🥜', + name: 'peanuts', + shortcodes: ['peanuts'], + tags: ['food', 'nut', 'peanut', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95c.png', + }, + { + emoji: '🫘', + name: 'beans', + shortcodes: ['beans'], + tags: ['food', 'kidney', 'legume'], + group: 'food & drink', + emoticons: [], + version: 14, + }, + { + emoji: '🌰', + name: 'chestnut', + shortcodes: ['chestnut'], + tags: ['plant'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f330.png', + }, + { + emoji: '🫚', + name: 'ginger_root', + shortcodes: ['ginger'], + tags: ['beer', 'root', 'spice'], + group: 'food & drink', + emoticons: [], + version: 15, + }, + { + emoji: '🫛', + name: 'pea_pod', + shortcodes: ['pea'], + tags: ['beans', 'edamame', 'legume', 'pea', 'pod', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 15, + }, + { + emoji: '🍄‍🟫', + name: 'brown_mushroom', + shortcodes: ['brown_mushroom'], + tags: ['food', 'fungus', 'nature', 'vegetable'], + group: 'food & drink', + emoticons: [], + version: 15.1, + }, + { + emoji: '🍞', + name: 'bread', + shortcodes: ['bread'], + tags: ['loaf'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35e.png', + }, + { + emoji: '🥐', + name: 'croissant', + shortcodes: ['croissant'], + tags: ['bread', 'breakfast', 'food', 'french', 'roll'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f950.png', + }, + { + emoji: '🥖', + name: 'baguette_bread', + shortcodes: ['baguette_bread'], + tags: ['baguette', 'bread', 'food', 'french'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f956.png', + }, + { + emoji: '🫓', + name: 'flatbread', + shortcodes: ['flatbread'], + tags: ['arepa', 'lavash', 'naan', 'pita'], + group: 'food & drink', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad3.png', + }, + { + emoji: '🥨', + name: 'pretzel', + shortcodes: ['pretzel'], + tags: ['twisted'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f968.png', + }, + { + emoji: '🥯', + name: 'bagel', + shortcodes: ['bagel'], + tags: ['bakery', 'breakfast', 'schmear'], + group: 'food & drink', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96f.png', + }, + { + emoji: '🥞', + name: 'pancakes', + shortcodes: ['pancakes'], + tags: ['breakfast', 'crêpe', 'food', 'hotcake', 'pancake'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95e.png', + }, + { + emoji: '🧇', + name: 'waffle', + shortcodes: ['waffle'], + tags: ['breakfast', 'indecisive', 'iron'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c7.png', + }, + { + emoji: '🧀', + name: 'cheese', + shortcodes: ['cheese'], + tags: ['cheese'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c0.png', + }, + { + emoji: '🍖', + name: 'meat_on_bone', + shortcodes: ['meat_on_bone'], + tags: ['bone', 'meat'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f356.png', + }, + { + emoji: '🍗', + name: 'poultry_leg', + shortcodes: ['poultry_leg'], + tags: ['bone', 'chicken', 'drumstick', 'leg', 'poultry'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f357.png', + }, + { + emoji: '🥩', + name: 'cut_of_meat', + shortcodes: ['cut_of_meat'], + tags: ['chop', 'lambchop', 'porkchop', 'steak'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f969.png', + }, + { + emoji: '🥓', + name: 'bacon', + shortcodes: ['bacon'], + tags: ['breakfast', 'food', 'meat'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f953.png', + }, + { + emoji: '🍔', + name: 'hamburger', + shortcodes: ['hamburger'], + tags: ['burger'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f354.png', + }, + { + emoji: '🍟', + name: 'fries', + shortcodes: ['french_fries', 'fries'], + tags: ['french', 'fries'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35f.png', + }, + { + emoji: '🍕', + name: 'pizza', + shortcodes: ['pizza'], + tags: ['cheese', 'slice'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f355.png', + }, + { + emoji: '🌭', + name: 'hotdog', + shortcodes: ['hotdog'], + tags: ['frankfurter', 'hotdog', 'sausage'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32d.png', + }, + { + emoji: '🥪', + name: 'sandwich', + shortcodes: ['sandwich'], + tags: ['bread'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96a.png', + }, + { + emoji: '🌮', + name: 'taco', + shortcodes: ['taco'], + tags: ['mexican'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32e.png', + }, + { + emoji: '🌯', + name: 'burrito', + shortcodes: ['burrito'], + tags: ['mexican', 'wrap'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32f.png', + }, + { + emoji: '🫔', + name: 'tamale', + shortcodes: ['tamale'], + tags: ['mexican', 'wrapped'], + group: 'food & drink', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad4.png', + }, + { + emoji: '🥙', + name: 'stuffed_flatbread', + shortcodes: ['stuffed_flatbread'], + tags: ['falafel', 'flatbread', 'food', 'gyro', 'kebab', 'stuffed'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f959.png', + }, + { + emoji: '🧆', + name: 'falafel', + shortcodes: ['falafel'], + tags: ['chickpea', 'meatball'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c6.png', + }, + { + emoji: '🥚', + name: 'egg', + shortcodes: ['egg'], + tags: ['breakfast', 'food'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95a.png', + }, + { + emoji: '🍳', + name: 'fried_egg', + shortcodes: ['cooking', 'fried_egg'], + tags: ['breakfast', 'egg', 'frying', 'pan'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f373.png', + }, + { + emoji: '🥘', + name: 'shallow_pan_of_food', + shortcodes: ['shallow_pan_of_food'], + tags: ['casserole', 'food', 'paella', 'pan', 'shallow'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f958.png', + }, + { + emoji: '🍲', + name: 'stew', + shortcodes: ['pot_of_food', 'stew'], + tags: ['pot', 'stew'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f372.png', + }, + { + emoji: '🫕', + name: 'fondue', + shortcodes: ['fondue'], + tags: ['cheese', 'chocolate', 'melted', 'pot', 'swiss'], + group: 'food & drink', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad5.png', + }, + { + emoji: '🥣', + name: 'bowl_with_spoon', + shortcodes: ['bowl_with_spoon'], + tags: ['breakfast', 'cereal', 'congee'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f963.png', + }, + { + emoji: '🥗', + name: 'green_salad', + shortcodes: ['green_salad', 'salad'], + tags: ['food', 'green', 'salad'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f957.png', + }, + { + emoji: '🍿', + name: 'popcorn', + shortcodes: ['popcorn'], + tags: ['popcorn'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37f.png', + }, + { + emoji: '🧈', + name: 'butter', + shortcodes: ['butter'], + tags: ['dairy'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c8.png', + }, + { + emoji: '🧂', + name: 'salt', + shortcodes: ['salt'], + tags: ['condiment', 'shaker'], + group: 'food & drink', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c2.png', + }, + { + emoji: '🥫', + name: 'canned_food', + shortcodes: ['canned_food'], + tags: ['can'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96b.png', + }, + { + emoji: '🍱', + name: 'bento', + shortcodes: ['bento', 'bento_box'], + tags: ['bento', 'box'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f371.png', + }, + { + emoji: '🍘', + name: 'rice_cracker', + shortcodes: ['rice_cracker'], + tags: ['cracker', 'rice'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f358.png', + }, + { + emoji: '🍙', + name: 'rice_ball', + shortcodes: ['rice_ball'], + tags: ['ball', 'japanese', 'rice'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f359.png', + }, + { + emoji: '🍚', + name: 'rice', + shortcodes: ['cooked_rice', 'rice'], + tags: ['cooked', 'rice'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35a.png', + }, + { + emoji: '🍛', + name: 'curry', + shortcodes: ['curry', 'curry_rice'], + tags: ['curry', 'rice'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35b.png', + }, + { + emoji: '🍜', + name: 'ramen', + shortcodes: ['ramen', 'steaming_bowl'], + tags: ['bowl', 'noodle', 'ramen', 'steaming'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35c.png', + }, + { + emoji: '🍝', + name: 'spaghetti', + shortcodes: ['spaghetti'], + tags: ['pasta'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f35d.png', + }, + { + emoji: '🍠', + name: 'sweet_potato', + shortcodes: ['sweet_potato'], + tags: ['potato', 'roasted', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f360.png', + }, + { + emoji: '🍢', + name: 'oden', + shortcodes: ['oden'], + tags: ['kebab', 'seafood', 'skewer', 'stick'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f362.png', + }, + { + emoji: '🍣', + name: 'sushi', + shortcodes: ['sushi'], + tags: ['sushi'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f363.png', + }, + { + emoji: '🍤', + name: 'fried_shrimp', + shortcodes: ['fried_shrimp'], + tags: ['fried', 'prawn', 'shrimp', 'tempura'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f364.png', + }, + { + emoji: '🍥', + name: 'fish_cake', + shortcodes: ['fish_cake'], + tags: ['cake', 'fish', 'pastry', 'swirl'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f365.png', + }, + { + emoji: '🥮', + name: 'moon_cake', + shortcodes: ['moon_cake'], + tags: ['autumn', 'festival', 'yuèbǐng'], + group: 'food & drink', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f96e.png', + }, + { + emoji: '🍡', + name: 'dango', + shortcodes: ['dango'], + tags: ['dessert', 'japanese', 'skewer', 'stick', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f361.png', + }, + { + emoji: '🥟', + name: 'dumpling', + shortcodes: ['dumpling'], + tags: ['empanada', 'gyōza', 'jiaozi', 'pierogi', 'potsticker'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95f.png', + }, + { + emoji: '🥠', + name: 'fortune_cookie', + shortcodes: ['fortune_cookie'], + tags: ['prophecy'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f960.png', + }, + { + emoji: '🥡', + name: 'takeout_box', + shortcodes: ['takeout_box'], + tags: ['oyster pail'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f961.png', + }, + { + emoji: '🦀', + name: 'crab', + shortcodes: ['crab'], + tags: ['cancer', 'zodiac'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f980.png', + }, + { + emoji: '🦞', + name: 'lobster', + shortcodes: ['lobster'], + tags: ['bisque', 'claws', 'seafood'], + group: 'food & drink', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f99e.png', + }, + { + emoji: '🦐', + name: 'shrimp', + shortcodes: ['shrimp'], + tags: ['food', 'shellfish', 'small'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f990.png', + }, + { + emoji: '🦑', + name: 'squid', + shortcodes: ['squid'], + tags: ['food', 'molusc'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f991.png', + }, + { + emoji: '🦪', + name: 'oyster', + shortcodes: ['oyster'], + tags: ['diving', 'pearl'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9aa.png', + }, + { + emoji: '🍦', + name: 'icecream', + shortcodes: ['icecream', 'soft_serve'], + tags: ['cream', 'dessert', 'ice', 'icecream', 'soft', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f366.png', + }, + { + emoji: '🍧', + name: 'shaved_ice', + shortcodes: ['shaved_ice'], + tags: ['dessert', 'ice', 'shaved', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f367.png', + }, + { + emoji: '🍨', + name: 'ice_cream', + shortcodes: ['ice_cream'], + tags: ['cream', 'dessert', 'ice', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f368.png', + }, + { + emoji: '🍩', + name: 'doughnut', + shortcodes: ['doughnut'], + tags: ['breakfast', 'dessert', 'donut', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f369.png', + }, + { + emoji: '🍪', + name: 'cookie', + shortcodes: ['cookie'], + tags: ['dessert', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36a.png', + }, + { + emoji: '🎂', + name: 'birthday', + shortcodes: ['birthday', 'birthday_cake'], + tags: ['birthday', 'cake', 'celebration', 'dessert', 'pastry', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f382.png', + }, + { + emoji: '🍰', + name: 'cake', + shortcodes: ['cake', 'shortcake'], + tags: ['cake', 'dessert', 'pastry', 'slice', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f370.png', + }, + { + emoji: '🧁', + name: 'cupcake', + shortcodes: ['cupcake'], + tags: ['bakery', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c1.png', + }, + { + emoji: '🥧', + name: 'pie', + shortcodes: ['pie'], + tags: ['filling', 'pastry'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f967.png', + }, + { + emoji: '🍫', + name: 'chocolate_bar', + shortcodes: ['chocolate_bar'], + tags: ['bar', 'chocolate', 'dessert', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36b.png', + }, + { + emoji: '🍬', + name: 'candy', + shortcodes: ['candy'], + tags: ['dessert', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36c.png', + }, + { + emoji: '🍭', + name: 'lollipop', + shortcodes: ['lollipop'], + tags: ['candy', 'dessert', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36d.png', + }, + { + emoji: '🍮', + name: 'custard', + shortcodes: ['custard'], + tags: ['dessert', 'pudding', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36e.png', + }, + { + emoji: '🍯', + name: 'honey_pot', + shortcodes: ['honey_pot'], + tags: ['honey', 'honeypot', 'pot', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f36f.png', + }, + { + emoji: '🍼', + name: 'baby_bottle', + shortcodes: ['baby_bottle'], + tags: ['baby', 'bottle', 'drink', 'milk'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37c.png', + }, + { + emoji: '🥛', + name: 'milk_glass', + shortcodes: ['glass_of_milk', 'milk'], + tags: ['drink', 'glass', 'milk'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f95b.png', + }, + { + emoji: '☕', + name: 'coffee', + shortcodes: ['coffee'], + tags: ['beverage', 'coffee', 'drink', 'hot', 'steaming', 'tea'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2615.png', + }, + { + emoji: '🫖', + name: 'teapot', + shortcodes: ['teapot'], + tags: ['drink', 'pot', 'tea'], + group: 'food & drink', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fad6.png', + }, + { + emoji: '🍵', + name: 'tea', + shortcodes: ['tea'], + tags: ['beverage', 'cup', 'drink', 'tea', 'teacup'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f375.png', + }, + { + emoji: '🍶', + name: 'sake', + shortcodes: ['sake'], + tags: ['bar', 'beverage', 'bottle', 'cup', 'drink'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f376.png', + }, + { + emoji: '🍾', + name: 'champagne', + shortcodes: ['champagne'], + tags: ['bar', 'bottle', 'cork', 'drink', 'popping'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37e.png', + }, + { + emoji: '🍷', + name: 'wine_glass', + shortcodes: ['wine_glass'], + tags: ['bar', 'beverage', 'drink', 'glass', 'wine'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f377.png', + }, + { + emoji: '🍸', + name: 'cocktail', + shortcodes: ['cocktail'], + tags: ['bar', 'cocktail', 'drink', 'glass'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f378.png', + }, + { + emoji: '🍹', + name: 'tropical_drink', + shortcodes: ['tropical_drink'], + tags: ['bar', 'drink', 'tropical'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f379.png', + }, + { + emoji: '🍺', + name: 'beer', + shortcodes: ['beer'], + tags: ['bar', 'beer', 'drink', 'mug'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37a.png', + }, + { + emoji: '🍻', + name: 'beers', + shortcodes: ['beers'], + tags: ['bar', 'beer', 'clink', 'drink', 'mug'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37b.png', + }, + { + emoji: '🥂', + name: 'clinking_glasses', + shortcodes: ['clinking_glasses'], + tags: ['celebrate', 'clink', 'drink', 'glass'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f942.png', + }, + { + emoji: '🥃', + name: 'tumbler_glass', + shortcodes: ['tumbler_glass', 'whisky'], + tags: ['glass', 'liquor', 'shot', 'tumbler', 'whisky'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f943.png', + }, + { + emoji: '🫗', + name: 'pouring_liquid', + shortcodes: ['pour', 'pouring_liquid'], + tags: ['drink', 'empty', 'glass', 'spill'], + group: 'food & drink', + emoticons: [], + version: 14, + }, + { + emoji: '🥤', + name: 'cup_with_straw', + shortcodes: ['cup_with_straw'], + tags: ['juice', 'soda'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f964.png', + }, + { + emoji: '🧋', + name: 'bubble_tea', + shortcodes: ['boba_drink', 'bubble_tea'], + tags: ['bubble', 'milk', 'pearl', 'tea'], + group: 'food & drink', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9cb.png', + }, + { + emoji: '🧃', + name: 'beverage_box', + shortcodes: ['beverage_box', 'juice_box'], + tags: ['beverage', 'box', 'juice', 'straw', 'sweet'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c3.png', + }, + { + emoji: '🧉', + name: 'mate', + shortcodes: ['mate'], + tags: ['drink'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9c9.png', + }, + { + emoji: '🧊', + name: 'ice_cube', + shortcodes: ['ice', 'ice_cube'], + tags: ['cold', 'ice cube', 'iceberg'], + group: 'food & drink', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ca.png', + }, + { + emoji: '🥢', + name: 'chopsticks', + shortcodes: ['chopsticks'], + tags: ['hashi'], + group: 'food & drink', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f962.png', + }, + { + emoji: '🍽', + name: 'plate_with_cutlery', + shortcodes: ['fork_knife_plate'], + tags: ['cooking', 'fork', 'knife', 'plate'], + group: 'food & drink', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f37d-fe0f.png', + }, + { + emoji: '🍴', + name: 'fork_and_knife', + shortcodes: ['fork_and_knife'], + tags: ['cooking', 'cutlery', 'fork', 'knife'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f374.png', + }, + { + emoji: '🥄', + name: 'spoon', + shortcodes: ['spoon'], + tags: ['tableware'], + group: 'food & drink', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f944.png', + }, + { + emoji: '🔪', + name: 'hocho', + shortcodes: ['knife'], + tags: ['cooking', 'hocho', 'knife', 'tool', 'weapon'], + group: 'food & drink', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52a.png', + }, + { + emoji: '🫙', + name: 'jar', + shortcodes: ['jar'], + tags: ['condiment', 'container', 'empty', 'sauce', 'store'], + group: 'food & drink', + emoticons: [], + version: 14, + }, + { + emoji: '🏺', + name: 'amphora', + shortcodes: ['amphora'], + tags: ['aquarius', 'cooking', 'drink', 'jug', 'zodiac'], + group: 'food & drink', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3fa.png', + }, + { + emoji: '🌍', + name: 'earth_africa', + shortcodes: ['earth_africa', 'earth_europe'], + tags: ['africa', 'earth', 'europe', 'globe', 'globe showing europe-africa', 'world'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30d.png', + }, + { + emoji: '🌎', + name: 'earth_americas', + shortcodes: ['earth_americas'], + tags: ['americas', 'earth', 'globe', 'globe showing americas', 'world'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30e.png', + }, + { + emoji: '🌏', + name: 'earth_asia', + shortcodes: ['earth_asia'], + tags: ['asia', 'australia', 'earth', 'globe', 'globe showing asia-australia', 'world'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30f.png', + }, + { + emoji: '🌐', + name: 'globe_with_meridians', + shortcodes: ['globe_with_meridians'], + tags: ['earth', 'globe', 'meridians', 'world'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f310.png', + }, + { + emoji: '🗺', + name: 'world_map', + shortcodes: ['world_map'], + tags: ['map', 'world'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fa-fe0f.png', + }, + { + emoji: '🗾', + name: 'japan', + shortcodes: ['japan_map'], + tags: ['japan', 'map', 'map of japan'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fe.png', + }, + { + emoji: '🧭', + name: 'compass', + shortcodes: ['compass'], + tags: ['magnetic', 'navigation', 'orienteering'], + group: 'travel & places', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ed.png', + }, + { + emoji: '🏔', + name: 'mountain_snow', + shortcodes: ['mountain_snow'], + tags: ['cold', 'mountain', 'snow'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d4-fe0f.png', + }, + { + emoji: '⛰', + name: 'mountain', + shortcodes: ['mountain'], + tags: ['mountain'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f0-fe0f.png', + }, + { + emoji: '🌋', + name: 'volcano', + shortcodes: ['volcano'], + tags: ['eruption', 'mountain'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30b.png', + }, + { + emoji: '🗻', + name: 'mount_fuji', + shortcodes: ['mount_fuji'], + tags: ['fuji', 'mountain'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fb.png', + }, + { + emoji: '🏕', + name: 'camping', + shortcodes: ['camping'], + tags: ['camping'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d5-fe0f.png', + }, + { + emoji: '🏖', + name: 'beach_umbrella', + shortcodes: ['beach', 'beach_with_umbrella'], + tags: ['beach', 'umbrella'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d6-fe0f.png', + }, + { + emoji: '🏜', + name: 'desert', + shortcodes: ['desert'], + tags: ['desert'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3dc-fe0f.png', + }, + { + emoji: '🏝', + name: 'desert_island', + shortcodes: ['desert_island', 'island'], + tags: ['desert', 'island'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3dd-fe0f.png', + }, + { + emoji: '🏞', + name: 'national_park', + shortcodes: ['national_park'], + tags: ['park'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3de-fe0f.png', + }, + { + emoji: '🏟', + name: 'stadium', + shortcodes: ['stadium'], + tags: ['stadium'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3df-fe0f.png', + }, + { + emoji: '🏛', + name: 'classical_building', + shortcodes: ['classical_building'], + tags: ['classical'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3db-fe0f.png', + }, + { + emoji: '🏗', + name: 'building_construction', + shortcodes: ['building_construction', 'construction_site'], + tags: ['construction'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d7-fe0f.png', + }, + { + emoji: '🧱', + name: 'bricks', + shortcodes: ['bricks'], + tags: ['bricks', 'clay', 'mortar', 'wall'], + group: 'travel & places', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f1.png', + }, + { + emoji: '🪨', + name: 'rock', + shortcodes: ['rock'], + tags: ['boulder', 'heavy', 'solid', 'stone'], + group: 'travel & places', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa8.png', + }, + { + emoji: '🪵', + name: 'wood', + shortcodes: ['wood'], + tags: ['log', 'lumber', 'timber'], + group: 'travel & places', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fab5.png', + }, + { + emoji: '🛖', + name: 'hut', + shortcodes: ['hut'], + tags: ['house', 'roundhouse', 'yurt'], + group: 'travel & places', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d6.png', + }, + { + emoji: '🏘', + name: 'houses', + shortcodes: ['homes', 'houses'], + tags: ['houses'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d8-fe0f.png', + }, + { + emoji: '🏚', + name: 'derelict_house', + shortcodes: ['derelict_house', 'house_abandoned'], + tags: ['derelict', 'house'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3da-fe0f.png', + }, + { + emoji: '🏠', + name: 'house', + shortcodes: ['house'], + tags: ['home'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e0.png', + }, + { + emoji: '🏡', + name: 'house_with_garden', + shortcodes: ['house_with_garden'], + tags: ['garden', 'home', 'house'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e1.png', + }, + { + emoji: '🏢', + name: 'office', + shortcodes: ['office'], + tags: ['building'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e2.png', + }, + { + emoji: '🏣', + name: 'post_office', + shortcodes: ['post_office'], + tags: ['japanese', 'japanese post office', 'post'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e3.png', + }, + { + emoji: '🏤', + name: 'european_post_office', + shortcodes: ['european_post_office'], + tags: ['european', 'post'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e4.png', + }, + { + emoji: '🏥', + name: 'hospital', + shortcodes: ['hospital'], + tags: ['doctor', 'medicine'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e5.png', + }, + { + emoji: '🏦', + name: 'bank', + shortcodes: ['bank'], + tags: ['building'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e6.png', + }, + { + emoji: '🏨', + name: 'hotel', + shortcodes: ['hotel'], + tags: ['building'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e8.png', + }, + { + emoji: '🏩', + name: 'love_hotel', + shortcodes: ['love_hotel'], + tags: ['hotel', 'love'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e9.png', + }, + { + emoji: '🏪', + name: 'convenience_store', + shortcodes: ['convenience_store'], + tags: ['convenience', 'store'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ea.png', + }, + { + emoji: '🏫', + name: 'school', + shortcodes: ['school'], + tags: ['building'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3eb.png', + }, + { + emoji: '🏬', + name: 'department_store', + shortcodes: ['department_store'], + tags: ['department', 'store'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ec.png', + }, + { + emoji: '🏭', + name: 'factory', + shortcodes: ['factory'], + tags: ['building'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ed.png', + }, + { + emoji: '🏯', + name: 'japanese_castle', + shortcodes: ['japanese_castle'], + tags: ['castle', 'japanese'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ef.png', + }, + { + emoji: '🏰', + name: 'european_castle', + shortcodes: ['castle', 'european_castle'], + tags: ['european'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f0.png', + }, + { + emoji: '💒', + name: 'wedding', + shortcodes: ['wedding'], + tags: ['chapel', 'romance'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f492.png', + }, + { + emoji: '🗼', + name: 'tokyo_tower', + shortcodes: ['tokyo_tower'], + tags: ['tokyo', 'tower'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fc.png', + }, + { + emoji: '🗽', + name: 'statue_of_liberty', + shortcodes: ['statue_of_liberty'], + tags: ['liberty', 'statue', 'statue of liberty'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5fd.png', + }, + { + emoji: '⛪', + name: 'church', + shortcodes: ['church'], + tags: ['christian', 'cross', 'religion'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26ea.png', + }, + { + emoji: '🕌', + name: 'mosque', + shortcodes: ['mosque'], + tags: ['islam', 'muslim', 'religion'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54c.png', + }, + { + emoji: '🛕', + name: 'hindu_temple', + shortcodes: ['hindu_temple'], + tags: ['hindu', 'temple'], + group: 'travel & places', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d5.png', + }, + { + emoji: '🕍', + name: 'synagogue', + shortcodes: ['synagogue'], + tags: ['jew', 'jewish', 'religion', 'temple'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54d.png', + }, + { + emoji: '⛩', + name: 'shinto_shrine', + shortcodes: ['shinto_shrine'], + tags: ['religion', 'shinto', 'shrine'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26e9-fe0f.png', + }, + { + emoji: '🕋', + name: 'kaaba', + shortcodes: ['kaaba'], + tags: ['islam', 'muslim', 'religion'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54b.png', + }, + { + emoji: '⛲', + name: 'fountain', + shortcodes: ['fountain'], + tags: ['fountain'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f2.png', + }, + { + emoji: '⛺', + name: 'tent', + shortcodes: ['tent'], + tags: ['camping'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26fa.png', + }, + { + emoji: '🌁', + name: 'foggy', + shortcodes: ['foggy'], + tags: ['fog'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f301.png', + }, + { + emoji: '🌃', + name: 'night_with_stars', + shortcodes: ['night_with_stars'], + tags: ['night', 'star'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f303.png', + }, + { + emoji: '🏙', + name: 'cityscape', + shortcodes: ['cityscape'], + tags: ['city'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d9-fe0f.png', + }, + { + emoji: '🌄', + name: 'sunrise_over_mountains', + shortcodes: ['sunrise_over_mountains'], + tags: ['morning', 'mountain', 'sun', 'sunrise'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f304.png', + }, + { + emoji: '🌅', + name: 'sunrise', + shortcodes: ['sunrise'], + tags: ['morning', 'sun'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f305.png', + }, + { + emoji: '🌆', + name: 'city_sunset', + shortcodes: ['city_dusk'], + tags: ['city', 'dusk', 'evening', 'landscape', 'sunset'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f306.png', + }, + { + emoji: '🌇', + name: 'city_sunrise', + shortcodes: ['city_sunrise', 'city_sunset'], + tags: ['dusk', 'sun'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f307.png', + }, + { + emoji: '🌉', + name: 'bridge_at_night', + shortcodes: ['bridge_at_night'], + tags: ['bridge', 'night'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f309.png', + }, + { + emoji: '♨', + name: 'hotsprings', + shortcodes: ['hotsprings'], + tags: ['hot', 'hotsprings', 'springs', 'steaming'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2668-fe0f.png', + }, + { + emoji: '🎠', + name: 'carousel_horse', + shortcodes: ['carousel_horse'], + tags: ['carousel', 'horse'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a0.png', + }, + { + emoji: '🛝', + name: 'playground_slide', + shortcodes: ['playground_slide', 'slide'], + tags: ['amusement park', 'play', 'theme park'], + group: 'travel & places', + emoticons: [], + version: 14, + }, + { + emoji: '🎡', + name: 'ferris_wheel', + shortcodes: ['ferris_wheel'], + tags: ['amusement park', 'ferris', 'theme park', 'wheel'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a1.png', + }, + { + emoji: '🎢', + name: 'roller_coaster', + shortcodes: ['roller_coaster'], + tags: ['amusement park', 'coaster', 'roller', 'theme park'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a2.png', + }, + { + emoji: '💈', + name: 'barber', + shortcodes: ['barber', 'barber_pole'], + tags: ['barber', 'haircut', 'pole'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f488.png', + }, + { + emoji: '🎪', + name: 'circus_tent', + shortcodes: ['circus_tent'], + tags: ['circus', 'tent'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3aa.png', + }, + { + emoji: '🚂', + name: 'steam_locomotive', + shortcodes: ['steam_locomotive'], + tags: ['engine', 'railway', 'steam', 'train'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f682.png', + }, + { + emoji: '🚃', + name: 'railway_car', + shortcodes: ['railway_car'], + tags: ['car', 'electric', 'railway', 'train', 'tram', 'trolleybus'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f683.png', + }, + { + emoji: '🚄', + name: 'bullettrain_side', + shortcodes: ['bullettrain_side'], + tags: ['railway', 'shinkansen', 'speed', 'train'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f684.png', + }, + { + emoji: '🚅', + name: 'bullettrain_front', + shortcodes: ['bullettrain_front'], + tags: ['bullet', 'railway', 'shinkansen', 'speed', 'train'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f685.png', + }, + { + emoji: '🚆', + name: 'train2', + shortcodes: ['train'], + tags: ['railway'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f686.png', + }, + { + emoji: '🚇', + name: 'metro', + shortcodes: ['metro'], + tags: ['subway'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f687.png', + }, + { + emoji: '🚈', + name: 'light_rail', + shortcodes: ['light_rail'], + tags: ['railway'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f688.png', + }, + { + emoji: '🚉', + name: 'station', + shortcodes: ['station'], + tags: ['railway', 'train'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f689.png', + }, + { + emoji: '🚊', + name: 'tram', + shortcodes: ['tram'], + tags: ['trolleybus'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68a.png', + }, + { + emoji: '🚝', + name: 'monorail', + shortcodes: ['monorail'], + tags: ['vehicle'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69d.png', + }, + { + emoji: '🚞', + name: 'mountain_railway', + shortcodes: ['mountain_railway'], + tags: ['car', 'mountain', 'railway'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69e.png', + }, + { + emoji: '🚋', + name: 'train', + shortcodes: ['tram_car'], + tags: ['car', 'tram', 'trolleybus'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68b.png', + }, + { + emoji: '🚌', + name: 'bus', + shortcodes: ['bus'], + tags: ['vehicle'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68c.png', + }, + { + emoji: '🚍', + name: 'oncoming_bus', + shortcodes: ['oncoming_bus'], + tags: ['bus', 'oncoming'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68d.png', + }, + { + emoji: '🚎', + name: 'trolleybus', + shortcodes: ['trolleybus'], + tags: ['bus', 'tram', 'trolley'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68e.png', + }, + { + emoji: '🚐', + name: 'minibus', + shortcodes: ['minibus'], + tags: ['bus'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f690.png', + }, + { + emoji: '🚑', + name: 'ambulance', + shortcodes: ['ambulance'], + tags: ['vehicle'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f691.png', + }, + { + emoji: '🚒', + name: 'fire_engine', + shortcodes: ['fire_engine'], + tags: ['engine', 'fire', 'truck'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f692.png', + }, + { + emoji: '🚓', + name: 'police_car', + shortcodes: ['police_car'], + tags: ['car', 'patrol', 'police'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f693.png', + }, + { + emoji: '🚔', + name: 'oncoming_police_car', + shortcodes: ['oncoming_police_car'], + tags: ['car', 'oncoming', 'police'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f694.png', + }, + { + emoji: '🚕', + name: 'taxi', + shortcodes: ['taxi'], + tags: ['vehicle'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f695.png', + }, + { + emoji: '🚖', + name: 'oncoming_taxi', + shortcodes: ['oncoming_taxi'], + tags: ['oncoming', 'taxi'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f696.png', + }, + { + emoji: '🚗', + name: 'car', + shortcodes: ['car', 'red_car'], + tags: ['car'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f697.png', + }, + { + emoji: '🚘', + name: 'oncoming_automobile', + shortcodes: ['oncoming_automobile'], + tags: ['automobile', 'car', 'oncoming'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f698.png', + }, + { + emoji: '🚙', + name: 'blue_car', + shortcodes: ['blue_car', 'suv'], + tags: ['recreational', 'sport utility'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f699.png', + }, + { + emoji: '🛻', + name: 'pickup_truck', + shortcodes: ['pickup_truck'], + tags: ['pick-up', 'pickup', 'truck'], + group: 'travel & places', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6fb.png', + }, + { + emoji: '🚚', + name: 'truck', + shortcodes: ['delivery_truck', 'truck'], + tags: ['delivery', 'truck'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69a.png', + }, + { + emoji: '🚛', + name: 'articulated_lorry', + shortcodes: ['articulated_lorry'], + tags: ['lorry', 'semi', 'truck'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69b.png', + }, + { + emoji: '🚜', + name: 'tractor', + shortcodes: ['tractor'], + tags: ['vehicle'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69c.png', + }, + { + emoji: '🏎', + name: 'racing_car', + shortcodes: ['racing_car'], + tags: ['car', 'racing'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ce-fe0f.png', + }, + { + emoji: '🏍', + name: 'motorcycle', + shortcodes: ['motorcycle'], + tags: ['racing'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cd-fe0f.png', + }, + { + emoji: '🛵', + name: 'motor_scooter', + shortcodes: ['motor_scooter'], + tags: ['motor', 'scooter'], + group: 'travel & places', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f5.png', + }, + { + emoji: '🦽', + name: 'manual_wheelchair', + shortcodes: ['manual_wheelchair'], + tags: ['accessibility'], + group: 'travel & places', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9bd.png', + }, + { + emoji: '🦼', + name: 'motorized_wheelchair', + shortcodes: ['motorized_wheelchair'], + tags: ['accessibility'], + group: 'travel & places', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9bc.png', + }, + { + emoji: '🛺', + name: 'auto_rickshaw', + shortcodes: ['auto_rickshaw'], + tags: ['tuk tuk'], + group: 'travel & places', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6fa.png', + }, + { + emoji: '🚲', + name: 'bike', + shortcodes: ['bicycle', 'bike'], + tags: ['bike'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b2.png', + }, + { + emoji: '🛴', + name: 'kick_scooter', + shortcodes: ['scooter'], + tags: ['kick', 'scooter'], + group: 'travel & places', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f4.png', + }, + { + emoji: '🛹', + name: 'skateboard', + shortcodes: ['skateboard'], + tags: ['board'], + group: 'travel & places', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f9.png', + }, + { + emoji: '🛼', + name: 'roller_skate', + shortcodes: ['roller_skate'], + tags: ['roller', 'skate'], + group: 'travel & places', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6fc.png', + }, + { + emoji: '🚏', + name: 'busstop', + shortcodes: ['busstop'], + tags: ['bus', 'stop'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f68f.png', + }, + { + emoji: '🛣', + name: 'motorway', + shortcodes: ['motorway'], + tags: ['highway', 'road'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e3-fe0f.png', + }, + { + emoji: '🛤', + name: 'railway_track', + shortcodes: ['railway_track'], + tags: ['railway', 'train'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e4-fe0f.png', + }, + { + emoji: '🛢', + name: 'oil_drum', + shortcodes: ['oil_drum'], + tags: ['drum', 'oil'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e2-fe0f.png', + }, + { + emoji: '⛽', + name: 'fuelpump', + shortcodes: ['fuelpump'], + tags: ['diesel', 'fuel', 'fuelpump', 'gas', 'pump', 'station'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26fd.png', + }, + { + emoji: '🛞', + name: 'wheel', + shortcodes: ['wheel'], + tags: ['circle', 'tire', 'turn'], + group: 'travel & places', + emoticons: [], + version: 14, + }, + { + emoji: '🚨', + name: 'rotating_light', + shortcodes: ['rotating_light'], + tags: ['beacon', 'car', 'light', 'police', 'revolving'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a8.png', + }, + { + emoji: '🚥', + name: 'traffic_light', + shortcodes: ['traffic_light'], + tags: ['light', 'signal', 'traffic'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a5.png', + }, + { + emoji: '🚦', + name: 'vertical_traffic_light', + shortcodes: ['vertical_traffic_light'], + tags: ['light', 'signal', 'traffic'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a6.png', + }, + { + emoji: '🛑', + name: 'stop_sign', + shortcodes: ['octagonal_sign', 'stop_sign'], + tags: ['octagonal', 'sign', 'stop'], + group: 'travel & places', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d1.png', + }, + { + emoji: '🚧', + name: 'construction', + shortcodes: ['construction'], + tags: ['barrier'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a7.png', + }, + { + emoji: '⚓', + name: 'anchor', + shortcodes: ['anchor'], + tags: ['ship', 'tool'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2693.png', + }, + { + emoji: '🛟', + name: 'ring_buoy', + shortcodes: ['lifebuoy', 'ring_buoy'], + tags: ['float', 'life preserver', 'life saver', 'rescue', 'safety'], + group: 'travel & places', + emoticons: [], + version: 14, + }, + { + emoji: '⛵', + name: 'boat', + shortcodes: ['sailboat'], + tags: ['boat', 'resort', 'sea', 'yacht'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f5.png', + }, + { + emoji: '🛶', + name: 'canoe', + shortcodes: ['canoe'], + tags: ['boat'], + group: 'travel & places', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f6.png', + }, + { + emoji: '🚤', + name: 'speedboat', + shortcodes: ['speedboat'], + tags: ['boat'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a4.png', + }, + { + emoji: '🛳', + name: 'passenger_ship', + shortcodes: ['cruise_ship', 'passenger_ship'], + tags: ['passenger', 'ship'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f3-fe0f.png', + }, + { + emoji: '⛴', + name: 'ferry', + shortcodes: ['ferry'], + tags: ['boat', 'passenger'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f4-fe0f.png', + }, + { + emoji: '🛥', + name: 'motor_boat', + shortcodes: ['motorboat'], + tags: ['boat', 'motorboat'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e5-fe0f.png', + }, + { + emoji: '🚢', + name: 'ship', + shortcodes: ['ship'], + tags: ['boat', 'passenger'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a2.png', + }, + { + emoji: '✈', + name: 'airplane', + shortcodes: ['airplane'], + tags: ['aeroplane'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2708-fe0f.png', + }, + { + emoji: '🛩', + name: 'small_airplane', + shortcodes: ['small_airplane'], + tags: ['aeroplane', 'airplane'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e9-fe0f.png', + }, + { + emoji: '🛫', + name: 'flight_departure', + shortcodes: ['airplane_departure'], + tags: ['aeroplane', 'airplane', 'check-in', 'departure', 'departures'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6eb.png', + }, + { + emoji: '🛬', + name: 'flight_arrival', + shortcodes: ['airplane_arriving'], + tags: ['aeroplane', 'airplane', 'arrivals', 'arriving', 'landing'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ec.png', + }, + { + emoji: '🪂', + name: 'parachute', + shortcodes: ['parachute'], + tags: ['hang-glide', 'parasail', 'skydive'], + group: 'travel & places', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa82.png', + }, + { + emoji: '💺', + name: 'seat', + shortcodes: ['seat'], + tags: ['chair'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ba.png', + }, + { + emoji: '🚁', + name: 'helicopter', + shortcodes: ['helicopter'], + tags: ['vehicle'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f681.png', + }, + { + emoji: '🚟', + name: 'suspension_railway', + shortcodes: ['suspension_railway'], + tags: ['railway', 'suspension'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f69f.png', + }, + { + emoji: '🚠', + name: 'mountain_cableway', + shortcodes: ['mountain_cableway'], + tags: ['cable', 'gondola', 'mountain'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a0.png', + }, + { + emoji: '🚡', + name: 'aerial_tramway', + shortcodes: ['aerial_tramway'], + tags: ['aerial', 'cable', 'car', 'gondola', 'tramway'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a1.png', + }, + { + emoji: '🛰', + name: 'artificial_satellite', + shortcodes: ['satellite'], + tags: ['space'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f0-fe0f.png', + }, + { + emoji: '🚀', + name: 'rocket', + shortcodes: ['rocket'], + tags: ['space'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f680.png', + }, + { + emoji: '🛸', + name: 'flying_saucer', + shortcodes: ['flying_saucer'], + tags: ['ufo'], + group: 'travel & places', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f8.png', + }, + { + emoji: '🛎', + name: 'bellhop_bell', + shortcodes: ['bellhop'], + tags: ['bell', 'bellhop', 'hotel'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ce-fe0f.png', + }, + { + emoji: '🧳', + name: 'luggage', + shortcodes: ['luggage'], + tags: ['packing', 'travel'], + group: 'travel & places', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f3.png', + }, + { + emoji: '⌛', + name: 'hourglass', + shortcodes: ['hourglass'], + tags: ['sand', 'timer'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/231b.png', + }, + { + emoji: '⏳', + name: 'hourglass_flowing_sand', + shortcodes: ['hourglass_flowing_sand'], + tags: ['hourglass', 'sand', 'timer'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f3.png', + }, + { + emoji: '⌚', + name: 'watch', + shortcodes: ['watch'], + tags: ['clock'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/231a.png', + }, + { + emoji: '⏰', + name: 'alarm_clock', + shortcodes: ['alarm_clock'], + tags: ['alarm', 'clock'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f0.png', + }, + { + emoji: '⏱', + name: 'stopwatch', + shortcodes: ['stopwatch'], + tags: ['clock'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f1-fe0f.png', + }, + { + emoji: '⏲', + name: 'timer_clock', + shortcodes: ['timer_clock'], + tags: ['clock', 'timer'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f2-fe0f.png', + }, + { + emoji: '🕰', + name: 'mantelpiece_clock', + shortcodes: ['clock'], + tags: ['clock'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f570-fe0f.png', + }, + { + emoji: '🕛', + name: 'clock12', + shortcodes: ['clock12'], + tags: ['00', '12', '12:00', 'clock', 'o’clock', 'twelve'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55b.png', + }, + { + emoji: '🕧', + name: 'clock1230', + shortcodes: ['clock1230'], + tags: ['12', '12:30', 'clock', 'thirty', 'twelve'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f567.png', + }, + { + emoji: '🕐', + name: 'clock1', + shortcodes: ['clock1'], + tags: ['00', '1', '1:00', 'clock', 'one', 'o’clock'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f550.png', + }, + { + emoji: '🕜', + name: 'clock130', + shortcodes: ['clock130'], + tags: ['1', '1:30', 'clock', 'one', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55c.png', + }, + { + emoji: '🕑', + name: 'clock2', + shortcodes: ['clock2'], + tags: ['00', '2', '2:00', 'clock', 'o’clock', 'two'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f551.png', + }, + { + emoji: '🕝', + name: 'clock230', + shortcodes: ['clock230'], + tags: ['2', '2:30', 'clock', 'thirty', 'two'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55d.png', + }, + { + emoji: '🕒', + name: 'clock3', + shortcodes: ['clock3'], + tags: ['00', '3', '3:00', 'clock', 'o’clock', 'three'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f552.png', + }, + { + emoji: '🕞', + name: 'clock330', + shortcodes: ['clock330'], + tags: ['3', '3:30', 'clock', 'thirty', 'three'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55e.png', + }, + { + emoji: '🕓', + name: 'clock4', + shortcodes: ['clock4'], + tags: ['00', '4', '4:00', 'clock', 'four', 'o’clock'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f553.png', + }, + { + emoji: '🕟', + name: 'clock430', + shortcodes: ['clock430'], + tags: ['4', '4:30', 'clock', 'four', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55f.png', + }, + { + emoji: '🕔', + name: 'clock5', + shortcodes: ['clock5'], + tags: ['00', '5', '5:00', 'clock', 'five', 'o’clock'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f554.png', + }, + { + emoji: '🕠', + name: 'clock530', + shortcodes: ['clock530'], + tags: ['5', '5:30', 'clock', 'five', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f560.png', + }, + { + emoji: '🕕', + name: 'clock6', + shortcodes: ['clock6'], + tags: ['00', '6', '6:00', 'clock', 'o’clock', 'six'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f555.png', + }, + { + emoji: '🕡', + name: 'clock630', + shortcodes: ['clock630'], + tags: ['6', '6:30', 'clock', 'six', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f561.png', + }, + { + emoji: '🕖', + name: 'clock7', + shortcodes: ['clock7'], + tags: ['00', '7', '7:00', 'clock', 'o’clock', 'seven'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f556.png', + }, + { + emoji: '🕢', + name: 'clock730', + shortcodes: ['clock730'], + tags: ['7', '7:30', 'clock', 'seven', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f562.png', + }, + { + emoji: '🕗', + name: 'clock8', + shortcodes: ['clock8'], + tags: ['00', '8', '8:00', 'clock', 'eight', 'o’clock'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f557.png', + }, + { + emoji: '🕣', + name: 'clock830', + shortcodes: ['clock830'], + tags: ['8', '8:30', 'clock', 'eight', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f563.png', + }, + { + emoji: '🕘', + name: 'clock9', + shortcodes: ['clock9'], + tags: ['00', '9', '9:00', 'clock', 'nine', 'o’clock'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f558.png', + }, + { + emoji: '🕤', + name: 'clock930', + shortcodes: ['clock930'], + tags: ['9', '9:30', 'clock', 'nine', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f564.png', + }, + { + emoji: '🕙', + name: 'clock10', + shortcodes: ['clock10'], + tags: ['00', '10', '10:00', 'clock', 'o’clock', 'ten'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f559.png', + }, + { + emoji: '🕥', + name: 'clock1030', + shortcodes: ['clock1030'], + tags: ['10', '10:30', 'clock', 'ten', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f565.png', + }, + { + emoji: '🕚', + name: 'clock11', + shortcodes: ['clock11'], + tags: ['00', '11', '11:00', 'clock', 'eleven', 'o’clock'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f55a.png', + }, + { + emoji: '🕦', + name: 'clock1130', + shortcodes: ['clock1130'], + tags: ['11', '11:30', 'clock', 'eleven', 'thirty'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f566.png', + }, + { + emoji: '🌑', + name: 'new_moon', + shortcodes: ['new_moon'], + tags: ['dark', 'moon'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f311.png', + }, + { + emoji: '🌒', + name: 'waxing_crescent_moon', + shortcodes: ['waxing_crescent_moon'], + tags: ['crescent', 'moon', 'waxing'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f312.png', + }, + { + emoji: '🌓', + name: 'first_quarter_moon', + shortcodes: ['first_quarter_moon'], + tags: ['moon', 'quarter'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f313.png', + }, + { + emoji: '🌔', + name: 'moon', + shortcodes: ['waxing_gibbous_moon'], + tags: ['gibbous', 'moon', 'waxing'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f314.png', + }, + { + emoji: '🌕', + name: 'full_moon', + shortcodes: ['full_moon'], + tags: ['full', 'moon'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f315.png', + }, + { + emoji: '🌖', + name: 'waning_gibbous_moon', + shortcodes: ['waning_gibbous_moon'], + tags: ['gibbous', 'moon', 'waning'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f316.png', + }, + { + emoji: '🌗', + name: 'last_quarter_moon', + shortcodes: ['last_quarter_moon'], + tags: ['moon', 'quarter'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f317.png', + }, + { + emoji: '🌘', + name: 'waning_crescent_moon', + shortcodes: ['waning_crescent_moon'], + tags: ['crescent', 'moon', 'waning'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f318.png', + }, + { + emoji: '🌙', + name: 'crescent_moon', + shortcodes: ['crescent_moon'], + tags: ['crescent', 'moon'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f319.png', + }, + { + emoji: '🌚', + name: 'new_moon_with_face', + shortcodes: ['new_moon_with_face'], + tags: ['face', 'moon'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31a.png', + }, + { + emoji: '🌛', + name: 'first_quarter_moon_with_face', + shortcodes: ['first_quarter_moon_with_face'], + tags: ['face', 'moon', 'quarter'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31b.png', + }, + { + emoji: '🌜', + name: 'last_quarter_moon_with_face', + shortcodes: ['last_quarter_moon_with_face'], + tags: ['face', 'moon', 'quarter'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31c.png', + }, + { + emoji: '🌡', + name: 'thermometer', + shortcodes: ['thermometer'], + tags: ['weather'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f321-fe0f.png', + }, + { + emoji: '☀', + name: 'sunny', + shortcodes: ['sun'], + tags: ['bright', 'rays', 'sunny'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2600-fe0f.png', + }, + { + emoji: '🌝', + name: 'full_moon_with_face', + shortcodes: ['full_moon_with_face'], + tags: ['bright', 'face', 'full', 'moon'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31d.png', + }, + { + emoji: '🌞', + name: 'sun_with_face', + shortcodes: ['sun_with_face'], + tags: ['bright', 'face', 'sun'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31e.png', + }, + { + emoji: '🪐', + name: 'ringed_planet', + shortcodes: ['ringed_planet', 'saturn'], + tags: ['saturn', 'saturnine'], + group: 'travel & places', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa90.png', + }, + { + emoji: '⭐', + name: 'star', + shortcodes: ['star'], + tags: ['star'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b50.png', + }, + { + emoji: '🌟', + name: 'star2', + shortcodes: ['glowing_star', 'star2'], + tags: ['glittery', 'glow', 'shining', 'sparkle', 'star'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f31f.png', + }, + { + emoji: '🌠', + name: 'stars', + shortcodes: ['shooting_star', 'stars'], + tags: ['falling', 'shooting', 'star'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f320.png', + }, + { + emoji: '🌌', + name: 'milky_way', + shortcodes: ['milky_way'], + tags: ['space'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30c.png', + }, + { + emoji: '☁', + name: 'cloud', + shortcodes: ['cloud'], + tags: ['weather'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2601-fe0f.png', + }, + { + emoji: '⛅', + name: 'partly_sunny', + shortcodes: ['partly_sunny', 'sun_behind_cloud'], + tags: ['cloud', 'sun'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26c5.png', + }, + { + emoji: '⛈', + name: 'cloud_with_lightning_and_rain', + shortcodes: ['stormy', 'thunder_cloud_and_rain'], + tags: ['cloud', 'rain', 'thunder'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26c8-fe0f.png', + }, + { + emoji: '🌤', + name: 'sun_behind_small_cloud', + shortcodes: ['sun_behind_small_cloud', 'sunny'], + tags: ['cloud', 'sun'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f324-fe0f.png', + }, + { + emoji: '🌥', + name: 'sun_behind_large_cloud', + shortcodes: ['cloudy', 'sun_behind_large_cloud'], + tags: ['cloud', 'sun'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f325-fe0f.png', + }, + { + emoji: '🌦', + name: 'sun_behind_rain_cloud', + shortcodes: ['sun_and_rain', 'sun_behind_rain_cloud'], + tags: ['cloud', 'rain', 'sun'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f326-fe0f.png', + }, + { + emoji: '🌧', + name: 'cloud_with_rain', + shortcodes: ['cloud_with_rain', 'rainy'], + tags: ['cloud', 'rain'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f327-fe0f.png', + }, + { + emoji: '🌨', + name: 'cloud_with_snow', + shortcodes: ['cloud_with_snow', 'snowy'], + tags: ['cloud', 'cold', 'snow'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f328-fe0f.png', + }, + { + emoji: '🌩', + name: 'cloud_with_lightning', + shortcodes: ['cloud_with_lightning', 'lightning'], + tags: ['cloud', 'lightning'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f329-fe0f.png', + }, + { + emoji: '🌪', + name: 'tornado', + shortcodes: ['tornado'], + tags: ['cloud', 'whirlwind'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32a-fe0f.png', + }, + { + emoji: '🌫', + name: 'fog', + shortcodes: ['fog'], + tags: ['cloud'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32b-fe0f.png', + }, + { + emoji: '🌬', + name: 'wind_face', + shortcodes: ['wind_blowing_face'], + tags: ['blow', 'cloud', 'face', 'wind'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f32c-fe0f.png', + }, + { + emoji: '🌀', + name: 'cyclone', + shortcodes: ['cyclone'], + tags: ['dizzy', 'hurricane', 'twister', 'typhoon'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f300.png', + }, + { + emoji: '🌈', + name: 'rainbow', + shortcodes: ['rainbow'], + tags: ['rain'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f308.png', + }, + { + emoji: '🌂', + name: 'closed_umbrella', + shortcodes: ['closed_umbrella'], + tags: ['clothing', 'rain', 'umbrella'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f302.png', + }, + { + emoji: '☂', + name: 'open_umbrella', + shortcodes: ['umbrella'], + tags: ['clothing', 'rain'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2602-fe0f.png', + }, + { + emoji: '☔', + name: 'umbrella', + shortcodes: ['umbrella_with_rain'], + tags: ['clothing', 'drop', 'rain', 'umbrella'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2614.png', + }, + { + emoji: '⛱', + name: 'parasol_on_ground', + shortcodes: ['beach_umbrella', 'umbrella_on_ground'], + tags: ['rain', 'sun', 'umbrella'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f1-fe0f.png', + }, + { + emoji: '⚡', + name: 'zap', + shortcodes: ['high_voltage', 'zap'], + tags: ['danger', 'electric', 'lightning', 'voltage', 'zap'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26a1.png', + }, + { + emoji: '❄', + name: 'snowflake', + shortcodes: ['snowflake'], + tags: ['cold', 'snow'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2744-fe0f.png', + }, + { + emoji: '☃', + name: 'snowman_with_snow', + shortcodes: ['snowman2'], + tags: ['cold', 'snow'], + group: 'travel & places', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2603-fe0f.png', + }, + { + emoji: '⛄', + name: 'snowman', + shortcodes: ['snowman'], + tags: ['cold', 'snow', 'snowman'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26c4.png', + }, + { + emoji: '☄', + name: 'comet', + shortcodes: ['comet'], + tags: ['space'], + group: 'travel & places', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2604-fe0f.png', + }, + { + emoji: '🔥', + name: 'fire', + shortcodes: ['fire'], + tags: ['flame', 'tool'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f525.png', + }, + { + emoji: '💧', + name: 'droplet', + shortcodes: ['droplet'], + tags: ['cold', 'comic', 'drop', 'sweat'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a7.png', + }, + { + emoji: '🌊', + name: 'ocean', + shortcodes: ['ocean', 'water_wave'], + tags: ['ocean', 'water', 'wave'], + group: 'travel & places', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f30a.png', + }, + { + emoji: '🎃', + name: 'jack_o_lantern', + shortcodes: ['jack_o_lantern'], + tags: ['celebration', 'halloween', 'jack', 'lantern'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f383.png', + }, + { + emoji: '🎄', + name: 'christmas_tree', + shortcodes: ['christmas_tree'], + tags: ['celebration', 'christmas', 'tree'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f384.png', + }, + { + emoji: '🎆', + name: 'fireworks', + shortcodes: ['fireworks'], + tags: ['celebration'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f386.png', + }, + { + emoji: '🎇', + name: 'sparkler', + shortcodes: ['sparkler'], + tags: ['celebration', 'fireworks', 'sparkle'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f387.png', + }, + { + emoji: '🧨', + name: 'firecracker', + shortcodes: ['firecracker'], + tags: ['dynamite', 'explosive', 'fireworks'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e8.png', + }, + { + emoji: '✨', + name: 'sparkles', + shortcodes: ['sparkles'], + tags: ['*', 'sparkle', 'star'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2728.png', + }, + { + emoji: '🎈', + name: 'balloon', + shortcodes: ['balloon'], + tags: ['celebration'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f388.png', + }, + { + emoji: '🎉', + name: 'tada', + shortcodes: ['party', 'party_popper', 'tada'], + tags: ['celebration', 'party', 'popper', 'tada'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f389.png', + }, + { + emoji: '🎊', + name: 'confetti_ball', + shortcodes: ['confetti_ball'], + tags: ['ball', 'celebration', 'confetti'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38a.png', + }, + { + emoji: '🎋', + name: 'tanabata_tree', + shortcodes: ['tanabata_tree'], + tags: ['banner', 'celebration', 'japanese', 'tree'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38b.png', + }, + { + emoji: '🎍', + name: 'bamboo', + shortcodes: ['bamboo'], + tags: ['bamboo', 'celebration', 'japanese', 'pine'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38d.png', + }, + { + emoji: '🎎', + name: 'dolls', + shortcodes: ['dolls'], + tags: ['celebration', 'doll', 'festival', 'japanese', 'japanese dolls'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38e.png', + }, + { + emoji: '🎏', + name: 'flags', + shortcodes: ['carp_streamer', 'flags'], + tags: ['carp', 'celebration', 'streamer'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38f.png', + }, + { + emoji: '🎐', + name: 'wind_chime', + shortcodes: ['wind_chime'], + tags: ['bell', 'celebration', 'chime', 'wind'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f390.png', + }, + { + emoji: '🎑', + name: 'rice_scene', + shortcodes: ['moon_ceremony', 'rice_scene'], + tags: ['celebration', 'ceremony', 'moon'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f391.png', + }, + { + emoji: '🧧', + name: 'red_envelope', + shortcodes: ['red_envelope'], + tags: ['gift', 'good luck', 'hóngbāo', 'lai see', 'money'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e7.png', + }, + { + emoji: '🎀', + name: 'ribbon', + shortcodes: ['ribbon'], + tags: ['celebration'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f380.png', + }, + { + emoji: '🎁', + name: 'gift', + shortcodes: ['gift'], + tags: ['box', 'celebration', 'gift', 'present', 'wrapped'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f381.png', + }, + { + emoji: '🎗', + name: 'reminder_ribbon', + shortcodes: ['reminder_ribbon'], + tags: ['celebration', 'reminder', 'ribbon'], + group: 'activities', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f397-fe0f.png', + }, + { + emoji: '🎟', + name: 'tickets', + shortcodes: ['admission_tickets', 'tickets'], + tags: ['admission', 'ticket'], + group: 'activities', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f39f-fe0f.png', + }, + { + emoji: '🎫', + name: 'ticket', + shortcodes: ['ticket'], + tags: ['admission'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ab.png', + }, + { + emoji: '🎖', + name: 'medal_military', + shortcodes: ['military_medal'], + tags: ['celebration', 'medal', 'military'], + group: 'activities', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f396-fe0f.png', + }, + { + emoji: '🏆', + name: 'trophy', + shortcodes: ['trophy'], + tags: ['prize'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c6.png', + }, + { + emoji: '🏅', + name: 'medal_sports', + shortcodes: ['sports_medal'], + tags: ['medal'], + group: 'activities', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c5.png', + }, + { + emoji: '🥇', + name: '1st_place_medal', + shortcodes: ['1st', 'first_place_medal'], + tags: ['first', 'gold', 'medal'], + group: 'activities', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f947.png', + }, + { + emoji: '🥈', + name: '2nd_place_medal', + shortcodes: ['2nd', 'second_place_medal'], + tags: ['medal', 'second', 'silver'], + group: 'activities', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f948.png', + }, + { + emoji: '🥉', + name: '3rd_place_medal', + shortcodes: ['3rd', 'third_place_medal'], + tags: ['bronze', 'medal', 'third'], + group: 'activities', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f949.png', + }, + { + emoji: '⚽', + name: 'soccer', + shortcodes: ['soccer'], + tags: ['ball', 'football', 'soccer'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26bd.png', + }, + { + emoji: '⚾', + name: 'baseball', + shortcodes: ['baseball'], + tags: ['ball'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26be.png', + }, + { + emoji: '🥎', + name: 'softball', + shortcodes: ['softball'], + tags: ['ball', 'glove', 'underarm'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94e.png', + }, + { + emoji: '🏀', + name: 'basketball', + shortcodes: ['basketball'], + tags: ['ball', 'hoop'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c0.png', + }, + { + emoji: '🏐', + name: 'volleyball', + shortcodes: ['volleyball'], + tags: ['ball', 'game'], + group: 'activities', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d0.png', + }, + { + emoji: '🏈', + name: 'football', + shortcodes: ['football'], + tags: ['american', 'ball', 'football'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c8.png', + }, + { + emoji: '🏉', + name: 'rugby_football', + shortcodes: ['rugby_football'], + tags: ['ball', 'football', 'rugby'], + group: 'activities', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c9.png', + }, + { + emoji: '🎾', + name: 'tennis', + shortcodes: ['tennis'], + tags: ['ball', 'racquet'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3be.png', + }, + { + emoji: '🥏', + name: 'flying_disc', + shortcodes: ['flying_disc'], + tags: ['ultimate'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94f.png', + }, + { + emoji: '🎳', + name: 'bowling', + shortcodes: ['bowling'], + tags: ['ball', 'game'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b3.png', + }, + { + emoji: '🏏', + name: 'cricket_game', + shortcodes: ['cricket_game'], + tags: ['ball', 'bat', 'game'], + group: 'activities', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3cf.png', + }, + { + emoji: '🏑', + name: 'field_hockey', + shortcodes: ['field_hockey'], + tags: ['ball', 'field', 'game', 'hockey', 'stick'], + group: 'activities', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d1.png', + }, + { + emoji: '🏒', + name: 'ice_hockey', + shortcodes: ['hockey'], + tags: ['game', 'hockey', 'ice', 'puck', 'stick'], + group: 'activities', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d2.png', + }, + { + emoji: '🥍', + name: 'lacrosse', + shortcodes: ['lacrosse'], + tags: ['ball', 'goal', 'stick'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94d.png', + }, + { + emoji: '🏓', + name: 'ping_pong', + shortcodes: ['ping_pong'], + tags: ['ball', 'bat', 'game', 'paddle', 'table tennis'], + group: 'activities', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3d3.png', + }, + { + emoji: '🏸', + name: 'badminton', + shortcodes: ['badminton'], + tags: ['birdie', 'game', 'racquet', 'shuttlecock'], + group: 'activities', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f8.png', + }, + { + emoji: '🥊', + name: 'boxing_glove', + shortcodes: ['boxing_glove'], + tags: ['boxing', 'glove'], + group: 'activities', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94a.png', + }, + { + emoji: '🥋', + name: 'martial_arts_uniform', + shortcodes: ['martial_arts_uniform'], + tags: ['judo', 'karate', 'martial arts', 'taekwondo', 'uniform'], + group: 'activities', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94b.png', + }, + { + emoji: '🥅', + name: 'goal_net', + shortcodes: ['goal_net'], + tags: ['goal', 'net'], + group: 'activities', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f945.png', + }, + { + emoji: '⛳', + name: 'golf', + shortcodes: ['golf'], + tags: ['golf', 'hole'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f3.png', + }, + { + emoji: '⛸', + name: 'ice_skate', + shortcodes: ['ice_skate'], + tags: ['ice', 'skate'], + group: 'activities', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26f8-fe0f.png', + }, + { + emoji: '🎣', + name: 'fishing_pole_and_fish', + shortcodes: ['fishing_pole', 'fishing_pole_and_fish'], + tags: ['fish', 'pole'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a3.png', + }, + { + emoji: '🤿', + name: 'diving_mask', + shortcodes: ['diving_mask'], + tags: ['diving', 'scuba', 'snorkeling'], + group: 'activities', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f93f.png', + }, + { + emoji: '🎽', + name: 'running_shirt_with_sash', + shortcodes: ['running_shirt', 'running_shirt_with_sash'], + tags: ['athletics', 'running', 'sash', 'shirt'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3bd.png', + }, + { + emoji: '🎿', + name: 'ski', + shortcodes: ['ski'], + tags: ['ski', 'snow'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3bf.png', + }, + { + emoji: '🛷', + name: 'sled', + shortcodes: ['sled'], + tags: ['sledge', 'sleigh'], + group: 'activities', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6f7.png', + }, + { + emoji: '🥌', + name: 'curling_stone', + shortcodes: ['curling_stone'], + tags: ['game', 'rock'], + group: 'activities', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f94c.png', + }, + { + emoji: '🎯', + name: 'dart', + shortcodes: ['bullseye', 'dart', 'direct_hit'], + tags: ['dart', 'direct hit', 'game', 'hit', 'target'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3af.png', + }, + { + emoji: '🪀', + name: 'yo_yo', + shortcodes: ['yo_yo'], + tags: ['fluctuate', 'toy'], + group: 'activities', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa80.png', + }, + { + emoji: '🪁', + name: 'kite', + shortcodes: ['kite'], + tags: ['fly', 'soar'], + group: 'activities', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa81.png', + }, + { + emoji: '🔫', + name: 'gun', + shortcodes: ['gun', 'pistol'], + tags: ['gun', 'handgun', 'pistol', 'revolver', 'tool', 'water', 'weapon'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52b.png', + }, + { + emoji: '🎱', + name: '8ball', + shortcodes: ['8ball', 'billiards'], + tags: ['8', 'ball', 'billiard', 'eight', 'game'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b1.png', + }, + { + emoji: '🔮', + name: 'crystal_ball', + shortcodes: ['crystal_ball'], + tags: ['ball', 'crystal', 'fairy tale', 'fantasy', 'fortune', 'tool'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52e.png', + }, + { + emoji: '🪄', + name: 'magic_wand', + shortcodes: ['magic_wand'], + tags: ['magic', 'witch', 'wizard'], + group: 'activities', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa84.png', + }, + { + emoji: '🎮', + name: 'video_game', + shortcodes: ['controller', 'video_game'], + tags: ['controller', 'game'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ae.png', + }, + { + emoji: '🕹', + name: 'joystick', + shortcodes: ['joystick'], + tags: ['game', 'video game'], + group: 'activities', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f579-fe0f.png', + }, + { + emoji: '🎰', + name: 'slot_machine', + shortcodes: ['slot_machine'], + tags: ['game', 'slot'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b0.png', + }, + { + emoji: '🎲', + name: 'game_die', + shortcodes: ['game_die'], + tags: ['dice', 'die', 'game'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b2.png', + }, + { + emoji: '🧩', + name: 'jigsaw', + shortcodes: ['jigsaw', 'puzzle_piece'], + tags: ['clue', 'interlocking', 'jigsaw', 'piece', 'puzzle'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e9.png', + }, + { + emoji: '🧸', + name: 'teddy_bear', + shortcodes: ['teddy_bear'], + tags: ['plaything', 'plush', 'stuffed', 'toy'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f8.png', + }, + { + emoji: '🪅', + name: 'pinata', + shortcodes: ['pinata'], + tags: ['celebration', 'party'], + group: 'activities', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa85.png', + }, + { + emoji: '🪩', + name: 'mirror_ball', + shortcodes: ['disco', 'disco_ball', 'mirror_ball'], + tags: ['dance', 'disco', 'glitter', 'party'], + group: 'activities', + emoticons: [], + version: 14, + }, + { + emoji: '🪆', + name: 'nesting_dolls', + shortcodes: ['nesting_dolls'], + tags: ['doll', 'nesting', 'russia'], + group: 'activities', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa86.png', + }, + { + emoji: '♠', + name: 'spades', + shortcodes: ['spades'], + tags: ['card', 'game'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2660-fe0f.png', + }, + { + emoji: '♥', + name: 'hearts', + shortcodes: ['hearts'], + tags: ['card', 'game'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2665-fe0f.png', + }, + { + emoji: '♦', + name: 'diamonds', + shortcodes: ['diamonds'], + tags: ['card', 'game'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2666-fe0f.png', + }, + { + emoji: '♣', + name: 'clubs', + shortcodes: ['clubs'], + tags: ['card', 'game'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2663-fe0f.png', + }, + { + emoji: '♟', + name: 'chess_pawn', + shortcodes: ['chess_pawn'], + tags: ['chess', 'dupe', 'expendable'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/265f-fe0f.png', + }, + { + emoji: '🃏', + name: 'black_joker', + shortcodes: ['black_joker'], + tags: ['card', 'game', 'wildcard'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f0cf.png', + }, + { + emoji: '🀄', + name: 'mahjong', + shortcodes: ['mahjong'], + tags: ['game', 'mahjong', 'red'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f004.png', + }, + { + emoji: '🎴', + name: 'flower_playing_cards', + shortcodes: ['flower_playing_cards'], + tags: ['card', 'flower', 'game', 'japanese', 'playing'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b4.png', + }, + { + emoji: '🎭', + name: 'performing_arts', + shortcodes: ['performing_arts'], + tags: ['art', 'mask', 'performing', 'theater', 'theatre'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ad.png', + }, + { + emoji: '🖼', + name: 'framed_picture', + shortcodes: ['frame_with_picture', 'framed_picture'], + tags: ['art', 'frame', 'museum', 'painting', 'picture'], + group: 'activities', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5bc-fe0f.png', + }, + { + emoji: '🎨', + name: 'art', + shortcodes: ['art', 'palette'], + tags: ['art', 'museum', 'painting', 'palette'], + group: 'activities', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a8.png', + }, + { + emoji: '🧵', + name: 'thread', + shortcodes: ['thread'], + tags: ['needle', 'sewing', 'spool', 'string'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f5.png', + }, + { + emoji: '🪡', + name: 'sewing_needle', + shortcodes: ['sewing_needle'], + tags: ['embroidery', 'needle', 'sewing', 'stitches', 'sutures', 'tailoring'], + group: 'activities', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa1.png', + }, + { + emoji: '🧶', + name: 'yarn', + shortcodes: ['yarn'], + tags: ['ball', 'crochet', 'knit'], + group: 'activities', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f6.png', + }, + { + emoji: '🪢', + name: 'knot', + shortcodes: ['knot'], + tags: ['rope', 'tangled', 'tie', 'twine', 'twist'], + group: 'activities', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa2.png', + }, + { + emoji: '👓', + name: 'eyeglasses', + shortcodes: ['eyeglasses', 'glasses'], + tags: ['clothing', 'eye', 'eyeglasses', 'eyewear'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f453.png', + }, + { + emoji: '🕶', + name: 'dark_sunglasses', + shortcodes: ['sunglasses'], + tags: ['dark', 'eye', 'eyewear', 'glasses'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f576-fe0f.png', + }, + { + emoji: '🥽', + name: 'goggles', + shortcodes: ['goggles'], + tags: ['eye protection', 'swimming', 'welding'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97d.png', + }, + { + emoji: '🥼', + name: 'lab_coat', + shortcodes: ['lab_coat'], + tags: ['doctor', 'experiment', 'scientist'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97c.png', + }, + { + emoji: '🦺', + name: 'safety_vest', + shortcodes: ['safety_vest'], + tags: ['emergency', 'safety', 'vest'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ba.png', + }, + { + emoji: '👔', + name: 'necktie', + shortcodes: ['necktie'], + tags: ['clothing', 'tie'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f454.png', + }, + { + emoji: '👕', + name: 'shirt', + shortcodes: ['shirt'], + tags: ['clothing', 'shirt', 'tshirt'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f455.png', + }, + { + emoji: '👖', + name: 'jeans', + shortcodes: ['jeans'], + tags: ['clothing', 'pants', 'trousers'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f456.png', + }, + { + emoji: '🧣', + name: 'scarf', + shortcodes: ['scarf'], + tags: ['neck'], + group: 'objects', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e3.png', + }, + { + emoji: '🧤', + name: 'gloves', + shortcodes: ['gloves'], + tags: ['hand'], + group: 'objects', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e4.png', + }, + { + emoji: '🧥', + name: 'coat', + shortcodes: ['coat'], + tags: ['jacket'], + group: 'objects', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e5.png', + }, + { + emoji: '🧦', + name: 'socks', + shortcodes: ['socks'], + tags: ['stocking'], + group: 'objects', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e6.png', + }, + { + emoji: '👗', + name: 'dress', + shortcodes: ['dress'], + tags: ['clothing'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f457.png', + }, + { + emoji: '👘', + name: 'kimono', + shortcodes: ['kimono'], + tags: ['clothing'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f458.png', + }, + { + emoji: '🥻', + name: 'sari', + shortcodes: ['sari'], + tags: ['clothing', 'dress'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97b.png', + }, + { + emoji: '🩱', + name: 'one_piece_swimsuit', + shortcodes: ['one_piece_swimsuit'], + tags: ['bathing suit'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa71.png', + }, + { + emoji: '🩲', + name: 'swim_brief', + shortcodes: ['briefs'], + tags: ['bathing suit', 'one-piece', 'swimsuit', 'underwear'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa72.png', + }, + { + emoji: '🩳', + name: 'shorts', + shortcodes: ['shorts'], + tags: ['bathing suit', 'pants', 'underwear'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa73.png', + }, + { + emoji: '👙', + name: 'bikini', + shortcodes: ['bikini'], + tags: ['clothing', 'swim'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f459.png', + }, + { + emoji: '👚', + name: 'womans_clothes', + shortcodes: ['womans_clothes'], + tags: ['clothing', 'woman'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45a.png', + }, + { + emoji: '🪭', + name: 'folding_hand_fan', + shortcodes: ['folding_fan'], + tags: ['cooling', 'dance', 'fan', 'flutter', 'hot', 'shy'], + group: 'objects', + emoticons: [], + version: 15, + }, + { + emoji: '👛', + name: 'purse', + shortcodes: ['purse'], + tags: ['clothing', 'coin'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45b.png', + }, + { + emoji: '👜', + name: 'handbag', + shortcodes: ['handbag'], + tags: ['bag', 'clothing', 'purse'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45c.png', + }, + { + emoji: '👝', + name: 'pouch', + shortcodes: ['clutch_bag', 'pouch'], + tags: ['bag', 'clothing', 'pouch'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45d.png', + }, + { + emoji: '🛍', + name: 'shopping', + shortcodes: ['shopping_bags'], + tags: ['bag', 'hotel', 'shopping'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6cd-fe0f.png', + }, + { + emoji: '🎒', + name: 'school_satchel', + shortcodes: ['backpack', 'school_satchel'], + tags: ['bag', 'rucksack', 'satchel', 'school'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f392.png', + }, + { + emoji: '🩴', + name: 'thong_sandal', + shortcodes: ['thong_sandal'], + tags: ['beach sandals', 'sandals', 'thong sandals', 'thongs', 'zōri'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa74.png', + }, + { + emoji: '👞', + name: 'mans_shoe', + shortcodes: ['mans_shoe'], + tags: ['clothing', 'man', 'shoe'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45e.png', + }, + { + emoji: '👟', + name: 'athletic_shoe', + shortcodes: ['athletic_shoe', 'sneaker'], + tags: ['athletic', 'clothing', 'shoe', 'sneaker'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f45f.png', + }, + { + emoji: '🥾', + name: 'hiking_boot', + shortcodes: ['hiking_boot'], + tags: ['backpacking', 'boot', 'camping', 'hiking'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97e.png', + }, + { + emoji: '🥿', + name: 'flat_shoe', + shortcodes: ['flat_shoe', 'womans_flat_shoe'], + tags: ['ballet flat', 'slip-on', 'slipper'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f97f.png', + }, + { + emoji: '👠', + name: 'high_heel', + shortcodes: ['high_heel'], + tags: ['clothing', 'heel', 'shoe', 'woman'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f460.png', + }, + { + emoji: '👡', + name: 'sandal', + shortcodes: ['sandal'], + tags: ['clothing', 'sandal', 'shoe', 'woman'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f461.png', + }, + { + emoji: '🩰', + name: 'ballet_shoes', + shortcodes: ['ballet_shoes'], + tags: ['ballet', 'dance'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa70.png', + }, + { + emoji: '👢', + name: 'boot', + shortcodes: ['boot'], + tags: ['boot', 'clothing', 'shoe', 'woman'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f462.png', + }, + { + emoji: '🪮', + name: 'hair_pick', + shortcodes: ['hair_pick'], + tags: ['afro', 'comb', 'hair', 'pick'], + group: 'objects', + emoticons: [], + version: 15, + }, + { + emoji: '👑', + name: 'crown', + shortcodes: ['crown'], + tags: ['clothing', 'king', 'queen'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f451.png', + }, + { + emoji: '👒', + name: 'womans_hat', + shortcodes: ['womans_hat'], + tags: ['clothing', 'hat', 'woman'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f452.png', + }, + { + emoji: '🎩', + name: 'tophat', + shortcodes: ['top_hat', 'tophat'], + tags: ['clothing', 'hat', 'top', 'tophat'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a9.png', + }, + { + emoji: '🎓', + name: 'mortar_board', + shortcodes: ['graduation_cap', 'mortar_board'], + tags: ['cap', 'celebration', 'clothing', 'graduation', 'hat'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f393.png', + }, + { + emoji: '🧢', + name: 'billed_cap', + shortcodes: ['billed_cap'], + tags: ['baseball cap'], + group: 'objects', + emoticons: [], + version: 5, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9e2.png', + }, + { + emoji: '🪖', + name: 'military_helmet', + shortcodes: ['military_helmet'], + tags: ['army', 'helmet', 'military', 'soldier', 'warrior'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa96.png', + }, + { + emoji: '⛑', + name: 'rescue_worker_helmet', + shortcodes: ['helmet_with_cross', 'rescue_worker_helmet'], + tags: ['aid', 'cross', 'face', 'hat', 'helmet'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26d1-fe0f.png', + }, + { + emoji: '📿', + name: 'prayer_beads', + shortcodes: ['prayer_beads'], + tags: ['beads', 'clothing', 'necklace', 'prayer', 'religion'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ff.png', + }, + { + emoji: '💄', + name: 'lipstick', + shortcodes: ['lipstick'], + tags: ['cosmetics', 'makeup'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f484.png', + }, + { + emoji: '💍', + name: 'ring', + shortcodes: ['ring'], + tags: ['diamond'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48d.png', + }, + { + emoji: '💎', + name: 'gem', + shortcodes: ['gem'], + tags: ['diamond', 'gem', 'jewel'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48e.png', + }, + { + emoji: '🔇', + name: 'mute', + shortcodes: ['mute', 'no_sound'], + tags: ['mute', 'quiet', 'silent', 'speaker'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f507.png', + }, + { + emoji: '🔈', + name: 'speaker', + shortcodes: ['low_volume', 'quiet_sound', 'speaker'], + tags: ['soft'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f508.png', + }, + { + emoji: '🔉', + name: 'sound', + shortcodes: ['medium_volumne', 'sound'], + tags: ['medium'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f509.png', + }, + { + emoji: '🔊', + name: 'loud_sound', + shortcodes: ['high_volume', 'loud_sound'], + tags: ['loud'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50a.png', + }, + { + emoji: '📢', + name: 'loudspeaker', + shortcodes: ['loudspeaker'], + tags: ['loud', 'public address'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e2.png', + }, + { + emoji: '📣', + name: 'mega', + shortcodes: ['mega', 'megaphone'], + tags: ['cheering'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e3.png', + }, + { + emoji: '📯', + name: 'postal_horn', + shortcodes: ['postal_horn'], + tags: ['horn', 'post', 'postal'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ef.png', + }, + { + emoji: '🔔', + name: 'bell', + shortcodes: ['bell'], + tags: ['bell'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f514.png', + }, + { + emoji: '🔕', + name: 'no_bell', + shortcodes: ['no_bell'], + tags: ['bell', 'forbidden', 'mute', 'quiet', 'silent'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f515.png', + }, + { + emoji: '🎼', + name: 'musical_score', + shortcodes: ['musical_score'], + tags: ['music', 'score'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3bc.png', + }, + { + emoji: '🎵', + name: 'musical_note', + shortcodes: ['musical_note'], + tags: ['music', 'note'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b5.png', + }, + { + emoji: '🎶', + name: 'notes', + shortcodes: ['musical_notes', 'notes'], + tags: ['music', 'note', 'notes'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b6.png', + }, + { + emoji: '🎙', + name: 'studio_microphone', + shortcodes: ['studio_microphone'], + tags: ['mic', 'microphone', 'music', 'studio'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f399-fe0f.png', + }, + { + emoji: '🎚', + name: 'level_slider', + shortcodes: ['level_slider'], + tags: ['level', 'music', 'slider'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f39a-fe0f.png', + }, + { + emoji: '🎛', + name: 'control_knobs', + shortcodes: ['control_knobs'], + tags: ['control', 'knobs', 'music'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f39b-fe0f.png', + }, + { + emoji: '🎤', + name: 'microphone', + shortcodes: ['microphone'], + tags: ['karaoke', 'mic'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a4.png', + }, + { + emoji: '🎧', + name: 'headphones', + shortcodes: ['headphones'], + tags: ['earbud'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a7.png', + }, + { + emoji: '📻', + name: 'radio', + shortcodes: ['radio'], + tags: ['video'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4fb.png', + }, + { + emoji: '🎷', + name: 'saxophone', + shortcodes: ['saxophone'], + tags: ['instrument', 'music', 'sax'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b7.png', + }, + { + emoji: '🪗', + name: 'accordion', + shortcodes: ['accordion'], + tags: ['concertina', 'squeeze box'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa97.png', + }, + { + emoji: '🎸', + name: 'guitar', + shortcodes: ['guitar'], + tags: ['instrument', 'music'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b8.png', + }, + { + emoji: '🎹', + name: 'musical_keyboard', + shortcodes: ['musical_keyboard'], + tags: ['instrument', 'keyboard', 'music', 'piano'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3b9.png', + }, + { + emoji: '🎺', + name: 'trumpet', + shortcodes: ['trumpet'], + tags: ['instrument', 'music'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ba.png', + }, + { + emoji: '🎻', + name: 'violin', + shortcodes: ['violin'], + tags: ['instrument', 'music'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3bb.png', + }, + { + emoji: '🪕', + name: 'banjo', + shortcodes: ['banjo'], + tags: ['music', 'stringed'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa95.png', + }, + { + emoji: '🥁', + name: 'drum', + shortcodes: ['drum'], + tags: ['drumsticks', 'music'], + group: 'objects', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f941.png', + }, + { + emoji: '🪘', + name: 'long_drum', + shortcodes: ['long_drum'], + tags: ['beat', 'conga', 'drum', 'rhythm'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa98.png', + }, + { + emoji: '🪇', + name: 'maracas', + shortcodes: ['maracas'], + tags: ['instrument', 'music', 'percussion', 'rattle', 'shake'], + group: 'objects', + emoticons: [], + version: 15, + }, + { + emoji: '🪈', + name: 'flute', + shortcodes: ['flute'], + tags: ['fife', 'music', 'pipe', 'recorder', 'woodwind'], + group: 'objects', + emoticons: [], + version: 15, + }, + { + emoji: '📱', + name: 'iphone', + shortcodes: ['android', 'iphone', 'mobile_phone'], + tags: ['cell', 'mobile', 'phone', 'telephone'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f1.png', + }, + { + emoji: '📲', + name: 'calling', + shortcodes: ['calling', 'mobile_phone_arrow'], + tags: ['arrow', 'cell', 'mobile', 'phone', 'receive'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f2.png', + }, + { + emoji: '☎', + name: 'phone', + shortcodes: ['telephone'], + tags: ['phone'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/260e-fe0f.png', + }, + { + emoji: '📞', + name: 'telephone_receiver', + shortcodes: ['telephone_receiver'], + tags: ['phone', 'receiver', 'telephone'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4de.png', + }, + { + emoji: '📟', + name: 'pager', + shortcodes: ['pager'], + tags: ['pager'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4df.png', + }, + { + emoji: '📠', + name: 'fax', + shortcodes: ['fax', 'fax_machine'], + tags: ['fax'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e0.png', + }, + { + emoji: '🔋', + name: 'battery', + shortcodes: ['battery'], + tags: ['battery'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50b.png', + }, + { + emoji: '🪫', + name: 'low_battery', + shortcodes: ['low_battery'], + tags: ['electronic', 'low energy'], + group: 'objects', + emoticons: [], + version: 14, + }, + { + emoji: '🔌', + name: 'electric_plug', + shortcodes: ['electric_plug'], + tags: ['electric', 'electricity', 'plug'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50c.png', + }, + { + emoji: '💻', + name: 'computer', + shortcodes: ['laptop'], + tags: ['computer', 'pc', 'personal'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4bb.png', + }, + { + emoji: '🖥', + name: 'desktop_computer', + shortcodes: ['computer', 'desktop_computer'], + tags: ['computer', 'desktop'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5a5-fe0f.png', + }, + { + emoji: '🖨', + name: 'printer', + shortcodes: ['printer'], + tags: ['computer'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5a8-fe0f.png', + }, + { + emoji: '⌨', + name: 'keyboard', + shortcodes: ['keyboard'], + tags: ['computer'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2328-fe0f.png', + }, + { + emoji: '🖱', + name: 'computer_mouse', + shortcodes: ['computer_mouse'], + tags: ['computer'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5b1-fe0f.png', + }, + { + emoji: '🖲', + name: 'trackball', + shortcodes: ['trackball'], + tags: ['computer'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5b2-fe0f.png', + }, + { + emoji: '💽', + name: 'minidisc', + shortcodes: ['computer_disk', 'minidisc'], + tags: ['computer', 'disk', 'minidisk', 'optical'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4bd.png', + }, + { + emoji: '💾', + name: 'floppy_disk', + shortcodes: ['floppy_disk'], + tags: ['computer', 'disk', 'floppy'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4be.png', + }, + { + emoji: '💿', + name: 'cd', + shortcodes: ['cd', 'optical_disk'], + tags: ['cd', 'computer', 'disk', 'optical'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4bf.png', + }, + { + emoji: '📀', + name: 'dvd', + shortcodes: ['dvd'], + tags: ['blu-ray', 'computer', 'disk', 'optical'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c0.png', + }, + { + emoji: '🧮', + name: 'abacus', + shortcodes: ['abacus'], + tags: ['calculation'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ee.png', + }, + { + emoji: '🎥', + name: 'movie_camera', + shortcodes: ['movie_camera'], + tags: ['camera', 'cinema', 'movie'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a5.png', + }, + { + emoji: '🎞', + name: 'film_strip', + shortcodes: ['film_frames'], + tags: ['cinema', 'film', 'frames', 'movie'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f39e-fe0f.png', + }, + { + emoji: '📽', + name: 'film_projector', + shortcodes: ['film_projector'], + tags: ['cinema', 'film', 'movie', 'projector', 'video'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4fd-fe0f.png', + }, + { + emoji: '🎬', + name: 'clapper', + shortcodes: ['clapper'], + tags: ['clapper', 'movie'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ac.png', + }, + { + emoji: '📺', + name: 'tv', + shortcodes: ['tv'], + tags: ['tv', 'video'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4fa.png', + }, + { + emoji: '📷', + name: 'camera', + shortcodes: ['camera'], + tags: ['video'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f7.png', + }, + { + emoji: '📸', + name: 'camera_flash', + shortcodes: ['camera_with_flash'], + tags: ['camera', 'flash', 'video'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f8.png', + }, + { + emoji: '📹', + name: 'video_camera', + shortcodes: ['video_camera'], + tags: ['camera', 'video'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f9.png', + }, + { + emoji: '📼', + name: 'vhs', + shortcodes: ['vhs', 'videocassette'], + tags: ['tape', 'vhs', 'video'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4fc.png', + }, + { + emoji: '🔍', + name: 'mag', + shortcodes: ['mag'], + tags: ['glass', 'magnifying', 'search', 'tool'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50d.png', + }, + { + emoji: '🔎', + name: 'mag_right', + shortcodes: ['mag_right'], + tags: ['glass', 'magnifying', 'search', 'tool'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50e.png', + }, + { + emoji: '🕯', + name: 'candle', + shortcodes: ['candle'], + tags: ['light'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f56f-fe0f.png', + }, + { + emoji: '💡', + name: 'bulb', + shortcodes: ['bulb', 'light_bulb'], + tags: ['bulb', 'comic', 'electric', 'idea', 'light'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a1.png', + }, + { + emoji: '🔦', + name: 'flashlight', + shortcodes: ['flashlight'], + tags: ['electric', 'light', 'tool', 'torch'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f526.png', + }, + { + emoji: '🏮', + name: 'izakaya_lantern', + shortcodes: ['izakaya_lantern', 'red_paper_lantern'], + tags: ['bar', 'lantern', 'light', 'red'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3ee.png', + }, + { + emoji: '🪔', + name: 'diya_lamp', + shortcodes: ['diya_lamp'], + tags: ['diya', 'lamp', 'oil'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa94.png', + }, + { + emoji: '📔', + name: 'notebook_with_decorative_cover', + shortcodes: ['notebook_with_decorative_cover'], + tags: ['book', 'cover', 'decorated', 'notebook'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d4.png', + }, + { + emoji: '📕', + name: 'closed_book', + shortcodes: ['closed_book'], + tags: ['book', 'closed'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d5.png', + }, + { + emoji: '📖', + name: 'book', + shortcodes: ['book', 'open_book'], + tags: ['book', 'open'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d6.png', + }, + { + emoji: '📗', + name: 'green_book', + shortcodes: ['green_book'], + tags: ['book', 'green'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d7.png', + }, + { + emoji: '📘', + name: 'blue_book', + shortcodes: ['blue_book'], + tags: ['blue', 'book'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d8.png', + }, + { + emoji: '📙', + name: 'orange_book', + shortcodes: ['orange_book'], + tags: ['book', 'orange'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d9.png', + }, + { + emoji: '📚', + name: 'books', + shortcodes: ['books'], + tags: ['book'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4da.png', + }, + { + emoji: '📓', + name: 'notebook', + shortcodes: ['notebook'], + tags: ['notebook'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d3.png', + }, + { + emoji: '📒', + name: 'ledger', + shortcodes: ['ledger'], + tags: ['notebook'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d2.png', + }, + { + emoji: '📃', + name: 'page_with_curl', + shortcodes: ['page_with_curl'], + tags: ['curl', 'document', 'page'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c3.png', + }, + { + emoji: '📜', + name: 'scroll', + shortcodes: ['scroll'], + tags: ['paper'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4dc.png', + }, + { + emoji: '📄', + name: 'page_facing_up', + shortcodes: ['page_facing_up'], + tags: ['document', 'page'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c4.png', + }, + { + emoji: '📰', + name: 'newspaper', + shortcodes: ['newspaper'], + tags: ['news', 'paper'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f0.png', + }, + { + emoji: '🗞', + name: 'newspaper_roll', + shortcodes: ['rolled_up_newspaper'], + tags: ['news', 'newspaper', 'paper', 'rolled'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5de-fe0f.png', + }, + { + emoji: '📑', + name: 'bookmark_tabs', + shortcodes: ['bookmark_tabs'], + tags: ['bookmark', 'mark', 'marker', 'tabs'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d1.png', + }, + { + emoji: '🔖', + name: 'bookmark', + shortcodes: ['bookmark'], + tags: ['mark'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f516.png', + }, + { + emoji: '🏷', + name: 'label', + shortcodes: ['label'], + tags: ['label'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f7-fe0f.png', + }, + { + emoji: '💰', + name: 'moneybag', + shortcodes: ['moneybag'], + tags: ['bag', 'dollar', 'money', 'moneybag'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b0.png', + }, + { + emoji: '🪙', + name: 'coin', + shortcodes: ['coin'], + tags: ['gold', 'metal', 'money', 'silver', 'treasure'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa99.png', + }, + { + emoji: '💴', + name: 'yen', + shortcodes: ['yen'], + tags: ['banknote', 'bill', 'currency', 'money', 'note', 'yen'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b4.png', + }, + { + emoji: '💵', + name: 'dollar', + shortcodes: ['dollar'], + tags: ['banknote', 'bill', 'currency', 'dollar', 'money', 'note'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b5.png', + }, + { + emoji: '💶', + name: 'euro', + shortcodes: ['euro'], + tags: ['banknote', 'bill', 'currency', 'euro', 'money', 'note'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b6.png', + }, + { + emoji: '💷', + name: 'pound', + shortcodes: ['pound'], + tags: ['banknote', 'bill', 'currency', 'money', 'note', 'pound'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b7.png', + }, + { + emoji: '💸', + name: 'money_with_wings', + shortcodes: ['money_with_wings'], + tags: ['banknote', 'bill', 'fly', 'money', 'wings'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b8.png', + }, + { + emoji: '💳', + name: 'credit_card', + shortcodes: ['credit_card'], + tags: ['card', 'credit', 'money'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b3.png', + }, + { + emoji: '🧾', + name: 'receipt', + shortcodes: ['receipt'], + tags: ['accounting', 'bookkeeping', 'evidence', 'proof'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fe.png', + }, + { + emoji: '💹', + name: 'chart', + shortcodes: ['chart'], + tags: ['chart', 'graph', 'growth', 'money', 'yen'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b9.png', + }, + { + emoji: '✉', + name: 'envelope', + shortcodes: ['envelope'], + tags: ['email', 'letter'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2709-fe0f.png', + }, + { + emoji: '📧', + name: 'e-mail', + shortcodes: ['e-mail', 'email'], + tags: ['email', 'letter', 'mail'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e7.png', + }, + { + emoji: '📨', + name: 'incoming_envelope', + shortcodes: ['incoming_envelope'], + tags: ['e-mail', 'email', 'envelope', 'incoming', 'letter', 'receive'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e8.png', + }, + { + emoji: '📩', + name: 'envelope_with_arrow', + shortcodes: ['envelope_with_arrow'], + tags: ['arrow', 'e-mail', 'email', 'envelope', 'outgoing'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e9.png', + }, + { + emoji: '📤', + name: 'outbox_tray', + shortcodes: ['outbox_tray'], + tags: ['box', 'letter', 'mail', 'outbox', 'sent', 'tray'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e4.png', + }, + { + emoji: '📥', + name: 'inbox_tray', + shortcodes: ['inbox_tray'], + tags: ['box', 'inbox', 'letter', 'mail', 'receive', 'tray'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e5.png', + }, + { + emoji: '📦', + name: 'package', + shortcodes: ['package'], + tags: ['box', 'parcel'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e6.png', + }, + { + emoji: '📫', + name: 'mailbox', + shortcodes: ['mailbox'], + tags: ['closed', 'mail', 'mailbox', 'postbox'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4eb.png', + }, + { + emoji: '📪', + name: 'mailbox_closed', + shortcodes: ['mailbox_closed'], + tags: ['closed', 'lowered', 'mail', 'mailbox', 'postbox'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ea.png', + }, + { + emoji: '📬', + name: 'mailbox_with_mail', + shortcodes: ['mailbox_with_mail'], + tags: ['mail', 'mailbox', 'open', 'postbox'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ec.png', + }, + { + emoji: '📭', + name: 'mailbox_with_no_mail', + shortcodes: ['mailbox_with_no_mail'], + tags: ['lowered', 'mail', 'mailbox', 'open', 'postbox'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ed.png', + }, + { + emoji: '📮', + name: 'postbox', + shortcodes: ['postbox'], + tags: ['mail', 'mailbox'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ee.png', + }, + { + emoji: '🗳', + name: 'ballot_box', + shortcodes: ['ballot_box'], + tags: ['ballot', 'box'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5f3-fe0f.png', + }, + { + emoji: '✏', + name: 'pencil2', + shortcodes: ['pencil'], + tags: ['pencil'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/270f-fe0f.png', + }, + { + emoji: '✒', + name: 'black_nib', + shortcodes: ['black_nib'], + tags: ['nib', 'pen'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2712-fe0f.png', + }, + { + emoji: '🖋', + name: 'fountain_pen', + shortcodes: ['fountain_pen'], + tags: ['fountain', 'pen'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f58b-fe0f.png', + }, + { + emoji: '🖊', + name: 'pen', + shortcodes: ['pen'], + tags: ['ballpoint'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f58a-fe0f.png', + }, + { + emoji: '🖌', + name: 'paintbrush', + shortcodes: ['paintbrush'], + tags: ['painting'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f58c-fe0f.png', + }, + { + emoji: '🖍', + name: 'crayon', + shortcodes: ['crayon'], + tags: ['crayon'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f58d-fe0f.png', + }, + { + emoji: '📝', + name: 'memo', + shortcodes: ['memo'], + tags: ['pencil'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4dd.png', + }, + { + emoji: '💼', + name: 'briefcase', + shortcodes: ['briefcase'], + tags: ['briefcase'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4bc.png', + }, + { + emoji: '📁', + name: 'file_folder', + shortcodes: ['file_folder'], + tags: ['file', 'folder'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c1.png', + }, + { + emoji: '📂', + name: 'open_file_folder', + shortcodes: ['open_file_folder'], + tags: ['file', 'folder', 'open'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c2.png', + }, + { + emoji: '🗂', + name: 'card_index_dividers', + shortcodes: ['card_index_dividers'], + tags: ['card', 'dividers', 'index'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5c2-fe0f.png', + }, + { + emoji: '📅', + name: 'date', + shortcodes: ['date'], + tags: ['date'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c5.png', + }, + { + emoji: '📆', + name: 'calendar', + shortcodes: ['calendar'], + tags: ['calendar'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c6.png', + }, + { + emoji: '🗒', + name: 'spiral_notepad', + shortcodes: ['notepad_spiral'], + tags: ['note', 'pad', 'spiral'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5d2-fe0f.png', + }, + { + emoji: '🗓', + name: 'spiral_calendar', + shortcodes: ['calendar_spiral'], + tags: ['calendar', 'pad', 'spiral'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5d3-fe0f.png', + }, + { + emoji: '📇', + name: 'card_index', + shortcodes: ['card_index'], + tags: ['card', 'index', 'rolodex'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c7.png', + }, + { + emoji: '📈', + name: 'chart_with_upwards_trend', + shortcodes: ['chart_increasing', 'chart_with_upwards_trend'], + tags: ['chart', 'graph', 'growth', 'trend', 'upward'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c8.png', + }, + { + emoji: '📉', + name: 'chart_with_downwards_trend', + shortcodes: ['chart_decreasing', 'chart_with_downwards_trend'], + tags: ['chart', 'down', 'graph', 'trend'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4c9.png', + }, + { + emoji: '📊', + name: 'bar_chart', + shortcodes: ['bar_chart'], + tags: ['bar', 'chart', 'graph'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ca.png', + }, + { + emoji: '📋', + name: 'clipboard', + shortcodes: ['clipboard'], + tags: ['clipboard'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4cb.png', + }, + { + emoji: '📌', + name: 'pushpin', + shortcodes: ['pushpin'], + tags: ['pin'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4cc.png', + }, + { + emoji: '📍', + name: 'round_pushpin', + shortcodes: ['round_pushpin'], + tags: ['pin', 'pushpin'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4cd.png', + }, + { + emoji: '📎', + name: 'paperclip', + shortcodes: ['paperclip'], + tags: ['paperclip'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4ce.png', + }, + { + emoji: '🖇', + name: 'paperclips', + shortcodes: ['paperclips'], + tags: ['link', 'paperclip'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f587-fe0f.png', + }, + { + emoji: '📏', + name: 'straight_ruler', + shortcodes: ['straight_ruler'], + tags: ['ruler', 'straight edge'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4cf.png', + }, + { + emoji: '📐', + name: 'triangular_ruler', + shortcodes: ['triangular_ruler'], + tags: ['ruler', 'set', 'triangle'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4d0.png', + }, + { + emoji: '✂', + name: 'scissors', + shortcodes: ['scissors'], + tags: ['cutting', 'tool'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2702-fe0f.png', + }, + { + emoji: '🗃', + name: 'card_file_box', + shortcodes: ['card_file_box'], + tags: ['box', 'card', 'file'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5c3-fe0f.png', + }, + { + emoji: '🗄', + name: 'file_cabinet', + shortcodes: ['file_cabinet'], + tags: ['cabinet', 'file', 'filing'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5c4-fe0f.png', + }, + { + emoji: '🗑', + name: 'wastebasket', + shortcodes: ['trashcan', 'wastebasket'], + tags: ['wastebasket'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5d1-fe0f.png', + }, + { + emoji: '🔒', + name: 'lock', + shortcodes: ['lock', 'locked'], + tags: ['closed'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f512.png', + }, + { + emoji: '🔓', + name: 'unlock', + shortcodes: ['unlock', 'unlocked'], + tags: ['lock', 'open', 'unlock'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f513.png', + }, + { + emoji: '🔏', + name: 'lock_with_ink_pen', + shortcodes: ['lock_with_ink_pen', 'locked_with_pen'], + tags: ['ink', 'lock', 'nib', 'pen', 'privacy'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f50f.png', + }, + { + emoji: '🔐', + name: 'closed_lock_with_key', + shortcodes: ['closed_lock_with_key', 'locked_with_key'], + tags: ['closed', 'key', 'lock', 'secure'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f510.png', + }, + { + emoji: '🔑', + name: 'key', + shortcodes: ['key'], + tags: ['lock', 'password'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f511.png', + }, + { + emoji: '🗝', + name: 'old_key', + shortcodes: ['old_key'], + tags: ['clue', 'key', 'lock', 'old'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5dd-fe0f.png', + }, + { + emoji: '🔨', + name: 'hammer', + shortcodes: ['hammer'], + tags: ['tool'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f528.png', + }, + { + emoji: '🪓', + name: 'axe', + shortcodes: ['axe'], + tags: ['chop', 'hatchet', 'split', 'wood'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa93.png', + }, + { + emoji: '⛏', + name: 'pick', + shortcodes: ['pick'], + tags: ['mining', 'tool'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26cf-fe0f.png', + }, + { + emoji: '⚒', + name: 'hammer_and_pick', + shortcodes: ['hammer_and_pick'], + tags: ['hammer', 'pick', 'tool'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2692-fe0f.png', + }, + { + emoji: '🛠', + name: 'hammer_and_wrench', + shortcodes: ['hammer_and_wrench'], + tags: ['hammer', 'spanner', 'tool', 'wrench'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e0-fe0f.png', + }, + { + emoji: '🗡', + name: 'dagger', + shortcodes: ['dagger'], + tags: ['knife', 'weapon'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5e1-fe0f.png', + }, + { + emoji: '⚔', + name: 'crossed_swords', + shortcodes: ['crossed_swords'], + tags: ['crossed', 'swords', 'weapon'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2694-fe0f.png', + }, + { + emoji: '💣', + name: 'bomb', + shortcodes: ['bomb'], + tags: ['comic'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a3.png', + }, + { + emoji: '🪃', + name: 'boomerang', + shortcodes: ['boomerang'], + tags: ['rebound', 'repercussion'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa83.png', + }, + { + emoji: '🏹', + name: 'bow_and_arrow', + shortcodes: ['bow_and_arrow'], + tags: ['archer', 'arrow', 'bow', 'sagittarius', 'zodiac'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f9.png', + }, + { + emoji: '🛡', + name: 'shield', + shortcodes: ['shield'], + tags: ['weapon'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6e1-fe0f.png', + }, + { + emoji: '🪚', + name: 'carpentry_saw', + shortcodes: ['carpentry_saw'], + tags: ['carpenter', 'lumber', 'saw', 'tool'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9a.png', + }, + { + emoji: '🔧', + name: 'wrench', + shortcodes: ['wrench'], + tags: ['spanner', 'tool'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f527.png', + }, + { + emoji: '🪛', + name: 'screwdriver', + shortcodes: ['screwdriver'], + tags: ['screw', 'tool'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9b.png', + }, + { + emoji: '🔩', + name: 'nut_and_bolt', + shortcodes: ['nut_and_bolt'], + tags: ['bolt', 'nut', 'tool'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f529.png', + }, + { + emoji: '⚙', + name: 'gear', + shortcodes: ['gear'], + tags: ['cog', 'cogwheel', 'tool'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2699-fe0f.png', + }, + { + emoji: '🗜', + name: 'clamp', + shortcodes: ['clamp', 'compression'], + tags: ['compress', 'tool', 'vice'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5dc-fe0f.png', + }, + { + emoji: '⚖', + name: 'balance_scale', + shortcodes: ['scales'], + tags: ['balance', 'justice', 'libra', 'scale', 'zodiac'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2696-fe0f.png', + }, + { + emoji: '🦯', + name: 'probing_cane', + shortcodes: ['probing_cane', 'white_cane'], + tags: ['accessibility', 'blind'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9af.png', + }, + { + emoji: '🔗', + name: 'link', + shortcodes: ['link'], + tags: ['link'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f517.png', + }, + { + emoji: '⛓‍💥', + name: 'broken_chain', + shortcodes: ['broken_chain'], + tags: ['break', 'breaking', 'chain', 'cuffs', 'freedom'], + group: 'objects', + emoticons: [], + version: 15.1, + }, + { + emoji: '⛓', + name: 'chains', + shortcodes: ['chains'], + tags: ['chain'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26d3-fe0f.png', + }, + { + emoji: '🪝', + name: 'hook', + shortcodes: ['hook'], + tags: ['catch', 'crook', 'curve', 'ensnare', 'selling point'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9d.png', + }, + { + emoji: '🧰', + name: 'toolbox', + shortcodes: ['toolbox'], + tags: ['chest', 'mechanic', 'tool'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f0.png', + }, + { + emoji: '🧲', + name: 'magnet', + shortcodes: ['magnet'], + tags: ['attraction', 'horseshoe', 'magnetic'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f2.png', + }, + { + emoji: '🪜', + name: 'ladder', + shortcodes: ['ladder'], + tags: ['climb', 'rung', 'step'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9c.png', + }, + { + emoji: '⚗', + name: 'alembic', + shortcodes: ['alembic'], + tags: ['chemistry', 'tool'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2697-fe0f.png', + }, + { + emoji: '🧪', + name: 'test_tube', + shortcodes: ['test_tube'], + tags: ['chemist', 'chemistry', 'experiment', 'lab', 'science'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ea.png', + }, + { + emoji: '🧫', + name: 'petri_dish', + shortcodes: ['petri_dish'], + tags: ['bacteria', 'biologist', 'biology', 'culture', 'lab'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9eb.png', + }, + { + emoji: '🧬', + name: 'dna', + shortcodes: ['dna', 'double_helix'], + tags: ['biologist', 'evolution', 'gene', 'genetics', 'life'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ec.png', + }, + { + emoji: '🔬', + name: 'microscope', + shortcodes: ['microscope'], + tags: ['science', 'tool'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52c.png', + }, + { + emoji: '🔭', + name: 'telescope', + shortcodes: ['telescope'], + tags: ['science', 'tool'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52d.png', + }, + { + emoji: '📡', + name: 'satellite', + shortcodes: ['satellite_antenna'], + tags: ['antenna', 'dish', 'satellite'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4e1.png', + }, + { + emoji: '💉', + name: 'syringe', + shortcodes: ['syringe'], + tags: ['medicine', 'needle', 'shot', 'sick'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f489.png', + }, + { + emoji: '🩸', + name: 'drop_of_blood', + shortcodes: ['drop_of_blood'], + tags: ['bleed', 'blood donation', 'injury', 'medicine', 'menstruation'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa78.png', + }, + { + emoji: '💊', + name: 'pill', + shortcodes: ['pill'], + tags: ['doctor', 'medicine', 'sick'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f48a.png', + }, + { + emoji: '🩹', + name: 'adhesive_bandage', + shortcodes: ['adhesive_bandage', 'bandaid'], + tags: ['bandage'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa79.png', + }, + { + emoji: '🩼', + name: 'crutch', + shortcodes: ['crutch'], + tags: ['cane', 'disability', 'hurt', 'mobility aid', 'stick'], + group: 'objects', + emoticons: [], + version: 14, + }, + { + emoji: '🩺', + name: 'stethoscope', + shortcodes: ['stethoscope'], + tags: ['doctor', 'heart', 'medicine'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa7a.png', + }, + { + emoji: '🩻', + name: 'x_ray', + shortcodes: ['x-ray', 'xray'], + tags: ['bones', 'doctor', 'medical', 'skeleton'], + group: 'objects', + emoticons: [], + version: 14, + }, + { + emoji: '🚪', + name: 'door', + shortcodes: ['door'], + tags: ['door'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6aa.png', + }, + { + emoji: '🛗', + name: 'elevator', + shortcodes: ['elevator'], + tags: ['accessibility', 'hoist', 'lift'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d7.png', + }, + { + emoji: '🪞', + name: 'mirror', + shortcodes: ['mirror'], + tags: ['reflection', 'reflector', 'speculum'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9e.png', + }, + { + emoji: '🪟', + name: 'window', + shortcodes: ['window'], + tags: ['frame', 'fresh air', 'opening', 'transparent', 'view'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa9f.png', + }, + { + emoji: '🛏', + name: 'bed', + shortcodes: ['bed'], + tags: ['hotel', 'sleep'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6cf-fe0f.png', + }, + { + emoji: '🛋', + name: 'couch_and_lamp', + shortcodes: ['couch_and_lamp'], + tags: ['couch', 'hotel', 'lamp'], + group: 'objects', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6cb-fe0f.png', + }, + { + emoji: '🪑', + name: 'chair', + shortcodes: ['chair'], + tags: ['seat', 'sit'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa91.png', + }, + { + emoji: '🚽', + name: 'toilet', + shortcodes: ['toilet'], + tags: ['toilet'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6bd.png', + }, + { + emoji: '🪠', + name: 'plunger', + shortcodes: ['plunger'], + tags: ['force cup', 'plumber', 'suction', 'toilet'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa0.png', + }, + { + emoji: '🚿', + name: 'shower', + shortcodes: ['shower'], + tags: ['water'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6bf.png', + }, + { + emoji: '🛁', + name: 'bathtub', + shortcodes: ['bathtub'], + tags: ['bath'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c1.png', + }, + { + emoji: '🪤', + name: 'mouse_trap', + shortcodes: ['mouse_trap'], + tags: ['bait', 'mousetrap', 'snare', 'trap'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa4.png', + }, + { + emoji: '🪒', + name: 'razor', + shortcodes: ['razor'], + tags: ['sharp', 'shave'], + group: 'objects', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1fa92.png', + }, + { + emoji: '🧴', + name: 'lotion_bottle', + shortcodes: ['lotion_bottle'], + tags: ['lotion', 'moisturizer', 'shampoo', 'sunscreen'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f4.png', + }, + { + emoji: '🧷', + name: 'safety_pin', + shortcodes: ['safety_pin'], + tags: ['diaper', 'punk rock'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f7.png', + }, + { + emoji: '🧹', + name: 'broom', + shortcodes: ['broom'], + tags: ['cleaning', 'sweeping', 'witch'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9f9.png', + }, + { + emoji: '🧺', + name: 'basket', + shortcodes: ['basket'], + tags: ['farming', 'laundry', 'picnic'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fa.png', + }, + { + emoji: '🧻', + name: 'roll_of_paper', + shortcodes: ['roll_of_paper', 'toilet_paper'], + tags: ['paper towels', 'toilet paper'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fb.png', + }, + { + emoji: '🪣', + name: 'bucket', + shortcodes: ['bucket'], + tags: ['cask', 'pail', 'vat'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa3.png', + }, + { + emoji: '🧼', + name: 'soap', + shortcodes: ['soap'], + tags: ['bar', 'bathing', 'cleaning', 'lather', 'soapdish'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fc.png', + }, + { + emoji: '🫧', + name: 'bubbles', + shortcodes: ['bubbles'], + tags: ['burp', 'clean', 'soap', 'underwater'], + group: 'objects', + emoticons: [], + version: 14, + }, + { + emoji: '🪥', + name: 'toothbrush', + shortcodes: ['toothbrush'], + tags: ['bathroom', 'brush', 'clean', 'dental', 'hygiene', 'teeth'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa5.png', + }, + { + emoji: '🧽', + name: 'sponge', + shortcodes: ['sponge'], + tags: ['absorbing', 'cleaning', 'porous'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9fd.png', + }, + { + emoji: '🧯', + name: 'fire_extinguisher', + shortcodes: ['fire_extinguisher'], + tags: ['extinguish', 'fire', 'quench'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ef.png', + }, + { + emoji: '🛒', + name: 'shopping_cart', + shortcodes: ['shopping_cart'], + tags: ['cart', 'shopping', 'trolley'], + group: 'objects', + emoticons: [], + version: 3, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d2.png', + }, + { + emoji: '🚬', + name: 'smoking', + shortcodes: ['cigarette', 'smoking'], + tags: ['smoking'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ac.png', + }, + { + emoji: '⚰', + name: 'coffin', + shortcodes: ['coffin'], + tags: ['death'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26b0-fe0f.png', + }, + { + emoji: '🪦', + name: 'headstone', + shortcodes: ['headstone'], + tags: ['cemetery', 'grave', 'graveyard', 'tombstone'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa6.png', + }, + { + emoji: '⚱', + name: 'funeral_urn', + shortcodes: ['funeral_urn'], + tags: ['ashes', 'death', 'funeral', 'urn'], + group: 'objects', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26b1-fe0f.png', + }, + { + emoji: '🧿', + name: 'nazar_amulet', + shortcodes: ['nazar_amulet'], + tags: ['bead', 'charm', 'evil-eye', 'nazar', 'talisman'], + group: 'objects', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f9ff.png', + }, + { + emoji: '🪬', + name: 'hamsa', + shortcodes: ['hamsa'], + tags: ['amulet', 'fatima', 'hand', 'mary', 'miriam', 'protection'], + group: 'objects', + emoticons: [], + version: 14, + }, + { + emoji: '🗿', + name: 'moyai', + shortcodes: ['moai', 'moyai'], + tags: ['face', 'moyai', 'statue'], + group: 'objects', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f5ff.png', + }, + { + emoji: '🪧', + name: 'placard', + shortcodes: ['placard'], + tags: ['demonstration', 'picket', 'protest', 'sign'], + group: 'objects', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1faa7.png', + }, + { + emoji: '🪪', + name: 'identification_card', + shortcodes: ['id_card'], + tags: ['credentials', 'id', 'license', 'security'], + group: 'objects', + emoticons: [], + version: 14, + }, + { + emoji: '🏧', + name: 'atm', + shortcodes: ['atm'], + tags: ['atm', 'atm sign', 'automated', 'bank', 'teller'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3e7.png', + }, + { + emoji: '🚮', + name: 'put_litter_in_its_place', + shortcodes: ['litter_bin', 'put_litter_in_its_place'], + tags: ['litter', 'litter bin'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ae.png', + }, + { + emoji: '🚰', + name: 'potable_water', + shortcodes: ['potable_water'], + tags: ['drinking', 'potable', 'water'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b0.png', + }, + { + emoji: '♿', + name: 'wheelchair', + shortcodes: ['handicapped', 'wheelchair'], + tags: ['access'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/267f.png', + }, + { + emoji: '🚹', + name: 'mens', + shortcodes: ['mens'], + tags: ['bathroom', 'lavatory', 'man', 'restroom', 'toilet', 'wc'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b9.png', + }, + { + emoji: '🚺', + name: 'womens', + shortcodes: ['womens'], + tags: ['bathroom', 'lavatory', 'restroom', 'toilet', 'wc', 'woman'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ba.png', + }, + { + emoji: '🚻', + name: 'restroom', + shortcodes: ['bathroom', 'restroom'], + tags: ['bathroom', 'lavatory', 'toilet', 'wc'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6bb.png', + }, + { + emoji: '🚼', + name: 'baby_symbol', + shortcodes: ['baby_symbol'], + tags: ['baby', 'changing'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6bc.png', + }, + { + emoji: '🚾', + name: 'wc', + shortcodes: ['water_closet', 'wc'], + tags: ['bathroom', 'closet', 'lavatory', 'restroom', 'toilet', 'water', 'wc'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6be.png', + }, + { + emoji: '🛂', + name: 'passport_control', + shortcodes: ['passport_control'], + tags: ['control', 'passport'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c2.png', + }, + { + emoji: '🛃', + name: 'customs', + shortcodes: ['customs'], + tags: ['customs'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c3.png', + }, + { + emoji: '🛄', + name: 'baggage_claim', + shortcodes: ['baggage_claim'], + tags: ['baggage', 'claim'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c4.png', + }, + { + emoji: '🛅', + name: 'left_luggage', + shortcodes: ['left_luggage'], + tags: ['baggage', 'locker', 'luggage'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6c5.png', + }, + { + emoji: '⚠', + name: 'warning', + shortcodes: ['warning'], + tags: ['warning'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26a0-fe0f.png', + }, + { + emoji: '🚸', + name: 'children_crossing', + shortcodes: ['children_crossing'], + tags: ['child', 'crossing', 'pedestrian', 'traffic'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b8.png', + }, + { + emoji: '⛔', + name: 'no_entry', + shortcodes: ['no_entry'], + tags: ['entry', 'forbidden', 'no', 'not', 'prohibited', 'traffic'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26d4.png', + }, + { + emoji: '🚫', + name: 'no_entry_sign', + shortcodes: ['no_entry_sign'], + tags: ['entry', 'forbidden', 'no', 'not'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ab.png', + }, + { + emoji: '🚳', + name: 'no_bicycles', + shortcodes: ['no_bicycles'], + tags: ['bicycle', 'bike', 'forbidden', 'no', 'prohibited'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b3.png', + }, + { + emoji: '🚭', + name: 'no_smoking', + shortcodes: ['no_smoking'], + tags: ['forbidden', 'no', 'not', 'prohibited', 'smoking'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6ad.png', + }, + { + emoji: '🚯', + name: 'do_not_litter', + shortcodes: ['do_not_litter', 'no_littering'], + tags: ['forbidden', 'litter', 'no', 'not', 'prohibited'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6af.png', + }, + { + emoji: '🚱', + name: 'non-potable_water', + shortcodes: ['non-potable_water'], + tags: ['non-drinking', 'non-potable', 'water'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b1.png', + }, + { + emoji: '🚷', + name: 'no_pedestrians', + shortcodes: ['no_pedestrians'], + tags: ['forbidden', 'no', 'not', 'pedestrian', 'prohibited'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6b7.png', + }, + { + emoji: '📵', + name: 'no_mobile_phones', + shortcodes: ['no_mobile_phones'], + tags: ['cell', 'forbidden', 'mobile', 'no', 'phone'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f5.png', + }, + { + emoji: '🔞', + name: 'underage', + shortcodes: ['no_one_under_18', 'underage'], + tags: ['18', 'age restriction', 'eighteen', 'prohibited', 'underage'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51e.png', + }, + { + emoji: '☢', + name: 'radioactive', + shortcodes: ['radioactive'], + tags: ['sign'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2622-fe0f.png', + }, + { + emoji: '☣', + name: 'biohazard', + shortcodes: ['biohazard'], + tags: ['sign'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2623-fe0f.png', + }, + { + emoji: '⬆', + name: 'arrow_up', + shortcodes: ['arrow_up'], + tags: ['arrow', 'cardinal', 'direction', 'north'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b06-fe0f.png', + }, + { + emoji: '↗', + name: 'arrow_upper_right', + shortcodes: ['arrow_upper_right'], + tags: ['arrow', 'direction', 'intercardinal', 'northeast'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2197-fe0f.png', + }, + { + emoji: '➡', + name: 'arrow_right', + shortcodes: ['arrow_right'], + tags: ['arrow', 'cardinal', 'direction', 'east'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/27a1-fe0f.png', + }, + { + emoji: '↘', + name: 'arrow_lower_right', + shortcodes: ['arrow_lower_right'], + tags: ['arrow', 'direction', 'intercardinal', 'southeast'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2198-fe0f.png', + }, + { + emoji: '⬇', + name: 'arrow_down', + shortcodes: ['arrow_down'], + tags: ['arrow', 'cardinal', 'direction', 'down', 'south'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b07-fe0f.png', + }, + { + emoji: '↙', + name: 'arrow_lower_left', + shortcodes: ['arrow_lower_left'], + tags: ['arrow', 'direction', 'intercardinal', 'southwest'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2199-fe0f.png', + }, + { + emoji: '⬅', + name: 'arrow_left', + shortcodes: ['arrow_left'], + tags: ['arrow', 'cardinal', 'direction', 'west'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b05-fe0f.png', + }, + { + emoji: '↖', + name: 'arrow_upper_left', + shortcodes: ['arrow_upper_left'], + tags: ['arrow', 'direction', 'intercardinal', 'northwest'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2196-fe0f.png', + }, + { + emoji: '↕', + name: 'arrow_up_down', + shortcodes: ['arrow_up_down'], + tags: ['arrow'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2195-fe0f.png', + }, + { + emoji: '↔', + name: 'left_right_arrow', + shortcodes: ['left_right_arrow'], + tags: ['arrow'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2194-fe0f.png', + }, + { + emoji: '↩', + name: 'leftwards_arrow_with_hook', + shortcodes: ['arrow_left_hook', 'leftwards_arrow_with_hook'], + tags: ['arrow'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/21a9-fe0f.png', + }, + { + emoji: '↪', + name: 'arrow_right_hook', + shortcodes: ['arrow_right_hook', 'rightwards_arrow_with_hook'], + tags: ['arrow'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/21aa-fe0f.png', + }, + { + emoji: '⤴', + name: 'arrow_heading_up', + shortcodes: ['arrow_heading_up'], + tags: ['arrow'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2934-fe0f.png', + }, + { + emoji: '⤵', + name: 'arrow_heading_down', + shortcodes: ['arrow_heading_down'], + tags: ['arrow', 'down'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2935-fe0f.png', + }, + { + emoji: '🔃', + name: 'arrows_clockwise', + shortcodes: ['arrows_clockwise', 'clockwise'], + tags: ['arrow', 'clockwise', 'reload'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f503.png', + }, + { + emoji: '🔄', + name: 'arrows_counterclockwise', + shortcodes: ['arrows_counterclockwise', 'counterclockwise'], + tags: ['anticlockwise', 'arrow', 'counterclockwise', 'withershins'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f504.png', + }, + { + emoji: '🔙', + name: 'back', + shortcodes: ['back'], + tags: ['arrow', 'back'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f519.png', + }, + { + emoji: '🔚', + name: 'end', + shortcodes: ['end'], + tags: ['arrow', 'end'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51a.png', + }, + { + emoji: '🔛', + name: 'on', + shortcodes: ['on'], + tags: ['arrow', 'mark', 'on', 'on!'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51b.png', + }, + { + emoji: '🔜', + name: 'soon', + shortcodes: ['soon'], + tags: ['arrow', 'soon'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51c.png', + }, + { + emoji: '🔝', + name: 'top', + shortcodes: ['top'], + tags: ['arrow', 'top', 'up'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51d.png', + }, + { + emoji: '🛐', + name: 'place_of_worship', + shortcodes: ['place_of_worship'], + tags: ['religion', 'worship'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6d0.png', + }, + { + emoji: '⚛', + name: 'atom_symbol', + shortcodes: ['atom', 'atom_symbol'], + tags: ['atheist', 'atom'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/269b-fe0f.png', + }, + { + emoji: '🕉', + name: 'om', + shortcodes: ['om'], + tags: ['hindu', 'religion'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f549-fe0f.png', + }, + { + emoji: '✡', + name: 'star_of_david', + shortcodes: ['star_of_david'], + tags: ['david', 'jew', 'jewish', 'religion', 'star', 'star of david'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2721-fe0f.png', + }, + { + emoji: '☸', + name: 'wheel_of_dharma', + shortcodes: ['wheel_of_dharma'], + tags: ['buddhist', 'dharma', 'religion', 'wheel'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2638-fe0f.png', + }, + { + emoji: '☯', + name: 'yin_yang', + shortcodes: ['yin_yang'], + tags: ['religion', 'tao', 'taoist', 'yang', 'yin'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/262f-fe0f.png', + }, + { + emoji: '✝', + name: 'latin_cross', + shortcodes: ['latin_cross'], + tags: ['christian', 'cross', 'religion'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/271d-fe0f.png', + }, + { + emoji: '☦', + name: 'orthodox_cross', + shortcodes: ['orthodox_cross'], + tags: ['christian', 'cross', 'religion'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2626-fe0f.png', + }, + { + emoji: '☪', + name: 'star_and_crescent', + shortcodes: ['star_and_crescent'], + tags: ['islam', 'muslim', 'religion'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/262a-fe0f.png', + }, + { + emoji: '☮', + name: 'peace_symbol', + shortcodes: ['peace', 'peace_symbol'], + tags: ['peace'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/262e-fe0f.png', + }, + { + emoji: '🕎', + name: 'menorah', + shortcodes: ['menorah'], + tags: ['candelabrum', 'candlestick', 'religion'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f54e.png', + }, + { + emoji: '🔯', + name: 'six_pointed_star', + shortcodes: ['six_pointed_star'], + tags: ['fortune', 'star'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f52f.png', + }, + { + emoji: '🪯', + name: 'khanda', + shortcodes: ['khanda'], + tags: ['religion', 'sikh'], + group: 'symbols', + emoticons: [], + version: 15, + }, + { + emoji: '♈', + name: 'aries', + shortcodes: ['aries'], + tags: ['aries', 'ram', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2648.png', + }, + { + emoji: '♉', + name: 'taurus', + shortcodes: ['taurus'], + tags: ['bull', 'ox', 'taurus', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2649.png', + }, + { + emoji: '♊', + name: 'gemini', + shortcodes: ['gemini'], + tags: ['gemini', 'twins', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264a.png', + }, + { + emoji: '♋', + name: 'cancer', + shortcodes: ['cancer'], + tags: ['cancer', 'crab', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264b.png', + }, + { + emoji: '♌', + name: 'leo', + shortcodes: ['leo'], + tags: ['leo', 'lion', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264c.png', + }, + { + emoji: '♍', + name: 'virgo', + shortcodes: ['virgo'], + tags: ['virgo', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264d.png', + }, + { + emoji: '♎', + name: 'libra', + shortcodes: ['libra'], + tags: ['balance', 'justice', 'libra', 'scales', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264e.png', + }, + { + emoji: '♏', + name: 'scorpius', + shortcodes: ['scorpius'], + tags: ['scorpio', 'scorpion', 'scorpius', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/264f.png', + }, + { + emoji: '♐', + name: 'sagittarius', + shortcodes: ['sagittarius'], + tags: ['archer', 'sagittarius', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2650.png', + }, + { + emoji: '♑', + name: 'capricorn', + shortcodes: ['capricorn'], + tags: ['capricorn', 'goat', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2651.png', + }, + { + emoji: '♒', + name: 'aquarius', + shortcodes: ['aquarius'], + tags: ['aquarius', 'bearer', 'water', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2652.png', + }, + { + emoji: '♓', + name: 'pisces', + shortcodes: ['pisces'], + tags: ['fish', 'pisces', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2653.png', + }, + { + emoji: '⛎', + name: 'ophiuchus', + shortcodes: ['ophiuchus'], + tags: ['bearer', 'ophiuchus', 'serpent', 'snake', 'zodiac'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26ce.png', + }, + { + emoji: '🔀', + name: 'twisted_rightwards_arrows', + shortcodes: ['shuffle', 'twisted_rightwards_arrows'], + tags: ['arrow', 'crossed'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f500.png', + }, + { + emoji: '🔁', + name: 'repeat', + shortcodes: ['repeat'], + tags: ['arrow', 'clockwise', 'repeat'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f501.png', + }, + { + emoji: '🔂', + name: 'repeat_one', + shortcodes: ['repeat_one'], + tags: ['arrow', 'clockwise', 'once'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f502.png', + }, + { + emoji: '▶', + name: 'arrow_forward', + shortcodes: ['arrow_forward', 'play'], + tags: ['arrow', 'play', 'right', 'triangle'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25b6-fe0f.png', + }, + { + emoji: '⏩', + name: 'fast_forward', + shortcodes: ['fast_forward'], + tags: ['arrow', 'double', 'fast', 'forward'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23e9.png', + }, + { + emoji: '⏭', + name: 'next_track_button', + shortcodes: ['next_track'], + tags: ['arrow', 'next scene', 'next track', 'triangle'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ed-fe0f.png', + }, + { + emoji: '⏯', + name: 'play_or_pause_button', + shortcodes: ['play_pause'], + tags: ['arrow', 'pause', 'play', 'right', 'triangle'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ef-fe0f.png', + }, + { + emoji: '◀', + name: 'arrow_backward', + shortcodes: ['arrow_backward', 'reverse'], + tags: ['arrow', 'left', 'reverse', 'triangle'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25c0-fe0f.png', + }, + { + emoji: '⏪', + name: 'rewind', + shortcodes: ['fast_reverse', 'rewind'], + tags: ['arrow', 'double', 'rewind'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ea.png', + }, + { + emoji: '⏮', + name: 'previous_track_button', + shortcodes: ['previous_track'], + tags: ['arrow', 'previous scene', 'previous track', 'triangle'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ee-fe0f.png', + }, + { + emoji: '🔼', + name: 'arrow_up_small', + shortcodes: ['arrow_up_small', 'up'], + tags: ['arrow', 'button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f53c.png', + }, + { + emoji: '⏫', + name: 'arrow_double_up', + shortcodes: ['arrow_double_up', 'fast_up'], + tags: ['arrow', 'double'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23eb.png', + }, + { + emoji: '🔽', + name: 'arrow_down_small', + shortcodes: ['arrow_down_small', 'down'], + tags: ['arrow', 'button', 'down'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f53d.png', + }, + { + emoji: '⏬', + name: 'arrow_double_down', + shortcodes: ['arrow_double_down', 'fast_down'], + tags: ['arrow', 'double', 'down'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23ec.png', + }, + { + emoji: '⏸', + name: 'pause_button', + shortcodes: ['pause'], + tags: ['bar', 'double', 'pause', 'vertical'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f8-fe0f.png', + }, + { + emoji: '⏹', + name: 'stop_button', + shortcodes: ['stop'], + tags: ['square', 'stop'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23f9-fe0f.png', + }, + { + emoji: '⏺', + name: 'record_button', + shortcodes: ['record'], + tags: ['circle', 'record'], + group: 'symbols', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23fa-fe0f.png', + }, + { + emoji: '⏏', + name: 'eject_button', + shortcodes: ['eject'], + tags: ['eject'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/23cf-fe0f.png', + }, + { + emoji: '🎦', + name: 'cinema', + shortcodes: ['cinema'], + tags: ['camera', 'film', 'movie'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3a6.png', + }, + { + emoji: '🔅', + name: 'low_brightness', + shortcodes: ['dim_button', 'low_brightness'], + tags: ['brightness', 'dim', 'low'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f505.png', + }, + { + emoji: '🔆', + name: 'high_brightness', + shortcodes: ['bright_button', 'high_brightness'], + tags: ['bright', 'brightness'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f506.png', + }, + { + emoji: '📶', + name: 'signal_strength', + shortcodes: ['antenna_bars', 'signal_strength'], + tags: ['antenna', 'bar', 'cell', 'mobile', 'phone'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f6.png', + }, + { + emoji: '🛜', + name: 'wireless', + shortcodes: ['wireless'], + tags: ['computer', 'internet', 'network', 'wi-fi', 'wifi'], + group: 'symbols', + emoticons: [], + version: 15, + }, + { + emoji: '📳', + name: 'vibration_mode', + shortcodes: ['vibration_mode'], + tags: ['cell', 'mobile', 'mode', 'phone', 'telephone', 'vibration'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f3.png', + }, + { + emoji: '📴', + name: 'mobile_phone_off', + shortcodes: ['mobile_phone_off'], + tags: ['cell', 'mobile', 'off', 'phone', 'telephone'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4f4.png', + }, + { + emoji: '♀', + name: 'female_sign', + shortcodes: ['female', 'female_sign'], + tags: ['woman'], + group: 'symbols', + emoticons: [], + version: 4, + }, + { + emoji: '♂', + name: 'male_sign', + shortcodes: ['male', 'male_sign'], + tags: ['man'], + group: 'symbols', + emoticons: [], + version: 4, + }, + { + emoji: '⚧', + name: 'transgender_symbol', + shortcodes: ['transgender_symbol'], + tags: ['transgender'], + group: 'symbols', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26a7-fe0f.png', + }, + { + emoji: '✖', + name: 'heavy_multiplication_x', + shortcodes: ['multiplication', 'multiply'], + tags: ['cancel', 'multiplication', 'sign', 'x', '×'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2716-fe0f.png', + }, + { + emoji: '➕', + name: 'heavy_plus_sign', + shortcodes: ['plus'], + tags: ['+', 'math', 'sign'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2795.png', + }, + { + emoji: '➖', + name: 'heavy_minus_sign', + shortcodes: ['minus'], + tags: ['-', 'math', 'sign', '−'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2796.png', + }, + { + emoji: '➗', + name: 'heavy_division_sign', + shortcodes: ['divide', 'division'], + tags: ['division', 'math', 'sign', '÷'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2797.png', + }, + { + emoji: '🟰', + name: 'heavy_equals_sign', + shortcodes: ['heavy_equals_sign'], + tags: ['equality', 'math'], + group: 'symbols', + emoticons: [], + version: 14, + }, + { + emoji: '♾', + name: 'infinity', + shortcodes: ['infinity'], + tags: ['forever', 'unbounded', 'universal'], + group: 'symbols', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/267e-fe0f.png', + }, + { + emoji: '‼', + name: 'bangbang', + shortcodes: ['bangbang', 'double_exclamation'], + tags: ['!', '!!', 'bangbang', 'exclamation', 'mark'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/203c-fe0f.png', + }, + { + emoji: '⁉', + name: 'interrobang', + shortcodes: ['exclamation_question', 'interrobang'], + tags: ['!', '!?', '?', 'exclamation', 'interrobang', 'mark', 'punctuation', 'question'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2049-fe0f.png', + }, + { + emoji: '❓', + name: 'question', + shortcodes: ['question'], + tags: ['?', 'mark', 'punctuation', 'question'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2753.png', + }, + { + emoji: '❔', + name: 'grey_question', + shortcodes: ['white_question'], + tags: ['?', 'mark', 'outlined', 'punctuation', 'question'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2754.png', + }, + { + emoji: '❕', + name: 'grey_exclamation', + shortcodes: ['white_exclamation'], + tags: ['!', 'exclamation', 'mark', 'outlined', 'punctuation'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2755.png', + }, + { + emoji: '❗', + name: 'exclamation', + shortcodes: ['exclamation'], + tags: ['!', 'exclamation', 'mark', 'punctuation'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2757.png', + }, + { + emoji: '〰', + name: 'wavy_dash', + shortcodes: ['wavy_dash'], + tags: ['dash', 'punctuation', 'wavy'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/3030-fe0f.png', + }, + { + emoji: '💱', + name: 'currency_exchange', + shortcodes: ['currency_exchange'], + tags: ['bank', 'currency', 'exchange', 'money'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b1.png', + }, + { + emoji: '💲', + name: 'heavy_dollar_sign', + shortcodes: ['heavy_dollar_sign'], + tags: ['currency', 'dollar', 'money'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4b2.png', + }, + { + emoji: '⚕', + name: 'medical_symbol', + shortcodes: ['medical', 'medical_symbol'], + tags: ['aesculapius', 'medicine', 'staff'], + group: 'symbols', + emoticons: [], + version: 4, + }, + { + emoji: '♻', + name: 'recycle', + shortcodes: ['recycle', 'recycling_symbol'], + tags: ['recycle'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/267b-fe0f.png', + }, + { + emoji: '⚜', + name: 'fleur_de_lis', + shortcodes: ['fleur-de-lis'], + tags: ['fleur-de-lis'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/269c-fe0f.png', + }, + { + emoji: '🔱', + name: 'trident', + shortcodes: ['trident'], + tags: ['anchor', 'emblem', 'ship', 'tool', 'trident'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f531.png', + }, + { + emoji: '📛', + name: 'name_badge', + shortcodes: ['name_badge'], + tags: ['badge', 'name'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4db.png', + }, + { + emoji: '🔰', + name: 'beginner', + shortcodes: ['beginner'], + tags: ['beginner', 'chevron', 'japanese', 'japanese symbol for beginner', 'leaf'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f530.png', + }, + { + emoji: '⭕', + name: 'o', + shortcodes: ['hollow_red_circle', 'red_o'], + tags: ['circle', 'large', 'o', 'red'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b55.png', + }, + { + emoji: '✅', + name: 'white_check_mark', + shortcodes: ['check_mark_button', 'white_check_mark'], + tags: ['button', 'check', 'mark', '✓'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2705.png', + }, + { + emoji: '☑', + name: 'ballot_box_with_check', + shortcodes: ['ballot_box_with_check'], + tags: ['box', 'check', '✓'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2611-fe0f.png', + }, + { + emoji: '✔', + name: 'heavy_check_mark', + shortcodes: ['check_mark', 'heavy_check_mark'], + tags: ['check', 'mark', '✓'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2714-fe0f.png', + }, + { + emoji: '❌', + name: 'x', + shortcodes: ['cross_mark', 'x'], + tags: ['cancel', 'cross', 'mark', 'multiplication', 'multiply', 'x', '×'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/274c.png', + }, + { + emoji: '❎', + name: 'negative_squared_cross_mark', + shortcodes: ['cross_mark_button', 'negative_squared_cross_mark'], + tags: ['mark', 'square', 'x', '×'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/274e.png', + }, + { + emoji: '➰', + name: 'curly_loop', + shortcodes: ['curly_loop'], + tags: ['curl', 'loop'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/27b0.png', + }, + { + emoji: '➿', + name: 'loop', + shortcodes: ['double_curly_loop', 'loop'], + tags: ['curl', 'double', 'loop'], + group: 'symbols', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/27bf.png', + }, + { + emoji: '〽', + name: 'part_alternation_mark', + shortcodes: ['part_alternation_mark'], + tags: ['mark', 'part'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/303d-fe0f.png', + }, + { + emoji: '✳', + name: 'eight_spoked_asterisk', + shortcodes: ['eight_spoked_asterisk'], + tags: ['*', 'asterisk'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2733-fe0f.png', + }, + { + emoji: '✴', + name: 'eight_pointed_black_star', + shortcodes: ['eight_pointed_black_star'], + tags: ['*', 'star'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2734-fe0f.png', + }, + { + emoji: '❇', + name: 'sparkle', + shortcodes: ['sparkle'], + tags: ['*'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2747-fe0f.png', + }, + { + emoji: '©', + name: 'copyright', + shortcodes: ['copyright'], + tags: ['c'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/00a9-fe0f.png', + }, + { + emoji: '®', + name: 'registered', + shortcodes: ['registered'], + tags: ['r'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/00ae-fe0f.png', + }, + { + emoji: '™', + name: 'tm', + shortcodes: ['tm', 'trade_mark'], + tags: ['mark', 'tm', 'trademark'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2122-fe0f.png', + }, + { + emoji: '#⃣', + name: 'hash', + shortcodes: ['hash', 'number_sign'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0023-fe0f-20e3.png', + }, + { + emoji: '*⃣', + name: 'asterisk', + shortcodes: ['asterisk'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/002a-fe0f-20e3.png', + }, + { + emoji: '0⃣', + name: 'zero', + shortcodes: ['zero'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0030-fe0f-20e3.png', + }, + { + emoji: '1⃣', + name: 'one', + shortcodes: ['one'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0031-fe0f-20e3.png', + }, + { + emoji: '2⃣', + name: 'two', + shortcodes: ['two'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0032-fe0f-20e3.png', + }, + { + emoji: '3⃣', + name: 'three', + shortcodes: ['three'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0033-fe0f-20e3.png', + }, + { + emoji: '4⃣', + name: 'four', + shortcodes: ['four'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0034-fe0f-20e3.png', + }, + { + emoji: '5⃣', + name: 'five', + shortcodes: ['five'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0035-fe0f-20e3.png', + }, + { + emoji: '6⃣', + name: 'six', + shortcodes: ['six'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0036-fe0f-20e3.png', + }, + { + emoji: '7⃣', + name: 'seven', + shortcodes: ['seven'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0037-fe0f-20e3.png', + }, + { + emoji: '8⃣', + name: 'eight', + shortcodes: ['eight'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0038-fe0f-20e3.png', + }, + { + emoji: '9⃣', + name: 'nine', + shortcodes: ['nine'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/0039-fe0f-20e3.png', + }, + { + emoji: '🔟', + name: 'keycap_ten', + shortcodes: ['ten'], + tags: ['keycap'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f51f.png', + }, + { + emoji: '🔠', + name: 'capital_abcd', + shortcodes: ['capital_abcd'], + tags: ['abcd', 'input', 'latin', 'letters', 'uppercase'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f520.png', + }, + { + emoji: '🔡', + name: 'abcd', + shortcodes: ['abcd'], + tags: ['abcd', 'input', 'latin', 'letters', 'lowercase'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f521.png', + }, + { + emoji: '🔢', + name: '1234', + shortcodes: ['1234'], + tags: ['1234', 'input', 'numbers'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f522.png', + }, + { + emoji: '🔣', + name: 'symbols', + shortcodes: ['symbols'], + tags: ['input', '〒♪&%'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f523.png', + }, + { + emoji: '🔤', + name: 'abc', + shortcodes: ['abc'], + tags: ['abc', 'alphabet', 'input', 'latin', 'letters'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f524.png', + }, + { + emoji: '🅰', + name: 'a', + shortcodes: ['a', 'a_blood'], + tags: ['a', 'a button (blood type)', 'blood type'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f170-fe0f.png', + }, + { + emoji: '🆎', + name: 'ab', + shortcodes: ['ab', 'ab_blood'], + tags: ['ab', 'ab button (blood type)', 'blood type'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f18e.png', + }, + { + emoji: '🅱', + name: 'b', + shortcodes: ['b', 'b_blood'], + tags: ['b', 'b button (blood type)', 'blood type'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f171-fe0f.png', + }, + { + emoji: '🆑', + name: 'cl', + shortcodes: ['cl'], + tags: ['cl', 'cl button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f191.png', + }, + { + emoji: '🆒', + name: 'cool', + shortcodes: ['cool'], + tags: ['cool', 'cool button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f192.png', + }, + { + emoji: '🆓', + name: 'free', + shortcodes: ['free'], + tags: ['free', 'free button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f193.png', + }, + { + emoji: 'ℹ', + name: 'information_source', + shortcodes: ['info', 'information_source'], + tags: ['i'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2139-fe0f.png', + }, + { + emoji: '🆔', + name: 'id', + shortcodes: ['id'], + tags: ['id', 'id button', 'identity'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f194.png', + }, + { + emoji: 'Ⓜ', + name: 'm', + shortcodes: ['m'], + tags: ['circle', 'circled m', 'm'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/24c2-fe0f.png', + }, + { + emoji: '🆕', + name: 'new', + shortcodes: ['new'], + tags: ['new', 'new button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f195.png', + }, + { + emoji: '🆖', + name: 'ng', + shortcodes: ['ng'], + tags: ['ng', 'ng button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f196.png', + }, + { + emoji: '🅾', + name: 'o2', + shortcodes: ['o', 'o_blood'], + tags: ['blood type', 'o', 'o button (blood type)'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f17e-fe0f.png', + }, + { + emoji: '🆗', + name: 'ok', + shortcodes: ['ok'], + tags: ['ok', 'ok button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f197.png', + }, + { + emoji: '🅿', + name: 'parking', + shortcodes: ['parking'], + tags: ['p', 'p button', 'parking'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f17f-fe0f.png', + }, + { + emoji: '🆘', + name: 'sos', + shortcodes: ['sos'], + tags: ['help', 'sos', 'sos button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f198.png', + }, + { + emoji: '🆙', + name: 'up', + shortcodes: ['up2'], + tags: ['mark', 'up', 'up!', 'up! button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f199.png', + }, + { + emoji: '🆚', + name: 'vs', + shortcodes: ['vs'], + tags: ['versus', 'vs', 'vs button'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f19a.png', + }, + { + emoji: '🈁', + name: 'koko', + shortcodes: ['ja_here', 'koko'], + tags: ['japanese', 'japanese “here” button', 'katakana', '“here”', 'ココ'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f201.png', + }, + { + emoji: '🈂', + name: 'sa', + shortcodes: ['ja_service_charge'], + tags: ['japanese', 'japanese “service charge” button', 'katakana', '“service charge”', 'サ'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f202-fe0f.png', + }, + { + emoji: '🈷', + name: 'u6708', + shortcodes: ['ja_monthly_amount'], + tags: ['ideograph', 'japanese', 'japanese “monthly amount” button', '“monthly amount”', '月'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f237-fe0f.png', + }, + { + emoji: '🈶', + name: 'u6709', + shortcodes: ['ja_not_free_of_carge'], + tags: ['ideograph', 'japanese', 'japanese “not free of charge” button', '“not free of charge”', '有'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f236.png', + }, + { + emoji: '🈯', + name: 'u6307', + shortcodes: ['ja_reserved'], + tags: ['ideograph', 'japanese', 'japanese “reserved” button', '“reserved”', '指'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f22f.png', + }, + { + emoji: '🉐', + name: 'ideograph_advantage', + shortcodes: ['ideograph_advantage', 'ja_bargain'], + tags: ['ideograph', 'japanese', 'japanese “bargain” button', '“bargain”', '得'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f250.png', + }, + { + emoji: '🈹', + name: 'u5272', + shortcodes: ['ja_discount'], + tags: ['ideograph', 'japanese', 'japanese “discount” button', '“discount”', '割'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f239.png', + }, + { + emoji: '🈚', + name: 'u7121', + shortcodes: ['ja_free_of_charge'], + tags: ['ideograph', 'japanese', 'japanese “free of charge” button', '“free of charge”', '無'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f21a.png', + }, + { + emoji: '🈲', + name: 'u7981', + shortcodes: ['ja_prohibited'], + tags: ['ideograph', 'japanese', 'japanese “prohibited” button', '“prohibited”', '禁'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f232.png', + }, + { + emoji: '🉑', + name: 'accept', + shortcodes: ['accept', 'ja_acceptable'], + tags: ['ideograph', 'japanese', 'japanese “acceptable” button', '“acceptable”', '可'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f251.png', + }, + { + emoji: '🈸', + name: 'u7533', + shortcodes: ['ja_application'], + tags: ['ideograph', 'japanese', 'japanese “application” button', '“application”', '申'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f238.png', + }, + { + emoji: '🈴', + name: 'u5408', + shortcodes: ['ja_passing_grade'], + tags: ['ideograph', 'japanese', 'japanese “passing grade” button', '“passing grade”', '合'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f234.png', + }, + { + emoji: '🈳', + name: 'u7a7a', + shortcodes: ['ja_vacancy'], + tags: ['ideograph', 'japanese', 'japanese “vacancy” button', '“vacancy”', '空'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f233.png', + }, + { + emoji: '㊗', + name: 'congratulations', + shortcodes: ['congratulations', 'ja_congratulations'], + tags: ['ideograph', 'japanese', 'japanese “congratulations” button', '“congratulations”', '祝'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/3297-fe0f.png', + }, + { + emoji: '㊙', + name: 'secret', + shortcodes: ['ja_secret', 'secret'], + tags: ['ideograph', 'japanese', 'japanese “secret” button', '“secret”', '秘'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/3299-fe0f.png', + }, + { + emoji: '🈺', + name: 'u55b6', + shortcodes: ['ja_open_for_business'], + tags: ['ideograph', 'japanese', 'japanese “open for business” button', '“open for business”', '営'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f23a.png', + }, + { + emoji: '🈵', + name: 'u6e80', + shortcodes: ['ja_no_vacancy'], + tags: ['ideograph', 'japanese', 'japanese “no vacancy” button', '“no vacancy”', '満'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f235.png', + }, + { + emoji: '🔴', + name: 'red_circle', + shortcodes: ['red_circle'], + tags: ['circle', 'geometric', 'red'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f534.png', + }, + { + emoji: '🟠', + name: 'orange_circle', + shortcodes: ['orange_circle'], + tags: ['circle', 'orange'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e0.png', + }, + { + emoji: '🟡', + name: 'yellow_circle', + shortcodes: ['yellow_circle'], + tags: ['circle', 'yellow'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e1.png', + }, + { + emoji: '🟢', + name: 'green_circle', + shortcodes: ['green_circle'], + tags: ['circle', 'green'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e2.png', + }, + { + emoji: '🔵', + name: 'large_blue_circle', + shortcodes: ['blue_circle'], + tags: ['blue', 'circle', 'geometric'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f535.png', + }, + { + emoji: '🟣', + name: 'purple_circle', + shortcodes: ['purple_circle'], + tags: ['circle', 'purple'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e3.png', + }, + { + emoji: '🟤', + name: 'brown_circle', + shortcodes: ['brown_circle'], + tags: ['brown', 'circle'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e4.png', + }, + { + emoji: '⚫', + name: 'black_circle', + shortcodes: ['black_circle'], + tags: ['circle', 'geometric'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26ab.png', + }, + { + emoji: '⚪', + name: 'white_circle', + shortcodes: ['white_circle'], + tags: ['circle', 'geometric'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/26aa.png', + }, + { + emoji: '🟥', + name: 'red_square', + shortcodes: ['red_square'], + tags: ['red', 'square'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e5.png', + }, + { + emoji: '🟧', + name: 'orange_square', + shortcodes: ['orange_square'], + tags: ['orange', 'square'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e7.png', + }, + { + emoji: '🟨', + name: 'yellow_square', + shortcodes: ['yellow_square'], + tags: ['square', 'yellow'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e8.png', + }, + { + emoji: '🟩', + name: 'green_square', + shortcodes: ['green_square'], + tags: ['green', 'square'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e9.png', + }, + { + emoji: '🟦', + name: 'blue_square', + shortcodes: ['blue_square'], + tags: ['blue', 'square'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7e6.png', + }, + { + emoji: '🟪', + name: 'purple_square', + shortcodes: ['purple_square'], + tags: ['purple', 'square'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7ea.png', + }, + { + emoji: '🟫', + name: 'brown_square', + shortcodes: ['brown_square'], + tags: ['brown', 'square'], + group: 'symbols', + emoticons: [], + version: 12, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f7eb.png', + }, + { + emoji: '⬛', + name: 'black_large_square', + shortcodes: ['black_large_square'], + tags: ['geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b1b.png', + }, + { + emoji: '⬜', + name: 'white_large_square', + shortcodes: ['white_large_square'], + tags: ['geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/2b1c.png', + }, + { + emoji: '◼', + name: 'black_medium_square', + shortcodes: ['black_medium_square'], + tags: ['geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25fc-fe0f.png', + }, + { + emoji: '◻', + name: 'white_medium_square', + shortcodes: ['white_medium_square'], + tags: ['geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25fb-fe0f.png', + }, + { + emoji: '◾', + name: 'black_medium_small_square', + shortcodes: ['black_medium_small_square'], + tags: ['geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25fe.png', + }, + { + emoji: '◽', + name: 'white_medium_small_square', + shortcodes: ['white_medium_small_square'], + tags: ['geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25fd.png', + }, + { + emoji: '▪', + name: 'black_small_square', + shortcodes: ['black_small_square'], + tags: ['geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25aa-fe0f.png', + }, + { + emoji: '▫', + name: 'white_small_square', + shortcodes: ['white_small_square'], + tags: ['geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/25ab-fe0f.png', + }, + { + emoji: '🔶', + name: 'large_orange_diamond', + shortcodes: ['large_orange_diamond'], + tags: ['diamond', 'geometric', 'orange'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f536.png', + }, + { + emoji: '🔷', + name: 'large_blue_diamond', + shortcodes: ['large_blue_diamond'], + tags: ['blue', 'diamond', 'geometric'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f537.png', + }, + { + emoji: '🔸', + name: 'small_orange_diamond', + shortcodes: ['small_orange_diamond'], + tags: ['diamond', 'geometric', 'orange'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f538.png', + }, + { + emoji: '🔹', + name: 'small_blue_diamond', + shortcodes: ['small_blue_diamond'], + tags: ['blue', 'diamond', 'geometric'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f539.png', + }, + { + emoji: '🔺', + name: 'small_red_triangle', + shortcodes: ['small_red_triangle'], + tags: ['geometric', 'red'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f53a.png', + }, + { + emoji: '🔻', + name: 'small_red_triangle_down', + shortcodes: ['small_red_triangle_down'], + tags: ['down', 'geometric', 'red'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f53b.png', + }, + { + emoji: '💠', + name: 'diamond_shape_with_a_dot_inside', + shortcodes: ['diamond_shape_with_a_dot_inside', 'diamond_with_a_dot'], + tags: ['comic', 'diamond', 'geometric', 'inside'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f4a0.png', + }, + { + emoji: '🔘', + name: 'radio_button', + shortcodes: ['radio_button'], + tags: ['button', 'geometric', 'radio'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f518.png', + }, + { + emoji: '🔳', + name: 'white_square_button', + shortcodes: ['white_square_button'], + tags: ['button', 'geometric', 'outlined', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f533.png', + }, + { + emoji: '🔲', + name: 'black_square_button', + shortcodes: ['black_square_button'], + tags: ['button', 'geometric', 'square'], + group: 'symbols', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f532.png', + }, + { + emoji: '🏁', + name: 'checkered_flag', + shortcodes: ['checkered_flag'], + tags: ['checkered', 'chequered', 'racing'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3c1.png', + }, + { + emoji: '🚩', + name: 'triangular_flag_on_post', + shortcodes: ['triangular_flag', 'triangular_flag_on_post'], + tags: ['post'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f6a9.png', + }, + { + emoji: '🎌', + name: 'crossed_flags', + shortcodes: ['crossed_flags'], + tags: ['celebration', 'cross', 'crossed', 'japanese'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f38c.png', + }, + { + emoji: '🏴', + name: 'black_flag', + shortcodes: ['black_flag'], + tags: ['waving'], + group: 'flags', + emoticons: [], + version: 1, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4.png', + }, + { + emoji: '🏳', + name: 'white_flag', + shortcodes: ['white_flag'], + tags: ['waving'], + group: 'flags', + emoticons: [], + version: 0.7, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f3-fe0f.png', + }, + { + emoji: '🏳‍🌈', + name: 'rainbow_flag', + shortcodes: ['rainbow_flag'], + tags: ['pride', 'rainbow'], + group: 'flags', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f3-fe0f-200d-1f308.png', + }, + { + emoji: '🏳‍⚧️', + name: 'transgender_flag', + shortcodes: ['transgender_flag'], + tags: ['flag', 'light blue', 'pink', 'transgender', 'white'], + group: 'flags', + emoticons: [], + version: 13, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f3-fe0f-200d-26a7-fe0f.png', + }, + { + emoji: '🏴‍☠', + name: 'pirate_flag', + shortcodes: ['jolly_roger', 'pirate_flag'], + tags: ['jolly roger', 'pirate', 'plunder', 'treasure'], + group: 'flags', + emoticons: [], + version: 11, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4-200d-2620-fe0f.png', + }, + { + emoji: '🇦🇨', + name: 'ascension_island', + shortcodes: ['ascension_island', 'flag_ac'], + tags: ['AC', 'flag', 'flag: ascension island'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1e8.png', + }, + { + emoji: '🇦🇩', + name: 'andorra', + shortcodes: ['andorra', 'flag_ad'], + tags: ['AD', 'flag', 'flag: andorra'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1e9.png', + }, + { + emoji: '🇦🇪', + name: 'united_arab_emirates', + shortcodes: ['flag_ae', 'united_arab_emirates'], + tags: ['AE', 'flag', 'flag: united arab emirates'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1ea.png', + }, + { + emoji: '🇦🇫', + name: 'afghanistan', + shortcodes: ['afghanistan', 'flag_af'], + tags: ['AF', 'flag', 'flag: afghanistan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1eb.png', + }, + { + emoji: '🇦🇬', + name: 'antigua_barbuda', + shortcodes: ['antigua_barbuda', 'flag_ag'], + tags: ['AG', 'flag', 'flag: antigua & barbuda'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1ec.png', + }, + { + emoji: '🇦🇮', + name: 'anguilla', + shortcodes: ['anguilla', 'flag_ai'], + tags: ['AI', 'flag', 'flag: anguilla'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1ee.png', + }, + { + emoji: '🇦🇱', + name: 'albania', + shortcodes: ['albania', 'flag_al'], + tags: ['AL', 'flag', 'flag: albania'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f1.png', + }, + { + emoji: '🇦🇲', + name: 'armenia', + shortcodes: ['armenia', 'flag_am'], + tags: ['AM', 'flag', 'flag: armenia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f2.png', + }, + { + emoji: '🇦🇴', + name: 'angola', + shortcodes: ['angola', 'flag_ao'], + tags: ['AO', 'flag', 'flag: angola'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f4.png', + }, + { + emoji: '🇦🇶', + name: 'antarctica', + shortcodes: ['antarctica', 'flag_aq'], + tags: ['AQ', 'flag', 'flag: antarctica'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f6.png', + }, + { + emoji: '🇦🇷', + name: 'argentina', + shortcodes: ['argentina', 'flag_ar'], + tags: ['AR', 'flag', 'flag: argentina'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f7.png', + }, + { + emoji: '🇦🇸', + name: 'american_samoa', + shortcodes: ['american_samoa', 'flag_as'], + tags: ['AS', 'flag', 'flag: american samoa'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f8.png', + }, + { + emoji: '🇦🇹', + name: 'austria', + shortcodes: ['austria', 'flag_at'], + tags: ['AT', 'flag', 'flag: austria'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1f9.png', + }, + { + emoji: '🇦🇺', + name: 'australia', + shortcodes: ['australia', 'flag_au'], + tags: ['AU', 'flag', 'flag: australia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1fa.png', + }, + { + emoji: '🇦🇼', + name: 'aruba', + shortcodes: ['aruba', 'flag_aw'], + tags: ['AW', 'flag', 'flag: aruba'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1fc.png', + }, + { + emoji: '🇦🇽', + name: 'aland_islands', + shortcodes: ['aland_islands', 'flag_ax'], + tags: ['AX', 'flag', 'flag: åland islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1fd.png', + }, + { + emoji: '🇦🇿', + name: 'azerbaijan', + shortcodes: ['azerbaijan', 'flag_az'], + tags: ['AZ', 'flag', 'flag: azerbaijan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e6-1f1ff.png', + }, + { + emoji: '🇧🇦', + name: 'bosnia_herzegovina', + shortcodes: ['bosnia_herzegovina', 'flag_ba'], + tags: ['BA', 'flag', 'flag: bosnia & herzegovina'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1e6.png', + }, + { + emoji: '🇧🇧', + name: 'barbados', + shortcodes: ['barbados', 'flag_bb'], + tags: ['BB', 'flag', 'flag: barbados'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1e7.png', + }, + { + emoji: '🇧🇩', + name: 'bangladesh', + shortcodes: ['bangladesh', 'flag_bd'], + tags: ['BD', 'flag', 'flag: bangladesh'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1e9.png', + }, + { + emoji: '🇧🇪', + name: 'belgium', + shortcodes: ['belgium', 'flag_be'], + tags: ['BE', 'flag', 'flag: belgium'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ea.png', + }, + { + emoji: '🇧🇫', + name: 'burkina_faso', + shortcodes: ['burkina_faso', 'flag_bf'], + tags: ['BF', 'flag', 'flag: burkina faso'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1eb.png', + }, + { + emoji: '🇧🇬', + name: 'bulgaria', + shortcodes: ['bulgaria', 'flag_bg'], + tags: ['BG', 'flag', 'flag: bulgaria'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ec.png', + }, + { + emoji: '🇧🇭', + name: 'bahrain', + shortcodes: ['bahrain', 'flag_bh'], + tags: ['BH', 'flag', 'flag: bahrain'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ed.png', + }, + { + emoji: '🇧🇮', + name: 'burundi', + shortcodes: ['burundi', 'flag_bi'], + tags: ['BI', 'flag', 'flag: burundi'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ee.png', + }, + { + emoji: '🇧🇯', + name: 'benin', + shortcodes: ['benin', 'flag_bj'], + tags: ['BJ', 'flag', 'flag: benin'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ef.png', + }, + { + emoji: '🇧🇱', + name: 'st_barthelemy', + shortcodes: ['flag_bl', 'st_barthelemy'], + tags: ['BL', 'flag', 'flag: st. barthélemy'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f1.png', + }, + { + emoji: '🇧🇲', + name: 'bermuda', + shortcodes: ['bermuda', 'flag_bm'], + tags: ['BM', 'flag', 'flag: bermuda'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f2.png', + }, + { + emoji: '🇧🇳', + name: 'brunei', + shortcodes: ['brunei', 'flag_bn'], + tags: ['BN', 'flag', 'flag: brunei'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f3.png', + }, + { + emoji: '🇧🇴', + name: 'bolivia', + shortcodes: ['bolivia', 'flag_bo'], + tags: ['BO', 'flag', 'flag: bolivia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f4.png', + }, + { + emoji: '🇧🇶', + name: 'caribbean_netherlands', + shortcodes: ['caribbean_netherlands', 'flag_bq'], + tags: ['BQ', 'flag', 'flag: caribbean netherlands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f6.png', + }, + { + emoji: '🇧🇷', + name: 'brazil', + shortcodes: ['brazil', 'flag_br'], + tags: ['BR', 'flag', 'flag: brazil'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f7.png', + }, + { + emoji: '🇧🇸', + name: 'bahamas', + shortcodes: ['bahamas', 'flag_bs'], + tags: ['BS', 'flag', 'flag: bahamas'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f8.png', + }, + { + emoji: '🇧🇹', + name: 'bhutan', + shortcodes: ['bhutan', 'flag_bt'], + tags: ['BT', 'flag', 'flag: bhutan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1f9.png', + }, + { + emoji: '🇧🇻', + name: 'bouvet_island', + shortcodes: ['bouvet_island', 'flag_bv'], + tags: ['BV', 'flag', 'flag: bouvet island'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1fb.png', + }, + { + emoji: '🇧🇼', + name: 'botswana', + shortcodes: ['botswana', 'flag_bw'], + tags: ['BW', 'flag', 'flag: botswana'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1fc.png', + }, + { + emoji: '🇧🇾', + name: 'belarus', + shortcodes: ['belarus', 'flag_by'], + tags: ['BY', 'flag', 'flag: belarus'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1fe.png', + }, + { + emoji: '🇧🇿', + name: 'belize', + shortcodes: ['belize', 'flag_bz'], + tags: ['BZ', 'flag', 'flag: belize'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e7-1f1ff.png', + }, + { + emoji: '🇨🇦', + name: 'canada', + shortcodes: ['canada', 'flag_ca'], + tags: ['CA', 'flag', 'flag: canada'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1e6.png', + }, + { + emoji: '🇨🇨', + name: 'cocos_islands', + shortcodes: ['cocos_islands', 'flag_cc'], + tags: ['CC', 'flag', 'flag: cocos (keeling) islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1e8.png', + }, + { + emoji: '🇨🇩', + name: 'congo_kinshasa', + shortcodes: ['congo_kinshasa', 'flag_cd'], + tags: ['CD', 'flag', 'flag: congo - kinshasa'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1e9.png', + }, + { + emoji: '🇨🇫', + name: 'central_african_republic', + shortcodes: ['central_african_republic', 'flag_cf'], + tags: ['CF', 'flag', 'flag: central african republic'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1eb.png', + }, + { + emoji: '🇨🇬', + name: 'congo_brazzaville', + shortcodes: ['congo_brazzaville', 'flag_cg'], + tags: ['CG', 'flag', 'flag: congo - brazzaville'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1ec.png', + }, + { + emoji: '🇨🇭', + name: 'switzerland', + shortcodes: ['flag_ch', 'switzerland'], + tags: ['CH', 'flag', 'flag: switzerland'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1ed.png', + }, + { + emoji: '🇨🇮', + name: 'cote_divoire', + shortcodes: ['cote_divoire', 'flag_ci'], + tags: ['CI', 'flag', 'flag: côte d’ivoire'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1ee.png', + }, + { + emoji: '🇨🇰', + name: 'cook_islands', + shortcodes: ['cook_islands', 'flag_ck'], + tags: ['CK', 'flag', 'flag: cook islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f0.png', + }, + { + emoji: '🇨🇱', + name: 'chile', + shortcodes: ['chile', 'flag_cl'], + tags: ['CL', 'flag', 'flag: chile'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f1.png', + }, + { + emoji: '🇨🇲', + name: 'cameroon', + shortcodes: ['cameroon', 'flag_cm'], + tags: ['CM', 'flag', 'flag: cameroon'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f2.png', + }, + { + emoji: '🇨🇳', + name: 'cn', + shortcodes: ['china', 'flag_cn'], + tags: ['CN', 'flag', 'flag: china'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f3.png', + }, + { + emoji: '🇨🇴', + name: 'colombia', + shortcodes: ['colombia', 'flag_co'], + tags: ['CO', 'flag', 'flag: colombia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f4.png', + }, + { + emoji: '🇨🇵', + name: 'clipperton_island', + shortcodes: ['clipperton_island', 'flag_cp'], + tags: ['CP', 'flag', 'flag: clipperton island'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f5.png', + }, + { + emoji: '🇨🇷', + name: 'costa_rica', + shortcodes: ['costa_rica', 'flag_cr'], + tags: ['CR', 'flag', 'flag: costa rica'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1f7.png', + }, + { + emoji: '🇨🇺', + name: 'cuba', + shortcodes: ['cuba', 'flag_cu'], + tags: ['CU', 'flag', 'flag: cuba'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fa.png', + }, + { + emoji: '🇨🇻', + name: 'cape_verde', + shortcodes: ['cape_verde', 'flag_cv'], + tags: ['CV', 'flag', 'flag: cape verde'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fb.png', + }, + { + emoji: '🇨🇼', + name: 'curacao', + shortcodes: ['curacao', 'flag_cw'], + tags: ['CW', 'flag', 'flag: curaçao'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fc.png', + }, + { + emoji: '🇨🇽', + name: 'christmas_island', + shortcodes: ['christmas_island', 'flag_cx'], + tags: ['CX', 'flag', 'flag: christmas island'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fd.png', + }, + { + emoji: '🇨🇾', + name: 'cyprus', + shortcodes: ['cyprus', 'flag_cy'], + tags: ['CY', 'flag', 'flag: cyprus'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1fe.png', + }, + { + emoji: '🇨🇿', + name: 'czech_republic', + shortcodes: ['czech_republic', 'czechia', 'flag_cz'], + tags: ['CZ', 'flag', 'flag: czechia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e8-1f1ff.png', + }, + { + emoji: '🇩🇪', + name: 'de', + shortcodes: ['flag_de', 'germany'], + tags: ['DE', 'flag', 'flag: germany'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1ea.png', + }, + { + emoji: '🇩🇬', + name: 'diego_garcia', + shortcodes: ['diego_garcia', 'flag_dg'], + tags: ['DG', 'flag', 'flag: diego garcia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1ec.png', + }, + { + emoji: '🇩🇯', + name: 'djibouti', + shortcodes: ['djibouti', 'flag_dj'], + tags: ['DJ', 'flag', 'flag: djibouti'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1ef.png', + }, + { + emoji: '🇩🇰', + name: 'denmark', + shortcodes: ['denmark', 'flag_dk'], + tags: ['DK', 'flag', 'flag: denmark'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1f0.png', + }, + { + emoji: '🇩🇲', + name: 'dominica', + shortcodes: ['dominica', 'flag_dm'], + tags: ['DM', 'flag', 'flag: dominica'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1f2.png', + }, + { + emoji: '🇩🇴', + name: 'dominican_republic', + shortcodes: ['dominican_republic', 'flag_do'], + tags: ['DO', 'flag', 'flag: dominican republic'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1f4.png', + }, + { + emoji: '🇩🇿', + name: 'algeria', + shortcodes: ['algeria', 'flag_dz'], + tags: ['DZ', 'flag', 'flag: algeria'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1e9-1f1ff.png', + }, + { + emoji: '🇪🇦', + name: 'ceuta_melilla', + shortcodes: ['ceuta_melilla', 'flag_ea'], + tags: ['EA', 'flag', 'flag: ceuta & melilla'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1e6.png', + }, + { + emoji: '🇪🇨', + name: 'ecuador', + shortcodes: ['ecuador', 'flag_ec'], + tags: ['EC', 'flag', 'flag: ecuador'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1e8.png', + }, + { + emoji: '🇪🇪', + name: 'estonia', + shortcodes: ['estonia', 'flag_ee'], + tags: ['EE', 'flag', 'flag: estonia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1ea.png', + }, + { + emoji: '🇪🇬', + name: 'egypt', + shortcodes: ['egypt', 'flag_eg'], + tags: ['EG', 'flag', 'flag: egypt'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1ec.png', + }, + { + emoji: '🇪🇭', + name: 'western_sahara', + shortcodes: ['flag_eh', 'western_sahara'], + tags: ['EH', 'flag', 'flag: western sahara'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1ed.png', + }, + { + emoji: '🇪🇷', + name: 'eritrea', + shortcodes: ['eritrea', 'flag_er'], + tags: ['ER', 'flag', 'flag: eritrea'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1f7.png', + }, + { + emoji: '🇪🇸', + name: 'es', + shortcodes: ['flag_es', 'spain'], + tags: ['ES', 'flag', 'flag: spain'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1f8.png', + }, + { + emoji: '🇪🇹', + name: 'ethiopia', + shortcodes: ['ethiopia', 'flag_et'], + tags: ['ET', 'flag', 'flag: ethiopia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1f9.png', + }, + { + emoji: '🇪🇺', + name: 'eu', + shortcodes: ['european_union', 'flag_eu'], + tags: ['EU', 'flag', 'flag: european union'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ea-1f1fa.png', + }, + { + emoji: '🇫🇮', + name: 'finland', + shortcodes: ['finland', 'flag_fi'], + tags: ['FI', 'flag', 'flag: finland'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1ee.png', + }, + { + emoji: '🇫🇯', + name: 'fiji', + shortcodes: ['fiji', 'flag_fj'], + tags: ['FJ', 'flag', 'flag: fiji'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1ef.png', + }, + { + emoji: '🇫🇰', + name: 'falkland_islands', + shortcodes: ['falkland_islands', 'flag_fk'], + tags: ['FK', 'flag', 'flag: falkland islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1f0.png', + }, + { + emoji: '🇫🇲', + name: 'micronesia', + shortcodes: ['flag_fm', 'micronesia'], + tags: ['FM', 'flag', 'flag: micronesia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1f2.png', + }, + { + emoji: '🇫🇴', + name: 'faroe_islands', + shortcodes: ['faroe_islands', 'flag_fo'], + tags: ['FO', 'flag', 'flag: faroe islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1f4.png', + }, + { + emoji: '🇫🇷', + name: 'fr', + shortcodes: ['flag_fr', 'france'], + tags: ['FR', 'flag', 'flag: france'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1eb-1f1f7.png', + }, + { + emoji: '🇬🇦', + name: 'gabon', + shortcodes: ['flag_ga', 'gabon'], + tags: ['GA', 'flag', 'flag: gabon'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1e6.png', + }, + { + emoji: '🇬🇧', + name: 'gb', + shortcodes: ['flag_gb', 'uk', 'united_kingdom'], + tags: ['GB', 'flag', 'flag: united kingdom'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1e7.png', + }, + { + emoji: '🇬🇩', + name: 'grenada', + shortcodes: ['flag_gd', 'grenada'], + tags: ['GD', 'flag', 'flag: grenada'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1e9.png', + }, + { + emoji: '🇬🇪', + name: 'georgia', + shortcodes: ['flag_ge', 'georgia'], + tags: ['GE', 'flag', 'flag: georgia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1ea.png', + }, + { + emoji: '🇬🇫', + name: 'french_guiana', + shortcodes: ['flag_gf', 'french_guiana'], + tags: ['GF', 'flag', 'flag: french guiana'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1eb.png', + }, + { + emoji: '🇬🇬', + name: 'guernsey', + shortcodes: ['flag_gg', 'guernsey'], + tags: ['GG', 'flag', 'flag: guernsey'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1ec.png', + }, + { + emoji: '🇬🇭', + name: 'ghana', + shortcodes: ['flag_gh', 'ghana'], + tags: ['GH', 'flag', 'flag: ghana'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1ed.png', + }, + { + emoji: '🇬🇮', + name: 'gibraltar', + shortcodes: ['flag_gi', 'gibraltar'], + tags: ['GI', 'flag', 'flag: gibraltar'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1ee.png', + }, + { + emoji: '🇬🇱', + name: 'greenland', + shortcodes: ['flag_gl', 'greenland'], + tags: ['GL', 'flag', 'flag: greenland'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f1.png', + }, + { + emoji: '🇬🇲', + name: 'gambia', + shortcodes: ['flag_gm', 'gambia'], + tags: ['GM', 'flag', 'flag: gambia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f2.png', + }, + { + emoji: '🇬🇳', + name: 'guinea', + shortcodes: ['flag_gn', 'guinea'], + tags: ['GN', 'flag', 'flag: guinea'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f3.png', + }, + { + emoji: '🇬🇵', + name: 'guadeloupe', + shortcodes: ['flag_gp', 'guadeloupe'], + tags: ['GP', 'flag', 'flag: guadeloupe'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f5.png', + }, + { + emoji: '🇬🇶', + name: 'equatorial_guinea', + shortcodes: ['equatorial_guinea', 'flag_gq'], + tags: ['GQ', 'flag', 'flag: equatorial guinea'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f6.png', + }, + { + emoji: '🇬🇷', + name: 'greece', + shortcodes: ['flag_gr', 'greece'], + tags: ['GR', 'flag', 'flag: greece'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f7.png', + }, + { + emoji: '🇬🇸', + name: 'south_georgia_south_sandwich_islands', + shortcodes: ['flag_gs', 'south_georgia_south_sandwich_islands'], + tags: ['GS', 'flag', 'flag: south georgia & south sandwich islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f8.png', + }, + { + emoji: '🇬🇹', + name: 'guatemala', + shortcodes: ['flag_gt', 'guatemala'], + tags: ['GT', 'flag', 'flag: guatemala'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1f9.png', + }, + { + emoji: '🇬🇺', + name: 'guam', + shortcodes: ['flag_gu', 'guam'], + tags: ['GU', 'flag', 'flag: guam'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1fa.png', + }, + { + emoji: '🇬🇼', + name: 'guinea_bissau', + shortcodes: ['flag_gw', 'guinea_bissau'], + tags: ['GW', 'flag', 'flag: guinea-bissau'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1fc.png', + }, + { + emoji: '🇬🇾', + name: 'guyana', + shortcodes: ['flag_gy', 'guyana'], + tags: ['GY', 'flag', 'flag: guyana'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ec-1f1fe.png', + }, + { + emoji: '🇭🇰', + name: 'hong_kong', + shortcodes: ['flag_hk', 'hong_kong'], + tags: ['HK', 'flag', 'flag: hong kong sar china'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f0.png', + }, + { + emoji: '🇭🇲', + name: 'heard_mcdonald_islands', + shortcodes: ['flag_hm', 'heard_mcdonald_islands'], + tags: ['HM', 'flag', 'flag: heard & mcdonald islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f2.png', + }, + { + emoji: '🇭🇳', + name: 'honduras', + shortcodes: ['flag_hn', 'honduras'], + tags: ['HN', 'flag', 'flag: honduras'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f3.png', + }, + { + emoji: '🇭🇷', + name: 'croatia', + shortcodes: ['croatia', 'flag_hr'], + tags: ['HR', 'flag', 'flag: croatia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f7.png', + }, + { + emoji: '🇭🇹', + name: 'haiti', + shortcodes: ['flag_ht', 'haiti'], + tags: ['HT', 'flag', 'flag: haiti'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1f9.png', + }, + { + emoji: '🇭🇺', + name: 'hungary', + shortcodes: ['flag_hu', 'hungary'], + tags: ['HU', 'flag', 'flag: hungary'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ed-1f1fa.png', + }, + { + emoji: '🇮🇨', + name: 'canary_islands', + shortcodes: ['canary_islands', 'flag_ic'], + tags: ['IC', 'flag', 'flag: canary islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1e8.png', + }, + { + emoji: '🇮🇩', + name: 'indonesia', + shortcodes: ['flag_id', 'indonesia'], + tags: ['ID', 'flag', 'flag: indonesia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1e9.png', + }, + { + emoji: '🇮🇪', + name: 'ireland', + shortcodes: ['flag_ie', 'ireland'], + tags: ['IE', 'flag', 'flag: ireland'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1ea.png', + }, + { + emoji: '🇮🇱', + name: 'israel', + shortcodes: ['flag_il', 'israel'], + tags: ['IL', 'flag', 'flag: israel'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f1.png', + }, + { + emoji: '🇮🇲', + name: 'isle_of_man', + shortcodes: ['flag_im', 'isle_of_man'], + tags: ['IM', 'flag', 'flag: isle of man'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f2.png', + }, + { + emoji: '🇮🇳', + name: 'india', + shortcodes: ['flag_in', 'india'], + tags: ['IN', 'flag', 'flag: india'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f3.png', + }, + { + emoji: '🇮🇴', + name: 'british_indian_ocean_territory', + shortcodes: ['british_indian_ocean_territory', 'flag_io'], + tags: ['IO', 'flag', 'flag: british indian ocean territory'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f4.png', + }, + { + emoji: '🇮🇶', + name: 'iraq', + shortcodes: ['flag_iq', 'iraq'], + tags: ['IQ', 'flag', 'flag: iraq'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f6.png', + }, + { + emoji: '🇮🇷', + name: 'iran', + shortcodes: ['flag_ir', 'iran'], + tags: ['IR', 'flag', 'flag: iran'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f7.png', + }, + { + emoji: '🇮🇸', + name: 'iceland', + shortcodes: ['flag_is', 'iceland'], + tags: ['IS', 'flag', 'flag: iceland'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f8.png', + }, + { + emoji: '🇮🇹', + name: 'it', + shortcodes: ['flag_it', 'italy'], + tags: ['IT', 'flag', 'flag: italy'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ee-1f1f9.png', + }, + { + emoji: '🇯🇪', + name: 'jersey', + shortcodes: ['flag_je', 'jersey'], + tags: ['JE', 'flag', 'flag: jersey'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ef-1f1ea.png', + }, + { + emoji: '🇯🇲', + name: 'jamaica', + shortcodes: ['flag_jm', 'jamaica'], + tags: ['JM', 'flag', 'flag: jamaica'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ef-1f1f2.png', + }, + { + emoji: '🇯🇴', + name: 'jordan', + shortcodes: ['flag_jo', 'jordan'], + tags: ['JO', 'flag', 'flag: jordan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ef-1f1f4.png', + }, + { + emoji: '🇯🇵', + name: 'jp', + shortcodes: ['flag_jp', 'japan'], + tags: ['JP', 'flag', 'flag: japan'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ef-1f1f5.png', + }, + { + emoji: '🇰🇪', + name: 'kenya', + shortcodes: ['flag_ke', 'kenya'], + tags: ['KE', 'flag', 'flag: kenya'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ea.png', + }, + { + emoji: '🇰🇬', + name: 'kyrgyzstan', + shortcodes: ['flag_kg', 'kyrgyzstan'], + tags: ['KG', 'flag', 'flag: kyrgyzstan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ec.png', + }, + { + emoji: '🇰🇭', + name: 'cambodia', + shortcodes: ['cambodia', 'flag_kh'], + tags: ['KH', 'flag', 'flag: cambodia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ed.png', + }, + { + emoji: '🇰🇮', + name: 'kiribati', + shortcodes: ['flag_ki', 'kiribati'], + tags: ['KI', 'flag', 'flag: kiribati'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ee.png', + }, + { + emoji: '🇰🇲', + name: 'comoros', + shortcodes: ['comoros', 'flag_km'], + tags: ['KM', 'flag', 'flag: comoros'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1f2.png', + }, + { + emoji: '🇰🇳', + name: 'st_kitts_nevis', + shortcodes: ['flag_kn', 'st_kitts_nevis'], + tags: ['KN', 'flag', 'flag: st. kitts & nevis'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1f3.png', + }, + { + emoji: '🇰🇵', + name: 'north_korea', + shortcodes: ['flag_kp', 'north_korea'], + tags: ['KP', 'flag', 'flag: north korea'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1f5.png', + }, + { + emoji: '🇰🇷', + name: 'kr', + shortcodes: ['flag_kr', 'south_korea'], + tags: ['KR', 'flag', 'flag: south korea'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1f7.png', + }, + { + emoji: '🇰🇼', + name: 'kuwait', + shortcodes: ['flag_kw', 'kuwait'], + tags: ['KW', 'flag', 'flag: kuwait'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1fc.png', + }, + { + emoji: '🇰🇾', + name: 'cayman_islands', + shortcodes: ['cayman_islands', 'flag_ky'], + tags: ['KY', 'flag', 'flag: cayman islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1fe.png', + }, + { + emoji: '🇰🇿', + name: 'kazakhstan', + shortcodes: ['flag_kz', 'kazakhstan'], + tags: ['KZ', 'flag', 'flag: kazakhstan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f0-1f1ff.png', + }, + { + emoji: '🇱🇦', + name: 'laos', + shortcodes: ['flag_la', 'laos'], + tags: ['LA', 'flag', 'flag: laos'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1e6.png', + }, + { + emoji: '🇱🇧', + name: 'lebanon', + shortcodes: ['flag_lb', 'lebanon'], + tags: ['LB', 'flag', 'flag: lebanon'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1e7.png', + }, + { + emoji: '🇱🇨', + name: 'st_lucia', + shortcodes: ['flag_lc', 'st_lucia'], + tags: ['LC', 'flag', 'flag: st. lucia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1e8.png', + }, + { + emoji: '🇱🇮', + name: 'liechtenstein', + shortcodes: ['flag_li', 'liechtenstein'], + tags: ['LI', 'flag', 'flag: liechtenstein'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1ee.png', + }, + { + emoji: '🇱🇰', + name: 'sri_lanka', + shortcodes: ['flag_lk', 'sri_lanka'], + tags: ['LK', 'flag', 'flag: sri lanka'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1f0.png', + }, + { + emoji: '🇱🇷', + name: 'liberia', + shortcodes: ['flag_lr', 'liberia'], + tags: ['LR', 'flag', 'flag: liberia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1f7.png', + }, + { + emoji: '🇱🇸', + name: 'lesotho', + shortcodes: ['flag_ls', 'lesotho'], + tags: ['LS', 'flag', 'flag: lesotho'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1f8.png', + }, + { + emoji: '🇱🇹', + name: 'lithuania', + shortcodes: ['flag_lt', 'lithuania'], + tags: ['LT', 'flag', 'flag: lithuania'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1f9.png', + }, + { + emoji: '🇱🇺', + name: 'luxembourg', + shortcodes: ['flag_lu', 'luxembourg'], + tags: ['LU', 'flag', 'flag: luxembourg'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1fa.png', + }, + { + emoji: '🇱🇻', + name: 'latvia', + shortcodes: ['flag_lv', 'latvia'], + tags: ['LV', 'flag', 'flag: latvia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1fb.png', + }, + { + emoji: '🇱🇾', + name: 'libya', + shortcodes: ['flag_ly', 'libya'], + tags: ['LY', 'flag', 'flag: libya'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f1-1f1fe.png', + }, + { + emoji: '🇲🇦', + name: 'morocco', + shortcodes: ['flag_ma', 'morocco'], + tags: ['MA', 'flag', 'flag: morocco'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1e6.png', + }, + { + emoji: '🇲🇨', + name: 'monaco', + shortcodes: ['flag_mc', 'monaco'], + tags: ['MC', 'flag', 'flag: monaco'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1e8.png', + }, + { + emoji: '🇲🇩', + name: 'moldova', + shortcodes: ['flag_md', 'moldova'], + tags: ['MD', 'flag', 'flag: moldova'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1e9.png', + }, + { + emoji: '🇲🇪', + name: 'montenegro', + shortcodes: ['flag_me', 'montenegro'], + tags: ['ME', 'flag', 'flag: montenegro'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1ea.png', + }, + { + emoji: '🇲🇫', + name: 'st_martin', + shortcodes: ['flag_mf', 'st_martin'], + tags: ['MF', 'flag', 'flag: st. martin'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1eb.png', + }, + { + emoji: '🇲🇬', + name: 'madagascar', + shortcodes: ['flag_mg', 'madagascar'], + tags: ['MG', 'flag', 'flag: madagascar'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1ec.png', + }, + { + emoji: '🇲🇭', + name: 'marshall_islands', + shortcodes: ['flag_mh', 'marshall_islands'], + tags: ['MH', 'flag', 'flag: marshall islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1ed.png', + }, + { + emoji: '🇲🇰', + name: 'macedonia', + shortcodes: ['flag_mk', 'macedonia'], + tags: ['MK', 'flag', 'flag: north macedonia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f0.png', + }, + { + emoji: '🇲🇱', + name: 'mali', + shortcodes: ['flag_ml', 'mali'], + tags: ['ML', 'flag', 'flag: mali'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f1.png', + }, + { + emoji: '🇲🇲', + name: 'myanmar', + shortcodes: ['burma', 'flag_mm', 'myanmar'], + tags: ['MM', 'flag', 'flag: myanmar (burma)'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f2.png', + }, + { + emoji: '🇲🇳', + name: 'mongolia', + shortcodes: ['flag_mn', 'mongolia'], + tags: ['MN', 'flag', 'flag: mongolia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f3.png', + }, + { + emoji: '🇲🇴', + name: 'macau', + shortcodes: ['flag_mo', 'macao', 'macau'], + tags: ['MO', 'flag', 'flag: macao sar china'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f4.png', + }, + { + emoji: '🇲🇵', + name: 'northern_mariana_islands', + shortcodes: ['flag_mp', 'northern_mariana_islands'], + tags: ['MP', 'flag', 'flag: northern mariana islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f5.png', + }, + { + emoji: '🇲🇶', + name: 'martinique', + shortcodes: ['flag_mq', 'martinique'], + tags: ['MQ', 'flag', 'flag: martinique'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f6.png', + }, + { + emoji: '🇲🇷', + name: 'mauritania', + shortcodes: ['flag_mr', 'mauritania'], + tags: ['MR', 'flag', 'flag: mauritania'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f7.png', + }, + { + emoji: '🇲🇸', + name: 'montserrat', + shortcodes: ['flag_ms', 'montserrat'], + tags: ['MS', 'flag', 'flag: montserrat'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f8.png', + }, + { + emoji: '🇲🇹', + name: 'malta', + shortcodes: ['flag_mt', 'malta'], + tags: ['MT', 'flag', 'flag: malta'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1f9.png', + }, + { + emoji: '🇲🇺', + name: 'mauritius', + shortcodes: ['flag_mu', 'mauritius'], + tags: ['MU', 'flag', 'flag: mauritius'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fa.png', + }, + { + emoji: '🇲🇻', + name: 'maldives', + shortcodes: ['flag_mv', 'maldives'], + tags: ['MV', 'flag', 'flag: maldives'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fb.png', + }, + { + emoji: '🇲🇼', + name: 'malawi', + shortcodes: ['flag_mw', 'malawi'], + tags: ['MW', 'flag', 'flag: malawi'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fc.png', + }, + { + emoji: '🇲🇽', + name: 'mexico', + shortcodes: ['flag_mx', 'mexico'], + tags: ['MX', 'flag', 'flag: mexico'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fd.png', + }, + { + emoji: '🇲🇾', + name: 'malaysia', + shortcodes: ['flag_my', 'malaysia'], + tags: ['MY', 'flag', 'flag: malaysia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1fe.png', + }, + { + emoji: '🇲🇿', + name: 'mozambique', + shortcodes: ['flag_mz', 'mozambique'], + tags: ['MZ', 'flag', 'flag: mozambique'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f2-1f1ff.png', + }, + { + emoji: '🇳🇦', + name: 'namibia', + shortcodes: ['flag_na', 'namibia'], + tags: ['NA', 'flag', 'flag: namibia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1e6.png', + }, + { + emoji: '🇳🇨', + name: 'new_caledonia', + shortcodes: ['flag_nc', 'new_caledonia'], + tags: ['NC', 'flag', 'flag: new caledonia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1e8.png', + }, + { + emoji: '🇳🇪', + name: 'niger', + shortcodes: ['flag_ne', 'niger'], + tags: ['NE', 'flag', 'flag: niger'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1ea.png', + }, + { + emoji: '🇳🇫', + name: 'norfolk_island', + shortcodes: ['flag_nf', 'norfolk_island'], + tags: ['NF', 'flag', 'flag: norfolk island'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1eb.png', + }, + { + emoji: '🇳🇬', + name: 'nigeria', + shortcodes: ['flag_ng', 'nigeria'], + tags: ['NG', 'flag', 'flag: nigeria'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1ec.png', + }, + { + emoji: '🇳🇮', + name: 'nicaragua', + shortcodes: ['flag_ni', 'nicaragua'], + tags: ['NI', 'flag', 'flag: nicaragua'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1ee.png', + }, + { + emoji: '🇳🇱', + name: 'netherlands', + shortcodes: ['flag_nl', 'netherlands'], + tags: ['NL', 'flag', 'flag: netherlands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1f1.png', + }, + { + emoji: '🇳🇴', + name: 'norway', + shortcodes: ['flag_no', 'norway'], + tags: ['NO', 'flag', 'flag: norway'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1f4.png', + }, + { + emoji: '🇳🇵', + name: 'nepal', + shortcodes: ['flag_np', 'nepal'], + tags: ['NP', 'flag', 'flag: nepal'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1f5.png', + }, + { + emoji: '🇳🇷', + name: 'nauru', + shortcodes: ['flag_nr', 'nauru'], + tags: ['NR', 'flag', 'flag: nauru'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1f7.png', + }, + { + emoji: '🇳🇺', + name: 'niue', + shortcodes: ['flag_nu', 'niue'], + tags: ['NU', 'flag', 'flag: niue'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1fa.png', + }, + { + emoji: '🇳🇿', + name: 'new_zealand', + shortcodes: ['flag_nz', 'new_zealand'], + tags: ['NZ', 'flag', 'flag: new zealand'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f3-1f1ff.png', + }, + { + emoji: '🇴🇲', + name: 'oman', + shortcodes: ['flag_om', 'oman'], + tags: ['OM', 'flag', 'flag: oman'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f4-1f1f2.png', + }, + { + emoji: '🇵🇦', + name: 'panama', + shortcodes: ['flag_pa', 'panama'], + tags: ['PA', 'flag', 'flag: panama'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1e6.png', + }, + { + emoji: '🇵🇪', + name: 'peru', + shortcodes: ['flag_pe', 'peru'], + tags: ['PE', 'flag', 'flag: peru'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1ea.png', + }, + { + emoji: '🇵🇫', + name: 'french_polynesia', + shortcodes: ['flag_pf', 'french_polynesia'], + tags: ['PF', 'flag', 'flag: french polynesia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1eb.png', + }, + { + emoji: '🇵🇬', + name: 'papua_new_guinea', + shortcodes: ['flag_pg', 'papua_new_guinea'], + tags: ['PG', 'flag', 'flag: papua new guinea'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1ec.png', + }, + { + emoji: '🇵🇭', + name: 'philippines', + shortcodes: ['flag_ph', 'philippines'], + tags: ['PH', 'flag', 'flag: philippines'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1ed.png', + }, + { + emoji: '🇵🇰', + name: 'pakistan', + shortcodes: ['flag_pk', 'pakistan'], + tags: ['PK', 'flag', 'flag: pakistan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f0.png', + }, + { + emoji: '🇵🇱', + name: 'poland', + shortcodes: ['flag_pl', 'poland'], + tags: ['PL', 'flag', 'flag: poland'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f1.png', + }, + { + emoji: '🇵🇲', + name: 'st_pierre_miquelon', + shortcodes: ['flag_pm', 'st_pierre_miquelon'], + tags: ['PM', 'flag', 'flag: st. pierre & miquelon'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f2.png', + }, + { + emoji: '🇵🇳', + name: 'pitcairn_islands', + shortcodes: ['flag_pn', 'pitcairn_islands'], + tags: ['PN', 'flag', 'flag: pitcairn islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f3.png', + }, + { + emoji: '🇵🇷', + name: 'puerto_rico', + shortcodes: ['flag_pr', 'puerto_rico'], + tags: ['PR', 'flag', 'flag: puerto rico'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f7.png', + }, + { + emoji: '🇵🇸', + name: 'palestinian_territories', + shortcodes: ['flag_ps', 'palestinian_territories'], + tags: ['PS', 'flag', 'flag: palestinian territories'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f8.png', + }, + { + emoji: '🇵🇹', + name: 'portugal', + shortcodes: ['flag_pt', 'portugal'], + tags: ['PT', 'flag', 'flag: portugal'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1f9.png', + }, + { + emoji: '🇵🇼', + name: 'palau', + shortcodes: ['flag_pw', 'palau'], + tags: ['PW', 'flag', 'flag: palau'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1fc.png', + }, + { + emoji: '🇵🇾', + name: 'paraguay', + shortcodes: ['flag_py', 'paraguay'], + tags: ['PY', 'flag', 'flag: paraguay'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f5-1f1fe.png', + }, + { + emoji: '🇶🇦', + name: 'qatar', + shortcodes: ['flag_qa', 'qatar'], + tags: ['QA', 'flag', 'flag: qatar'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f6-1f1e6.png', + }, + { + emoji: '🇷🇪', + name: 'reunion', + shortcodes: ['flag_re', 'reunion'], + tags: ['RE', 'flag', 'flag: réunion'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1ea.png', + }, + { + emoji: '🇷🇴', + name: 'romania', + shortcodes: ['flag_ro', 'romania'], + tags: ['RO', 'flag', 'flag: romania'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1f4.png', + }, + { + emoji: '🇷🇸', + name: 'serbia', + shortcodes: ['flag_rs', 'serbia'], + tags: ['RS', 'flag', 'flag: serbia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1f8.png', + }, + { + emoji: '🇷🇺', + name: 'ru', + shortcodes: ['flag_ru', 'russia'], + tags: ['RU', 'flag', 'flag: russia'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1fa.png', + }, + { + emoji: '🇷🇼', + name: 'rwanda', + shortcodes: ['flag_rw', 'rwanda'], + tags: ['RW', 'flag', 'flag: rwanda'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f7-1f1fc.png', + }, + { + emoji: '🇸🇦', + name: 'saudi_arabia', + shortcodes: ['flag_sa', 'saudi_arabia'], + tags: ['SA', 'flag', 'flag: saudi arabia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1e6.png', + }, + { + emoji: '🇸🇧', + name: 'solomon_islands', + shortcodes: ['flag_sb', 'solomon_islands'], + tags: ['SB', 'flag', 'flag: solomon islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1e7.png', + }, + { + emoji: '🇸🇨', + name: 'seychelles', + shortcodes: ['flag_sc', 'seychelles'], + tags: ['SC', 'flag', 'flag: seychelles'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1e8.png', + }, + { + emoji: '🇸🇩', + name: 'sudan', + shortcodes: ['flag_sd', 'sudan'], + tags: ['SD', 'flag', 'flag: sudan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1e9.png', + }, + { + emoji: '🇸🇪', + name: 'sweden', + shortcodes: ['flag_se', 'sweden'], + tags: ['SE', 'flag', 'flag: sweden'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ea.png', + }, + { + emoji: '🇸🇬', + name: 'singapore', + shortcodes: ['flag_sg', 'singapore'], + tags: ['SG', 'flag', 'flag: singapore'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ec.png', + }, + { + emoji: '🇸🇭', + name: 'st_helena', + shortcodes: ['flag_sh', 'st_helena'], + tags: ['SH', 'flag', 'flag: st. helena'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ed.png', + }, + { + emoji: '🇸🇮', + name: 'slovenia', + shortcodes: ['flag_si', 'slovenia'], + tags: ['SI', 'flag', 'flag: slovenia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ee.png', + }, + { + emoji: '🇸🇯', + name: 'svalbard_jan_mayen', + shortcodes: ['flag_sj', 'svalbard_jan_mayen'], + tags: ['SJ', 'flag', 'flag: svalbard & jan mayen'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ef.png', + }, + { + emoji: '🇸🇰', + name: 'slovakia', + shortcodes: ['flag_sk', 'slovakia'], + tags: ['SK', 'flag', 'flag: slovakia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f0.png', + }, + { + emoji: '🇸🇱', + name: 'sierra_leone', + shortcodes: ['flag_sl', 'sierra_leone'], + tags: ['SL', 'flag', 'flag: sierra leone'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f1.png', + }, + { + emoji: '🇸🇲', + name: 'san_marino', + shortcodes: ['flag_sm', 'san_marino'], + tags: ['SM', 'flag', 'flag: san marino'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f2.png', + }, + { + emoji: '🇸🇳', + name: 'senegal', + shortcodes: ['flag_sn', 'senegal'], + tags: ['SN', 'flag', 'flag: senegal'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f3.png', + }, + { + emoji: '🇸🇴', + name: 'somalia', + shortcodes: ['flag_so', 'somalia'], + tags: ['SO', 'flag', 'flag: somalia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f4.png', + }, + { + emoji: '🇸🇷', + name: 'suriname', + shortcodes: ['flag_sr', 'suriname'], + tags: ['SR', 'flag', 'flag: suriname'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f7.png', + }, + { + emoji: '🇸🇸', + name: 'south_sudan', + shortcodes: ['flag_ss', 'south_sudan'], + tags: ['SS', 'flag', 'flag: south sudan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f8.png', + }, + { + emoji: '🇸🇹', + name: 'sao_tome_principe', + shortcodes: ['flag_st', 'sao_tome_principe'], + tags: ['ST', 'flag', 'flag: são tomé & príncipe'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1f9.png', + }, + { + emoji: '🇸🇻', + name: 'el_salvador', + shortcodes: ['el_salvador', 'flag_sv'], + tags: ['SV', 'flag', 'flag: el salvador'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1fb.png', + }, + { + emoji: '🇸🇽', + name: 'sint_maarten', + shortcodes: ['flag_sx', 'sint_maarten'], + tags: ['SX', 'flag', 'flag: sint maarten'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1fd.png', + }, + { + emoji: '🇸🇾', + name: 'syria', + shortcodes: ['flag_sy', 'syria'], + tags: ['SY', 'flag', 'flag: syria'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1fe.png', + }, + { + emoji: '🇸🇿', + name: 'swaziland', + shortcodes: ['eswatini', 'flag_sz', 'swaziland'], + tags: ['SZ', 'flag', 'flag: eswatini'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f8-1f1ff.png', + }, + { + emoji: '🇹🇦', + name: 'tristan_da_cunha', + shortcodes: ['flag_ta', 'tristan_da_cunha'], + tags: ['TA', 'flag', 'flag: tristan da cunha'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1e6.png', + }, + { + emoji: '🇹🇨', + name: 'turks_caicos_islands', + shortcodes: ['flag_tc', 'turks_caicos_islands'], + tags: ['TC', 'flag', 'flag: turks & caicos islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1e8.png', + }, + { + emoji: '🇹🇩', + name: 'chad', + shortcodes: ['chad', 'flag_td'], + tags: ['TD', 'flag', 'flag: chad'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1e9.png', + }, + { + emoji: '🇹🇫', + name: 'french_southern_territories', + shortcodes: ['flag_tf', 'french_southern_territories'], + tags: ['TF', 'flag', 'flag: french southern territories'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1eb.png', + }, + { + emoji: '🇹🇬', + name: 'togo', + shortcodes: ['flag_tg', 'togo'], + tags: ['TG', 'flag', 'flag: togo'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1ec.png', + }, + { + emoji: '🇹🇭', + name: 'thailand', + shortcodes: ['flag_th', 'thailand'], + tags: ['TH', 'flag', 'flag: thailand'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1ed.png', + }, + { + emoji: '🇹🇯', + name: 'tajikistan', + shortcodes: ['flag_tj', 'tajikistan'], + tags: ['TJ', 'flag', 'flag: tajikistan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1ef.png', + }, + { + emoji: '🇹🇰', + name: 'tokelau', + shortcodes: ['flag_tk', 'tokelau'], + tags: ['TK', 'flag', 'flag: tokelau'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f0.png', + }, + { + emoji: '🇹🇱', + name: 'timor_leste', + shortcodes: ['flag_tl', 'timor_leste'], + tags: ['TL', 'flag', 'flag: timor-leste'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f1.png', + }, + { + emoji: '🇹🇲', + name: 'turkmenistan', + shortcodes: ['flag_tm', 'turkmenistan'], + tags: ['TM', 'flag', 'flag: turkmenistan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f2.png', + }, + { + emoji: '🇹🇳', + name: 'tunisia', + shortcodes: ['flag_tn', 'tunisia'], + tags: ['TN', 'flag', 'flag: tunisia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f3.png', + }, + { + emoji: '🇹🇴', + name: 'tonga', + shortcodes: ['flag_to', 'tonga'], + tags: ['TO', 'flag', 'flag: tonga'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f4.png', + }, + { + emoji: '🇹🇷', + name: 'tr', + shortcodes: ['flag_tr', 'turkey_tr'], + tags: ['TR', 'flag', 'flag: türkiye'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f7.png', + }, + { + emoji: '🇹🇹', + name: 'trinidad_tobago', + shortcodes: ['flag_tt', 'trinidad_tobago'], + tags: ['TT', 'flag', 'flag: trinidad & tobago'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1f9.png', + }, + { + emoji: '🇹🇻', + name: 'tuvalu', + shortcodes: ['flag_tv', 'tuvalu'], + tags: ['TV', 'flag', 'flag: tuvalu'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1fb.png', + }, + { + emoji: '🇹🇼', + name: 'taiwan', + shortcodes: ['flag_tw', 'taiwan'], + tags: ['TW', 'flag', 'flag: taiwan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1fc.png', + }, + { + emoji: '🇹🇿', + name: 'tanzania', + shortcodes: ['flag_tz', 'tanzania'], + tags: ['TZ', 'flag', 'flag: tanzania'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1f9-1f1ff.png', + }, + { + emoji: '🇺🇦', + name: 'ukraine', + shortcodes: ['flag_ua', 'ukraine'], + tags: ['UA', 'flag', 'flag: ukraine'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1e6.png', + }, + { + emoji: '🇺🇬', + name: 'uganda', + shortcodes: ['flag_ug', 'uganda'], + tags: ['UG', 'flag', 'flag: uganda'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1ec.png', + }, + { + emoji: '🇺🇲', + name: 'us_outlying_islands', + shortcodes: ['flag_um', 'us_outlying_islands'], + tags: ['UM', 'flag', 'flag: u.s. outlying islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1f2.png', + }, + { + emoji: '🇺🇳', + name: 'united_nations', + shortcodes: ['flag_un', 'un', 'united_nations'], + tags: ['UN', 'flag', 'flag: united nations'], + group: 'flags', + emoticons: [], + version: 4, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1f3.png', + }, + { + emoji: '🇺🇸', + name: 'us', + shortcodes: ['flag_us', 'united_states', 'usa'], + tags: ['US', 'flag', 'flag: united states'], + group: 'flags', + emoticons: [], + version: 0.6, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1f8.png', + }, + { + emoji: '🇺🇾', + name: 'uruguay', + shortcodes: ['flag_uy', 'uruguay'], + tags: ['UY', 'flag', 'flag: uruguay'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1fe.png', + }, + { + emoji: '🇺🇿', + name: 'uzbekistan', + shortcodes: ['flag_uz', 'uzbekistan'], + tags: ['UZ', 'flag', 'flag: uzbekistan'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fa-1f1ff.png', + }, + { + emoji: '🇻🇦', + name: 'vatican_city', + shortcodes: ['flag_va', 'vatican_city'], + tags: ['VA', 'flag', 'flag: vatican city'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1e6.png', + }, + { + emoji: '🇻🇨', + name: 'st_vincent_grenadines', + shortcodes: ['flag_vc', 'st_vincent_grenadines'], + tags: ['VC', 'flag', 'flag: st. vincent & grenadines'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1e8.png', + }, + { + emoji: '🇻🇪', + name: 'venezuela', + shortcodes: ['flag_ve', 'venezuela'], + tags: ['VE', 'flag', 'flag: venezuela'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1ea.png', + }, + { + emoji: '🇻🇬', + name: 'british_virgin_islands', + shortcodes: ['british_virgin_islands', 'flag_vg'], + tags: ['VG', 'flag', 'flag: british virgin islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1ec.png', + }, + { + emoji: '🇻🇮', + name: 'us_virgin_islands', + shortcodes: ['flag_vi', 'us_virgin_islands'], + tags: ['VI', 'flag', 'flag: u.s. virgin islands'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1ee.png', + }, + { + emoji: '🇻🇳', + name: 'vietnam', + shortcodes: ['flag_vn', 'vietnam'], + tags: ['VN', 'flag', 'flag: vietnam'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1f3.png', + }, + { + emoji: '🇻🇺', + name: 'vanuatu', + shortcodes: ['flag_vu', 'vanuatu'], + tags: ['VU', 'flag', 'flag: vanuatu'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fb-1f1fa.png', + }, + { + emoji: '🇼🇫', + name: 'wallis_futuna', + shortcodes: ['flag_wf', 'wallis_futuna'], + tags: ['WF', 'flag', 'flag: wallis & futuna'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fc-1f1eb.png', + }, + { + emoji: '🇼🇸', + name: 'samoa', + shortcodes: ['flag_ws', 'samoa'], + tags: ['WS', 'flag', 'flag: samoa'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fc-1f1f8.png', + }, + { + emoji: '🇽🇰', + name: 'kosovo', + shortcodes: ['flag_xk', 'kosovo'], + tags: ['XK', 'flag', 'flag: kosovo'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fd-1f1f0.png', + }, + { + emoji: '🇾🇪', + name: 'yemen', + shortcodes: ['flag_ye', 'yemen'], + tags: ['YE', 'flag', 'flag: yemen'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fe-1f1ea.png', + }, + { + emoji: '🇾🇹', + name: 'mayotte', + shortcodes: ['flag_yt', 'mayotte'], + tags: ['YT', 'flag', 'flag: mayotte'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1fe-1f1f9.png', + }, + { + emoji: '🇿🇦', + name: 'south_africa', + shortcodes: ['flag_za', 'south_africa'], + tags: ['ZA', 'flag', 'flag: south africa'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ff-1f1e6.png', + }, + { + emoji: '🇿🇲', + name: 'zambia', + shortcodes: ['flag_zm', 'zambia'], + tags: ['ZM', 'flag', 'flag: zambia'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ff-1f1f2.png', + }, + { + emoji: '🇿🇼', + name: 'zimbabwe', + shortcodes: ['flag_zw', 'zimbabwe'], + tags: ['ZW', 'flag', 'flag: zimbabwe'], + group: 'flags', + emoticons: [], + version: 2, + fallbackImage: 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f1ff-1f1fc.png', + }, + { + emoji: '🏴󠁧󠁢󠁥󠁮󠁧󠁿', + name: 'england', + shortcodes: ['england', 'flag_gbeng'], + tags: ['flag', 'flag: england', 'gbeng'], + group: 'flags', + emoticons: [], + version: 5, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4-e0067-e0062-e0065-e006e-e0067-e007f.png', + }, + { + emoji: '🏴󠁧󠁢󠁳󠁣󠁴󠁿', + name: 'scotland', + shortcodes: ['flag_gbsct', 'scotland'], + tags: ['flag', 'flag: scotland', 'gbsct'], + group: 'flags', + emoticons: [], + version: 5, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4-e0067-e0062-e0073-e0063-e0074-e007f.png', + }, + { + emoji: '🏴󠁧󠁢󠁷󠁬󠁳󠁿', + name: 'wales', + shortcodes: ['flag_gbwls', 'wales'], + tags: ['flag', 'flag: wales', 'gbwls'], + group: 'flags', + emoticons: [], + version: 5, + fallbackImage: + 'https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/1f3f4-e0067-e0062-e0077-e006c-e0073-e007f.png', + }, +] + +export const gitHubCustomEmojis: EmojiItem[] = [ + { + name: 'atom', + shortcodes: ['atom'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/atom.png', + }, + { + name: 'basecamp', + shortcodes: ['basecamp'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/basecamp.png', + }, + { + name: 'basecampy', + shortcodes: ['basecampy'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/basecampy.png', + }, + { + name: 'bowtie', + shortcodes: ['bowtie'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/bowtie.png', + }, + { + name: 'electron', + shortcodes: ['electron'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/electron.png', + }, + { + name: 'feelsgood', + shortcodes: ['feelsgood'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/feelsgood.png', + }, + { + name: 'finnadie', + shortcodes: ['finnadie'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/finnadie.png', + }, + { + name: 'goberserk', + shortcodes: ['goberserk'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/goberserk.png', + }, + { + name: 'godmode', + shortcodes: ['godmode'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/godmode.png', + }, + { + name: 'hurtrealbad', + shortcodes: ['hurtrealbad'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/hurtrealbad.png', + }, + { + name: 'neckbeard', + shortcodes: ['neckbeard'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/neckbeard.png', + }, + { + name: 'octocat', + shortcodes: ['octocat'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/octocat.png', + }, + { + name: 'rage1', + shortcodes: ['rage1'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/rage1.png', + }, + { + name: 'rage2', + shortcodes: ['rage2'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/rage2.png', + }, + { + name: 'rage3', + shortcodes: ['rage3'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/rage3.png', + }, + { + name: 'rage4', + shortcodes: ['rage4'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/rage4.png', + }, + { + name: 'shipit', + shortcodes: ['shipit'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/shipit.png', + }, + { + name: 'suspect', + shortcodes: ['suspect'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/suspect.png', + }, + { + name: 'trollface', + shortcodes: ['trollface'], + tags: [], + group: 'GitHub', + fallbackImage: 'https://github.githubassets.com/images/icons/emoji/trollface.png', + }, +] + +export const gitHubEmojis: EmojiItem[] = [...emojis, ...gitHubCustomEmojis] diff --git a/packages/extension-emoji/src/emoji.ts b/packages/extension-emoji/src/emoji.ts new file mode 100644 index 0000000000..c5897e1ea4 --- /dev/null +++ b/packages/extension-emoji/src/emoji.ts @@ -0,0 +1,457 @@ +import { + combineTransactionSteps, + escapeForRegEx, + findChildrenInRange, + getChangedRanges, + InputRule, + mergeAttributes, + Node, + nodeInputRule, + PasteRule, +} from '@tiptap/core' +import type { Transaction } from '@tiptap/pm/state' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import type { SuggestionOptions } from '@tiptap/suggestion' +import Suggestion from '@tiptap/suggestion' +import emojiRegex from 'emoji-regex' +import { isEmojiSupported } from 'is-emoji-supported' + +import { emojis as defaultEmojis } from './data.js' +import { emojiToShortcode } from './helpers/emojiToShortcode.js' +import { removeDuplicates } from './helpers/removeDuplicates.js' +import { shortcodeToEmoji } from './helpers/shortcodeToEmoji.js' + +declare module '@tiptap/core' { + interface Commands { + emoji: { + /** + * Add an emoji + */ + setEmoji: (shortcode: string) => ReturnType + } + } +} + +export type EmojiItem = { + /** + * A unique name of the emoji which will be stored as attribute + */ + name: string + /** + * The emoji unicode character + */ + emoji?: string + /** + * A list of unique shortcodes that are used by input rules to find the emoji + */ + shortcodes: string[] + /** + * A list of tags that can help for searching emojis + */ + tags: string[] + /** + * A name that can help to group emojis + */ + group?: string + /** + * A list of unique emoticons + */ + emoticons?: string[] + /** + * The unicode version the emoji was introduced + */ + version?: number + /** + * A fallback image if the current system doesn't support the emoji or for custom emojis + */ + fallbackImage?: string + /** + * Store some custom data + */ + [key: string]: any +} + +export type EmojiOptions = { + HTMLAttributes: Record + emojis: EmojiItem[] + enableEmoticons: boolean + forceFallbackImages: boolean + suggestion: Omit +} + +export type EmojiStorage = { + emojis: EmojiItem[] + isSupported: (item: EmojiItem) => boolean +} + +export const EmojiSuggestionPluginKey = new PluginKey('emojiSuggestion') + +export const inputRegex = /:([a-zA-Z0-9_+-]+):$/ + +export const pasteRegex = /:([a-zA-Z0-9_+-]+):/g + +export const Emoji = Node.create({ + name: 'emoji', + + inline: true, + + group: 'inline', + + selectable: false, + + addOptions() { + return { + HTMLAttributes: {}, + emojis: defaultEmojis, + enableEmoticons: false, + forceFallbackImages: false, + suggestion: { + char: ':', + pluginKey: EmojiSuggestionPluginKey, + command: ({ editor, range, props }) => { + // increase range.to by one when the next node is of type "text" + // and starts with a space character + const nodeAfter = editor.view.state.selection.$to.nodeAfter + const overrideSpace = nodeAfter?.text?.startsWith(' ') + + if (overrideSpace) { + range.to += 1 + } + + editor + .chain() + .focus() + .insertContentAt(range, [ + { + type: this.name, + attrs: props, + }, + { + type: 'text', + text: ' ', + }, + ]) + .command(({ tr, state }) => { + tr.setStoredMarks(state.doc.resolve(state.selection.to - 2).marks()) + return true + }) + .run() + }, + allow: ({ state, range }) => { + const $from = state.doc.resolve(range.from) + const type = state.schema.nodes[this.name] + const allow = !!$from.parent.type.contentMatch.matchType(type) + + return allow + }, + }, + } + }, + + addStorage() { + const { emojis } = this.options + const supportMap: Record = removeDuplicates(emojis.map(item => item.version)) + .filter(version => typeof version === 'number') + .reduce((versions, version) => { + const emoji = emojis.find(item => item.version === version && item.emoji) + + return { + ...versions, + [version as number]: emoji ? isEmojiSupported(emoji.emoji as string) : false, + } + }, {}) + + return { + emojis: this.options.emojis, + isSupported: emojiItem => { + return emojiItem.version ? supportMap[emojiItem.version] : false + }, + } + }, + + addAttributes() { + return { + name: { + default: null, + parseHTML: element => element.dataset.name, + renderHTML: attributes => ({ + 'data-name': attributes.name, + }), + }, + } + }, + + parseHTML() { + return [ + { + tag: `span[data-type="${this.name}"]`, + }, + ] + }, + + renderHTML({ HTMLAttributes, node }) { + const emojiItem = shortcodeToEmoji(node.attrs.name, this.options.emojis) + const attributes = mergeAttributes(HTMLAttributes, this.options.HTMLAttributes, { 'data-type': this.name }) + + if (!emojiItem) { + return ['span', attributes, `:${node.attrs.name}:`] + } + + const isSupported = this.storage.isSupported(emojiItem) + const hasEmoji = !!emojiItem?.emoji + const hasFallbackImage = !!emojiItem?.fallbackImage + + const renderFallbackImage = + (this.options.forceFallbackImages && !hasEmoji) || + (this.options.forceFallbackImages && hasFallbackImage) || + (this.options.forceFallbackImages && !isSupported && hasFallbackImage) || + ((!isSupported || !hasEmoji) && hasFallbackImage) + + return [ + 'span', + attributes, + renderFallbackImage + ? [ + 'img', + { + src: emojiItem.fallbackImage, + draggable: 'false', + loading: 'lazy', + align: 'absmiddle', + }, + ] + : emojiItem.emoji || `:${emojiItem.shortcodes[0]}:`, + ] + }, + + renderText({ node }) { + const emojiItem = shortcodeToEmoji(node.attrs.name, this.options.emojis) + + return emojiItem?.emoji || `:${node.attrs.name}:` + }, + + addCommands() { + return { + setEmoji: + shortcode => + ({ chain }) => { + const emojiItem = shortcodeToEmoji(shortcode, this.options.emojis) + + if (!emojiItem) { + return false + } + + chain() + .insertContent({ + type: this.name, + attrs: { + name: emojiItem.name, + }, + }) + .command(({ tr, state }) => { + tr.setStoredMarks(state.doc.resolve(state.selection.to - 1).marks()) + return true + }) + .run() + + return true + }, + } + }, + + addInputRules() { + const inputRules: InputRule[] = [] + + inputRules.push( + new InputRule({ + find: inputRegex, + handler: ({ range, match, chain }) => { + const name = match[1] + + if (!shortcodeToEmoji(name, this.options.emojis)) { + return + } + + chain() + .insertContentAt(range, { + type: this.name, + attrs: { + name, + }, + }) + .command(({ tr, state }) => { + tr.setStoredMarks(state.doc.resolve(state.selection.to - 1).marks()) + return true + }) + .run() + }, + }), + ) + + if (this.options.enableEmoticons) { + // get the list of supported emoticons + const emoticons = this.options.emojis + .map(item => item.emoticons) + .flat() + .filter(item => item) as string[] + + const emoticonRegex = new RegExp(`(?:^|\\s)(${emoticons.map(item => escapeForRegEx(item)).join('|')}) $`) + + inputRules.push( + nodeInputRule({ + find: emoticonRegex, + type: this.type, + getAttributes: match => { + const emoji = this.options.emojis.find(item => item.emoticons?.includes(match[1])) + + if (!emoji) { + return + } + + return { + name: emoji.name, + } + }, + }), + ) + } + + return inputRules + }, + + addPasteRules() { + return [ + new PasteRule({ + find: pasteRegex, + handler: ({ range, match, chain }) => { + const name = match[1] + + if (!shortcodeToEmoji(name, this.options.emojis)) { + return + } + + chain() + .insertContentAt( + range, + { + type: this.name, + attrs: { + name, + }, + }, + { + updateSelection: false, + }, + ) + .command(({ tr, state }) => { + tr.setStoredMarks(state.doc.resolve(state.selection.to - 1).marks()) + return true + }) + .run() + }, + }), + ] + }, + + addProseMirrorPlugins() { + return [ + Suggestion({ + editor: this.editor, + ...this.options.suggestion, + }), + + new Plugin({ + key: new PluginKey('emoji'), + props: { + // double click to select emoji doesn’t work by default + // that’s why we simulate this behavior + handleDoubleClickOn: (view, pos, node) => { + if (node.type !== this.type) { + return false + } + + const from = pos + const to = from + node.nodeSize + + this.editor.commands.setTextSelection({ + from, + to, + }) + + return true + }, + }, + + // replace text emojis with emoji node on any change + appendTransaction: (transactions, oldState, newState) => { + const docChanges = transactions.some(transaction => transaction.docChanged) && !oldState.doc.eq(newState.doc) + + if (!docChanges) { + return + } + + const { tr } = newState + const transform = combineTransactionSteps(oldState.doc, transactions as Transaction[]) + const changes = getChangedRanges(transform) + + changes.forEach(({ newRange }) => { + // We don’t want to add emoji inline nodes within code blocks. + // Because this would split the code block. + + // This only works if the range of changes is within a code node. + // For all other cases (e.g. the whole document is set/pasted and the parent of the range is `doc`) + // it doesn't and we have to double check later. + if (newState.doc.resolve(newRange.from).parent.type.spec.code) { + return + } + + const textNodes = findChildrenInRange(newState.doc, newRange, node => node.type.isText) + + textNodes.forEach(({ node, pos }) => { + if (!node.text) { + return + } + + const matches = [...node.text.matchAll(emojiRegex())] + + matches.forEach(match => { + if (match.index === undefined) { + return + } + + const emoji = match[0] + const name = emojiToShortcode(emoji, this.options.emojis) + + if (!name) { + return + } + + const from = tr.mapping.map(pos + match.index) + + // Double check parent node is not a code block. + if (newState.doc.resolve(from).parent.type.spec.code) { + return + } + + const to = from + emoji.length + const emojiNode = this.type.create({ + name, + }) + + tr.replaceRangeWith(from, to, emojiNode) + + tr.setStoredMarks(newState.doc.resolve(from).marks()) + }) + }) + }) + + if (!tr.steps.length) { + return + } + + return tr + }, + }), + ] + }, +}) diff --git a/packages/extension-emoji/src/generate.ts b/packages/extension-emoji/src/generate.ts new file mode 100644 index 0000000000..3122e1a8dd --- /dev/null +++ b/packages/extension-emoji/src/generate.ts @@ -0,0 +1,80 @@ +import dataSource from 'emoji-datasource/emoji.json' +import data from 'emojibase-data/en/data.json' +import messages from 'emojibase-data/en/messages.json' +import emojibaseShortcodes from 'emojibase-data/en/shortcodes/emojibase.json' +import gitHubShortcodes from 'emojibase-data/en/shortcodes/github.json' +import fs from 'fs' +import json5 from 'json5' + +import type { EmojiItem } from './emoji.js' +import { removeVariationSelector } from './helpers/removeVariationSelector.js' + +const emojis: EmojiItem[] = data + // .filter(emoji => emoji.version > 0 && emoji.version < 14) + .map(emoji => { + const dataSourceEmoji = dataSource.find(item => { + return item.unified === emoji.hexcode || item.non_qualified === emoji.hexcode + }) + const hasFallbackImage = dataSourceEmoji?.has_img_apple + const name = [gitHubShortcodes[emoji.hexcode]].flat()[0] || [emojibaseShortcodes[emoji.hexcode]].flat()[0] + const shortcodes = emojibaseShortcodes[emoji.hexcode] ? [emojibaseShortcodes[emoji.hexcode]].flat() : [] + const emoticons = emoji.emoticon ? [emoji.emoticon].flat() : [] + + return { + emoji: removeVariationSelector(emoji.emoji), + name, + shortcodes, + tags: emoji.tags || [], + group: emoji.group ? messages.groups[emoji.group].message : '', + emoticons, + version: emoji.version, + fallbackImage: hasFallbackImage + ? `https://cdn.jsdelivr.net/npm/emoji-datasource-apple/img/apple/64/${dataSourceEmoji.image}` + : undefined, + } + }) + +const gitHubCustomEmojiNames = [ + 'atom', + 'basecamp', + 'basecampy', + 'bowtie', + 'electron', + 'feelsgood', + 'finnadie', + 'goberserk', + 'godmode', + 'hurtrealbad', + 'neckbeard', + 'octocat', + 'rage1', + 'rage2', + 'rage3', + 'rage4', + 'shipit', + 'suspect', + 'trollface', +] + +const gitHubCustomEmojis: EmojiItem[] = gitHubCustomEmojiNames.map(name => { + return { + name, + shortcodes: [name], + tags: [], + group: 'GitHub', + fallbackImage: `https://github.githubassets.com/images/icons/emoji/${name}.png`, + } +}) + +const content = `// This is a generated file + +import { EmojiItem } from './emoji' + +export const emojis: EmojiItem[] = ${json5.stringify(emojis, { space: 2 })} + +export const gitHubCustomEmojis: EmojiItem[] = ${json5.stringify(gitHubCustomEmojis, { space: 2 })} + +export const gitHubEmojis: EmojiItem[] = [...emojis, ...gitHubCustomEmojis] +` + +fs.writeFileSync('./src/data.ts', content) diff --git a/packages/extension-emoji/src/helpers/emojiToShortcode.ts b/packages/extension-emoji/src/helpers/emojiToShortcode.ts new file mode 100644 index 0000000000..622ada28e0 --- /dev/null +++ b/packages/extension-emoji/src/helpers/emojiToShortcode.ts @@ -0,0 +1,6 @@ +import type { EmojiItem } from '../emoji.js' +import { removeVariationSelector } from './removeVariationSelector.js' + +export function emojiToShortcode(emoji: string, emojis: EmojiItem[]): string | undefined { + return emojis.find(item => item.emoji === removeVariationSelector(emoji))?.shortcodes[0] +} diff --git a/packages/extension-emoji/src/helpers/removeDuplicates.ts b/packages/extension-emoji/src/helpers/removeDuplicates.ts new file mode 100644 index 0000000000..7cd79a7db3 --- /dev/null +++ b/packages/extension-emoji/src/helpers/removeDuplicates.ts @@ -0,0 +1,13 @@ +/** + * Removes duplicated values within an array. + * Supports numbers, strings and objects. + */ +export function removeDuplicates(array: T[], by = JSON.stringify): T[] { + const seen: Record = {} + + return array.filter(item => { + const key = by(item) + + return Object.prototype.hasOwnProperty.call(seen, key) ? false : (seen[key] = true) + }) +} diff --git a/packages/extension-emoji/src/helpers/removeVariationSelector.ts b/packages/extension-emoji/src/helpers/removeVariationSelector.ts new file mode 100644 index 0000000000..ee93e81848 --- /dev/null +++ b/packages/extension-emoji/src/helpers/removeVariationSelector.ts @@ -0,0 +1,3 @@ +export function removeVariationSelector(value: string): string { + return value.replace('\u{FE0E}', '').replace('\u{FE0F}', '') +} diff --git a/packages/extension-emoji/src/helpers/shortcodeToEmoji.ts b/packages/extension-emoji/src/helpers/shortcodeToEmoji.ts new file mode 100644 index 0000000000..6378888849 --- /dev/null +++ b/packages/extension-emoji/src/helpers/shortcodeToEmoji.ts @@ -0,0 +1,5 @@ +import type { EmojiItem } from '../emoji.js' + +export function shortcodeToEmoji(shortcode: string, emojis: EmojiItem[]): EmojiItem | undefined { + return emojis.find(item => shortcode === item.name || item.shortcodes.includes(shortcode)) +} diff --git a/packages/extension-emoji/src/index.ts b/packages/extension-emoji/src/index.ts new file mode 100644 index 0000000000..9cc553d815 --- /dev/null +++ b/packages/extension-emoji/src/index.ts @@ -0,0 +1,8 @@ +import { Emoji } from './emoji.js' + +export * from './data.js' +export * from './emoji.js' +export * from './helpers/emojiToShortcode.js' +export * from './helpers/shortcodeToEmoji.js' + +export default Emoji diff --git a/packages/extension-emoji/tsup.config.ts b/packages/extension-emoji/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-emoji/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-file-handler/README.md b/packages/extension-file-handler/README.md new file mode 100644 index 0000000000..969c3fea17 --- /dev/null +++ b/packages/extension-file-handler/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-file-handler +[![Version](https://img.shields.io/npm/v/@tiptap/extension-file-handler.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-file-handler) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-file-handler.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-file-handler.svg)](https://www.npmjs.com/package/@tiptap/extension-file-handler) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json new file mode 100644 index 0000000000..db31b70706 --- /dev/null +++ b/packages/extension-file-handler/package.json @@ -0,0 +1,52 @@ +{ + "name": "@tiptap/extension-file-handler", + "description": "file handler extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-file-handler" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-file-handler/src/FileHandlePlugin.ts b/packages/extension-file-handler/src/FileHandlePlugin.ts new file mode 100644 index 0000000000..efa37b1462 --- /dev/null +++ b/packages/extension-file-handler/src/FileHandlePlugin.ts @@ -0,0 +1,80 @@ +import { Plugin, PluginKey } from '@tiptap/pm/state' + +import type { FileHandlePluginOptions } from './types.js' + +export const FileHandlePlugin = ({ key, editor, onPaste, onDrop, allowedMimeTypes }: FileHandlePluginOptions) => { + return new Plugin({ + key: key || new PluginKey('fileHandler'), + + props: { + handleDrop(_view, event) { + if (!onDrop) { + return false + } + + if (!event.dataTransfer?.files.length) { + return false + } + + const dropPos = _view.posAtCoords({ + left: event.clientX, + top: event.clientY, + }) + + let filesArray = Array.from(event.dataTransfer.files) + + if (allowedMimeTypes) { + filesArray = filesArray.filter(file => allowedMimeTypes.includes(file.type)) + } + + if (filesArray.length === 0) { + return false + } + + event.preventDefault() + event.stopPropagation() + + onDrop(editor, filesArray, dropPos?.pos || 0) + + return true + }, + + handlePaste(_view, event) { + if (!onPaste) { + return false + } + + if (!event.clipboardData?.files.length) { + return false + } + + let filesArray = Array.from(event.clipboardData.files) + const htmlContent = event.clipboardData.getData('text/html') + + if (allowedMimeTypes) { + filesArray = filesArray.filter(file => allowedMimeTypes.includes(file.type)) + } + + if (filesArray.length === 0) { + return false + } + + event.preventDefault() + event.stopPropagation() + + onPaste(editor, filesArray, htmlContent) + + // if there is also file data inside the clipboard html, + // we won't use the files array and instead get the file url from the html + // this mostly happens for gifs or webms as they are not copied correctly as a file + // and will always be transformed into a PNG + // in this case we will let other extensions handle the incoming html via their inputRules + if (htmlContent.length > 0) { + return false + } + + return true + }, + }, + }) +} diff --git a/packages/extension-file-handler/src/fileHandler.ts b/packages/extension-file-handler/src/fileHandler.ts new file mode 100644 index 0000000000..bd26cf58c0 --- /dev/null +++ b/packages/extension-file-handler/src/fileHandler.ts @@ -0,0 +1,29 @@ +import { Extension } from '@tiptap/core' +import { PluginKey } from '@tiptap/pm/state' + +import { FileHandlePlugin } from './FileHandlePlugin.js' +import type { FileHandlerOptions } from './types.js' + +export const FileHandler = Extension.create({ + name: 'fileHandler', + + addOptions() { + return { + onPaste: undefined, + onDrop: undefined, + allowedMimeTypes: undefined, + } + }, + + addProseMirrorPlugins() { + return [ + FileHandlePlugin({ + key: new PluginKey(this.name), + editor: this.editor, + allowedMimeTypes: this.options.allowedMimeTypes, + onDrop: this.options.onDrop, + onPaste: this.options.onPaste, + }), + ] + }, +}) diff --git a/packages/extension-file-handler/src/index.ts b/packages/extension-file-handler/src/index.ts new file mode 100644 index 0000000000..b1a0698409 --- /dev/null +++ b/packages/extension-file-handler/src/index.ts @@ -0,0 +1,8 @@ +import { FileHandler } from './fileHandler.js' + +export * from './FileHandlePlugin.js' +export * from './types.js' + +export { FileHandler } + +export default FileHandler diff --git a/packages/extension-file-handler/src/types.ts b/packages/extension-file-handler/src/types.ts new file mode 100644 index 0000000000..948119be65 --- /dev/null +++ b/packages/extension-file-handler/src/types.ts @@ -0,0 +1,41 @@ +import type { Editor } from '@tiptap/core' +import type { PluginKey } from '@tiptap/pm/state' + +export type FileHandlePluginOptions = { + /** + * The plugin key. + * @default 'fileHandler' + */ + key?: PluginKey + + /** + * The editor instance. + */ + editor: Editor + + /** + * An array of allowed mimetypes + * + * example: ['image/jpeg', 'image/png'] + */ + allowedMimeTypes?: string[] + + /** + * The onPaste callback that is called when a file is pasted. + * @param editor the editor instance + * @param files the File array including File objects + * @param pasteContent the pasted content as HTML string - this is only available if there is also html copied to the clipboard for example by copying from a website + * @returns Returns nothing. + */ + onPaste?: (editor: Editor, files: File[], pasteContent?: string) => void + + /** + * The onDrop callback that is called when a file is dropped. + * @param editor the editor instance + * @param files the File array including File objects + * @returns Returns nothing. + */ + onDrop?: (editor: Editor, files: File[], pos: number) => void +} + +export type FileHandlerOptions = {} & Omit diff --git a/packages/extension-file-handler/tsup.config.ts b/packages/extension-file-handler/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-file-handler/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-invisible-characters/README.md b/packages/extension-invisible-characters/README.md new file mode 100644 index 0000000000..f7dfd242b1 --- /dev/null +++ b/packages/extension-invisible-characters/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-invisible-characters +[![Version](https://img.shields.io/npm/v/@tiptap/extension-invisible-characters.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-invisible-characters) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-invisible-characters.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-invisible-characters.svg)](https://www.npmjs.com/package/@tiptap/extension-invisible-characters) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json new file mode 100644 index 0000000000..0851132d8e --- /dev/null +++ b/packages/extension-invisible-characters/package.json @@ -0,0 +1,52 @@ +{ + "name": "@tiptap/extension-invisible-characters", + "description": "invisible characters extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/extension-text-style": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-invisible-characters" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-invisible-characters/src/index.ts b/packages/extension-invisible-characters/src/index.ts new file mode 100644 index 0000000000..9cf7b4fe69 --- /dev/null +++ b/packages/extension-invisible-characters/src/index.ts @@ -0,0 +1,11 @@ +import { InvisibleCharacters } from './invisible-characters.js' + +export * from './invisible-characters.js' +export * from './plugin/invisible-characters/hardBreak.js' +export * from './plugin/invisible-characters/paragraph.js' +export * from './plugin/invisible-characters/space.js' +export * from './plugin/InvisibleCharacter.js' +export * from './plugin/InvisibleNode.js' +export * from './types.js' + +export default InvisibleCharacters diff --git a/packages/extension-invisible-characters/src/invisible-characters.ts b/packages/extension-invisible-characters/src/invisible-characters.ts new file mode 100644 index 0000000000..4ee735a16b --- /dev/null +++ b/packages/extension-invisible-characters/src/invisible-characters.ts @@ -0,0 +1,95 @@ +import { Extension } from '@tiptap/core' + +import { InvisibleCharactersPlugin, InvisibleCharactersPluginKey } from './plugin/index.js' +import { HardBreakNode } from './plugin/invisible-characters/hardBreak.js' +import { ParagraphNode } from './plugin/invisible-characters/paragraph.js' +import { SpaceCharacter } from './plugin/invisible-characters/space.js' +import type { InvisibleCharactersOptions } from './types.js' + +export { HardBreakNode, ParagraphNode, SpaceCharacter } + +declare module '@tiptap/core' { + interface Commands { + invisibleCharacters: { + /** + * Show invisible characters + */ + showInvisibleCharacters: (show?: boolean) => ReturnType + + /** + * Hide invisible characters + */ + hideInvisibleCharacters: () => ReturnType + + /** + * Toggle invisible characters + */ + toggleInvisibleCharacters: () => ReturnType + } + } +} + +export const InvisibleCharacters = Extension.create({ + name: 'invisibleCharacters', + + addOptions() { + return { + visible: true, + builders: [new SpaceCharacter(), new ParagraphNode(), new HardBreakNode()], + injectCSS: true, + injectNonce: undefined, + } + }, + + addProseMirrorPlugins() { + return [InvisibleCharactersPlugin(this.editor.state, this.options)] + }, + + addStorage() { + return { + visibility: () => this.options.visible, + } + }, + + onBeforeCreate() { + this.storage.visibility = () => { + return InvisibleCharactersPluginKey.getState(this.editor.state)?.visible + } + }, + + addCommands() { + return { + showInvisibleCharacters: + (visibility = true) => + ({ dispatch, tr }) => { + if (dispatch) { + tr.setMeta('setInvisibleCharactersVisible', visibility) + } + + return true + }, + hideInvisibleCharacters: + () => + ({ dispatch, tr }) => { + if (dispatch) { + tr.setMeta('setInvisibleCharactersVisible', false) + } + + return true + }, + toggleInvisibleCharacters: + () => + ({ dispatch, tr, state }) => { + const visibility = !InvisibleCharactersPluginKey.getState(state)?.visible + + if (dispatch) { + tr.setMeta('setInvisibleCharactersVisible', visibility) + } + + return true + }, + } + }, +}) + +export default InvisibleCharacters diff --git a/packages/extension-invisible-characters/src/plugin/InvisibleCharacter.ts b/packages/extension-invisible-characters/src/plugin/InvisibleCharacter.ts new file mode 100644 index 0000000000..d2d02291e2 --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/InvisibleCharacter.ts @@ -0,0 +1,47 @@ +import type { Node } from '@tiptap/pm/model' +import type { DecorationSet } from '@tiptap/pm/view' + +import { createDecorationWidget } from './utils/create-decoration-widget.js' +import { textBetween } from './utils/text-between.js' + +export interface InvisibleCharacterOptions { + type: string + predicate: (value: string) => boolean + priority?: number + content?: string +} + +export class InvisibleCharacter { + predicate: (value: string) => boolean + + content?: string + + type: string + + priority: number + + constructor(options: InvisibleCharacterOptions) { + this.predicate = options.predicate + this.type = options.type + this.content = options.content + this.priority = options.priority || 100 + } + + createDecoration(from: number, to: number, doc: Node, decorations: DecorationSet) { + const textContent = textBetween(from, to, doc) + + return textContent.reduce((oldDecorations, currentPosition) => { + return currentPosition.text.split('').reduce((innerDecorations, char, i) => { + return this.test(char) + ? innerDecorations.add(doc, [createDecorationWidget(currentPosition.pos + i, this.type, this.content)]) + : innerDecorations + }, oldDecorations) + }, decorations) + } + + test(value: string) { + return this.predicate(value) + } +} + +export default InvisibleCharacter diff --git a/packages/extension-invisible-characters/src/plugin/InvisibleCharactersPlugin.ts b/packages/extension-invisible-characters/src/plugin/InvisibleCharactersPlugin.ts new file mode 100644 index 0000000000..a273116e6d --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/InvisibleCharactersPlugin.ts @@ -0,0 +1,82 @@ +import type { EditorState } from '@tiptap/pm/state' +import { AllSelection, Plugin, PluginKey } from '@tiptap/pm/state' +import { DecorationSet } from '@tiptap/pm/view' + +import type { InvisibleCharactersOptions, PluginState } from '../types.js' +import { stateReducer } from './reducers.js' +import { style } from './style.js' +import { createStyleTag } from './utils/create-style-tag.js' +import { getUpdatedRanges } from './utils/get-updated-ranges.js' + +export const InvisibleCharactersPluginKey = new PluginKey('invisibleCharacters') + +export const InvisibleCharactersPlugin = (state: EditorState, options: InvisibleCharactersOptions) => { + const key = InvisibleCharactersPluginKey + const emptyDecorationSet = DecorationSet.create(state.doc, []) + + const addDecorationsBetweenPositions = ( + from: number, + to: number, + editorState: EditorState, + decorations: DecorationSet, + ) => { + return options.builders + .sort((builderA, builderB) => { + if (builderA.priority > builderB.priority) { + return 1 + } + + return -1 + }) + .reduce((newDecos, builder) => { + return builder.createDecoration(from, to, editorState.doc, newDecos) + }, decorations) + } + + return new Plugin({ + key, + + state: { + init: () => { + const { $from, $to } = new AllSelection(state.doc) + + if (options.injectCSS && document) { + createStyleTag(style, options.injectNonce) + } + + return { + visible: options.visible, + decorations: addDecorationsBetweenPositions($from.pos, $to.pos, state, DecorationSet.empty), + } + }, + apply: (tr, pluginState, _, currentState) => { + const newPluginState = stateReducer(pluginState, tr.getMeta('setInvisibleCharactersVisible')) + + const decorations = getUpdatedRanges(tr).reduce( + (nextDecorations, [from, to]) => { + return addDecorationsBetweenPositions(from, to, currentState, nextDecorations) + }, + newPluginState.decorations.map(tr.mapping, tr.doc), + ) + + return { + ...newPluginState, + decorations, + } + }, + }, + + props: { + decorations(editorState) { + const pluginState = this.getState(editorState) + + const visible = pluginState?.visible + const decorations = pluginState?.decorations + + return visible ? decorations : emptyDecorationSet + }, + }, + }) +} + +export default InvisibleCharactersPlugin diff --git a/packages/extension-invisible-characters/src/plugin/InvisibleNode.ts b/packages/extension-invisible-characters/src/plugin/InvisibleNode.ts new file mode 100644 index 0000000000..e3895fadfb --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/InvisibleNode.ts @@ -0,0 +1,61 @@ +import type { Node } from '@tiptap/pm/model' +import type { DecorationSet } from '@tiptap/pm/view' + +import { createDecorationWidget } from './utils/create-decoration-widget.js' + +export interface InvisibleNodeOptions { + content?: string + position?: (node: Node, pos: number) => number + predicate: (value: Node) => boolean + priority?: number + type: string +} + +/** Default position for nodes is always at the end of the node */ +const defaultPosition = (node: Node, pos: number) => pos + node.nodeSize - 1 + +export class InvisibleNode { + predicate: (value: Node) => boolean + + position: (node: Node, pos: number) => number + + content?: string + + type: string + + priority: number + + constructor(options: InvisibleNodeOptions) { + this.predicate = options.predicate + this.type = options.type + this.position = options.position || defaultPosition + this.content = options.content + this.priority = options.priority || 100 + } + + createDecoration(from: number, to: number, doc: Node, decorations: DecorationSet) { + let newDecorations = decorations + + doc.nodesBetween(from, to, (node, pos) => { + if (this.test(node)) { + const decorationPosition = this.position(node, pos) + const oldDecorations = newDecorations.find( + decorationPosition, + decorationPosition, + spec => spec.key === this.type, + ) + + newDecorations = newDecorations + .remove(oldDecorations) + .add(doc, [createDecorationWidget(decorationPosition, this.type, this.content)]) + } + }) + return newDecorations + } + + test(value: Node) { + return this.predicate(value) + } +} + +export default InvisibleNode diff --git a/packages/extension-invisible-characters/src/plugin/index.ts b/packages/extension-invisible-characters/src/plugin/index.ts new file mode 100644 index 0000000000..ef8f1475fb --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/index.ts @@ -0,0 +1 @@ +export * from './InvisibleCharactersPlugin.js' diff --git a/packages/extension-invisible-characters/src/plugin/invisible-characters/hardBreak.ts b/packages/extension-invisible-characters/src/plugin/invisible-characters/hardBreak.ts new file mode 100644 index 0000000000..5a8c91e5c6 --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/invisible-characters/hardBreak.ts @@ -0,0 +1,12 @@ +import { InvisibleNode } from '../InvisibleNode.js' + +export class HardBreakNode extends InvisibleNode { + constructor() { + super({ + type: 'break', + predicate: node => node.type === node.type.schema.nodes.hardBreak, + }) + } +} + +export default HardBreakNode diff --git a/packages/extension-invisible-characters/src/plugin/invisible-characters/paragraph.ts b/packages/extension-invisible-characters/src/plugin/invisible-characters/paragraph.ts new file mode 100644 index 0000000000..d506e42ace --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/invisible-characters/paragraph.ts @@ -0,0 +1,12 @@ +import { InvisibleNode } from '../InvisibleNode.js' + +export class ParagraphNode extends InvisibleNode { + constructor() { + super({ + type: 'paragraph', + predicate: node => node.type === node.type.schema.nodes.paragraph, + }) + } +} + +export default ParagraphNode diff --git a/packages/extension-invisible-characters/src/plugin/invisible-characters/space.ts b/packages/extension-invisible-characters/src/plugin/invisible-characters/space.ts new file mode 100644 index 0000000000..70d7c9a512 --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/invisible-characters/space.ts @@ -0,0 +1,12 @@ +import { InvisibleCharacter } from '../InvisibleCharacter.js' + +export class SpaceCharacter extends InvisibleCharacter { + constructor() { + super({ + type: 'space', + predicate: (char: string) => char === ' ', + }) + } +} + +export default SpaceCharacter diff --git a/packages/extension-invisible-characters/src/plugin/reducers.ts b/packages/extension-invisible-characters/src/plugin/reducers.ts new file mode 100644 index 0000000000..539f423aee --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/reducers.ts @@ -0,0 +1,11 @@ +import type { PluginState } from '../types.js' + +export const stateReducer = (state: PluginState, visible: boolean): PluginState => { + if (visible === undefined) { + return state + } + + return { ...state, visible } +} + +export default stateReducer diff --git a/packages/extension-invisible-characters/src/plugin/style.ts b/packages/extension-invisible-characters/src/plugin/style.ts new file mode 100644 index 0000000000..c9d4930d6b --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/style.ts @@ -0,0 +1,43 @@ +export const style = `.Tiptap-invisible-character { + height: 0; + padding: 0; + pointer-events: none; + user-select: none; + width: 0; +} + +.Tiptap-invisible-character::before { + caret-color: inherit; + color: #aaa; + display: inline-block; + font-style: normal; + font-weight: 400; + line-height: 1em; + width: 0; +} + +.Tiptap-invisible-character--space::before { + content: '·' +} + +.Tiptap-invisible-character--break::before { + content: '¬' +} + +.Tiptap-invisible-character--paragraph::before { + content: '¶' +} + +.Tiptap-invisible-character + img.ProseMirror-separator { + height: 0 !important; + pointer-events: none; + user-select: none; + width: 0 !important; +} + +.is-empty[data-placeholder].has-focus > .Tiptap-invisible-character { + display: none; +} +` + +export default style diff --git a/packages/extension-invisible-characters/src/plugin/utils/create-decoration-widget.ts b/packages/extension-invisible-characters/src/plugin/utils/create-decoration-widget.ts new file mode 100644 index 0000000000..e6e053c5a9 --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/utils/create-decoration-widget.ts @@ -0,0 +1,28 @@ +import { Decoration } from '@tiptap/pm/view' + +export const createDecorationWidget = (pos: number, type: string, content?: string) => { + const createElement = () => { + const newElement = document.createElement('span') + + newElement.classList.add('Tiptap-invisible-character') + newElement.classList.add(`Tiptap-invisible-character--${type}`) + + if (content) { + newElement.textContent = content + } + + return newElement + } + + // return Decoration.inline(pos - 1, pos, { + // class: `Tiptap-invisible-character Tiptap-invisible-character--${type}`, + // }) + + return Decoration.widget(pos, createElement, { + key: type, + marks: [], + side: 1000, + }) +} + +export default createDecorationWidget diff --git a/packages/extension-invisible-characters/src/plugin/utils/create-style-tag.ts b/packages/extension-invisible-characters/src/plugin/utils/create-style-tag.ts new file mode 100644 index 0000000000..f3d40f63cd --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/utils/create-style-tag.ts @@ -0,0 +1,23 @@ +export const createStyleTag = (style: string, nonce?: string): HTMLStyleElement => { + const tiptapStyleTag = ( + document.querySelector('style[data-tiptap-extension-invisible-characters-style]') + ) + + if (tiptapStyleTag !== null) { + return tiptapStyleTag + } + + const styleNode = document.createElement('style') + + if (nonce) { + styleNode.setAttribute('nonce', nonce) + } + + styleNode.setAttribute('data-tiptap-extension-invisible-characters-style', '') + styleNode.innerHTML = style + document.getElementsByTagName('head')[0].appendChild(styleNode) + + return styleNode +} + +export default createStyleTag diff --git a/packages/extension-invisible-characters/src/plugin/utils/get-updated-ranges.ts b/packages/extension-invisible-characters/src/plugin/utils/get-updated-ranges.ts new file mode 100644 index 0000000000..86d1212532 --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/utils/get-updated-ranges.ts @@ -0,0 +1,17 @@ +import type { Transaction } from '@tiptap/pm/state' + +type StepRange = [from: number, to: number] + +export const getUpdatedRanges = ({ mapping }: Transaction): StepRange[] => { + const ranges: StepRange[] = [] + + mapping.maps.forEach((stepMap, i) => { + stepMap.forEach((_oldStart, _oldEnd, newStart, newEnd) => { + ranges.push([mapping.slice(i + 1).map(newStart), mapping.slice(i + 1).map(newEnd)]) + }) + }) + + return ranges +} + +export default getUpdatedRanges diff --git a/packages/extension-invisible-characters/src/plugin/utils/text-between.ts b/packages/extension-invisible-characters/src/plugin/utils/text-between.ts new file mode 100644 index 0000000000..7d897147c0 --- /dev/null +++ b/packages/extension-invisible-characters/src/plugin/utils/text-between.ts @@ -0,0 +1,22 @@ +import type { Node } from '@tiptap/pm/model' + +import type { Position } from '../../types.js' + +export const textBetween = (from: number, to: number, doc: Node) => { + const positions: Position[] = [] + + doc.nodesBetween(from, to, (node, pos) => { + if (node.isText) { + const offset = Math.max(from, pos) - pos + + positions.push({ + pos: pos + offset, + text: node.text?.slice(offset, to - pos) || '', + }) + } + }) + + return positions +} + +export default textBetween diff --git a/packages/extension-invisible-characters/src/types.ts b/packages/extension-invisible-characters/src/types.ts new file mode 100644 index 0000000000..238eaec11e --- /dev/null +++ b/packages/extension-invisible-characters/src/types.ts @@ -0,0 +1,21 @@ +import type { DecorationSet } from '@tiptap/pm/view' + +import type { InvisibleCharacter } from './plugin/InvisibleCharacter.js' +import type { InvisibleNode } from './plugin/InvisibleNode.js' + +export interface InvisibleCharactersOptions { + visible: boolean + builders: Array + injectCSS: boolean + injectNonce: string | undefined +} + +export interface Position { + pos: number + text: string +} + +export interface PluginState { + visible: boolean + decorations: DecorationSet +} diff --git a/packages/extension-invisible-characters/tsup.config.ts b/packages/extension-invisible-characters/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-invisible-characters/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-mathematics/README.md b/packages/extension-mathematics/README.md new file mode 100644 index 0000000000..f1a81745fd --- /dev/null +++ b/packages/extension-mathematics/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-mathematics +[![Version](https://img.shields.io/npm/v/@tiptap/extension-mathematics.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-mathematics) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-mathematics.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-mathematics.svg)](https://www.npmjs.com/package/@tiptap/extension-mathematics) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json new file mode 100644 index 0000000000..bcc97efc59 --- /dev/null +++ b/packages/extension-mathematics/package.json @@ -0,0 +1,47 @@ +{ + "name": "@tiptap/extension-mathematics", + "description": "latex math extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/api/extensions/mathematics", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*", + "@types/katex": "^0.16.7" + }, + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*", + "katex": "^0.16.4" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-mathematics/src/MathematicsPlugin.ts b/packages/extension-mathematics/src/MathematicsPlugin.ts new file mode 100644 index 0000000000..616f13cf7f --- /dev/null +++ b/packages/extension-mathematics/src/MathematicsPlugin.ts @@ -0,0 +1,205 @@ +import { getChangedRanges } from '@tiptap/core' +import type { EditorState, Transaction } from '@tiptap/pm/state' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import { Decoration, DecorationSet } from '@tiptap/pm/view' +import katex from 'katex' + +import type { MathematicsOptionsWithEditor } from './types.js' + +type DecoSpec = { + isEditable: boolean + isEditing: boolean + katexOptions: MathematicsOptionsWithEditor['katexOptions'] + content: string +} + +type Deco = Omit & { spec: DecoSpec } + +type PluginState = + | { decorations: DecorationSet; isEditable: boolean } + | { decorations: undefined; isEditable: undefined } + +/** + * Get the range of positions that have been affected by a transaction + */ +function getAffectedRange( + newState: EditorState, + previousPluginState: PluginState, + isEditable: boolean, + tr: Transaction, + state: EditorState, +) { + const docSize = newState.doc.nodeSize - 2 + let minFrom = 0 + let maxTo = docSize + + if (previousPluginState.isEditable !== isEditable) { + // When the editable state changes, run on all nodes just to be safe + minFrom = 0 + maxTo = docSize + } else if (tr.docChanged) { + // When the document changes, only run on the nodes that have changed + minFrom = docSize + maxTo = 0 + + getChangedRanges(tr).forEach(range => { + // Purposefully over scan the range to ensure we catch all decorations + minFrom = Math.min(minFrom, range.newRange.from - 1, range.oldRange.from - 1) + maxTo = Math.max(maxTo, range.newRange.to + 1, range.oldRange.to + 1) + }) + } else if (tr.selectionSet) { + const { $from, $to } = state.selection + const { $from: $newFrom, $to: $newTo } = newState.selection + + // When the selection changes, run on all the nodes between the old and new selection + minFrom = Math.min( + // Purposefully over scan the range to ensure we catch all decorations + $from.depth === 0 ? 0 : $from.before(), + $newFrom.depth === 0 ? 0 : $newFrom.before(), + ) + maxTo = Math.max($to.depth === 0 ? maxTo : $to.after(), $newTo.depth === 0 ? maxTo : $newTo.after()) + } + + return { + minFrom: Math.max(minFrom, 0), + maxTo: Math.min(maxTo, docSize), + } +} + +export const MathematicsPlugin = (options: MathematicsOptionsWithEditor) => { + const { regex, katexOptions = {}, editor, shouldRender } = options + + return new Plugin({ + key: new PluginKey('mathematics'), + + state: { + init() { + return { decorations: undefined, isEditable: undefined } + }, + apply(tr, previousPluginState, state, newState) { + if (!tr.docChanged && !tr.selectionSet && previousPluginState.decorations) { + // Just reuse the existing decorations, since nothing should have changed + return previousPluginState + } + + const nextDecorationSet = (previousPluginState.decorations || DecorationSet.empty).map(tr.mapping, tr.doc) + const { selection } = newState + const isEditable = editor.isEditable + const decorationsToAdd = [] as Deco[] + const { minFrom, maxTo } = getAffectedRange(newState, previousPluginState, isEditable, tr, state) + + newState.doc.nodesBetween(minFrom, maxTo, (node, pos) => { + const enabled = shouldRender(newState, pos, node) + + if (node.isText && node.text && enabled) { + let match: RegExpExecArray | null + + // eslint-disable-next-line no-cond-assign + while ((match = regex.exec(node.text))) { + const from = pos + match.index + const to = from + match[0].length + const content = match.slice(1).find(Boolean) + + if (content) { + const selectionSize = selection.from - selection.to + const anchorIsInside = selection.anchor >= from && selection.anchor <= to + const rangeIsInside = selection.from >= from && selection.to <= to + const isEditing = (selectionSize === 0 && anchorIsInside) || rangeIsInside + + if ( + // Are the decorations already present? + nextDecorationSet.find( + from, + to, + (deco: DecoSpec) => + isEditing === deco.isEditing && + content === deco.content && + isEditable === deco.isEditable && + katexOptions === deco.katexOptions, + ).length + ) { + // Decoration exists in set, no need to add it again + continue + } + // Use an inline decoration to either hide original (preview is showing) or show it (editing "mode") + decorationsToAdd.push( + Decoration.inline( + from, + to, + { + class: + isEditing && isEditable + ? 'Tiptap-mathematics-editor' + : 'Tiptap-mathematics-editor Tiptap-mathematics-editor--hidden', + style: + !isEditing || !isEditable + ? 'display: inline-block; height: 0; opacity: 0; overflow: hidden; position: absolute; width: 0;' + : undefined, + }, + { + content, + isEditable, + isEditing, + katexOptions, + } satisfies DecoSpec, + ), + ) + + if (!isEditable || !isEditing) { + // Create decoration widget and add KaTeX preview if selection is not within the math-editor + decorationsToAdd.push( + Decoration.widget( + from, + () => { + const element = document.createElement('span') + + // TODO: changeable class names + element.classList.add('Tiptap-mathematics-render') + + if (isEditable) { + element.classList.add('Tiptap-mathematics-render--editable') + } + + try { + katex.render(content!, element, katexOptions) + } catch { + element.innerHTML = content! + } + + return element + }, + { + content, + isEditable, + isEditing, + katexOptions, + } satisfies DecoSpec, + ), + ) + } + } + } + } + }) + + // Remove any decorations that exist at the same position, they will be replaced by the new decorations + const decorationsToRemove = decorationsToAdd.flatMap(deco => nextDecorationSet.find(deco.from, deco.to)) + + return { + decorations: nextDecorationSet + // Remove existing decorations that are going to be replaced + .remove(decorationsToRemove) + // Add any new decorations + .add(tr.doc, decorationsToAdd), + isEditable, + } + }, + }, + + props: { + decorations(state) { + return this.getState(state)?.decorations ?? DecorationSet.empty + }, + }, + }) +} diff --git a/packages/extension-mathematics/src/index.ts b/packages/extension-mathematics/src/index.ts new file mode 100644 index 0000000000..d143d41d38 --- /dev/null +++ b/packages/extension-mathematics/src/index.ts @@ -0,0 +1,7 @@ +import { Mathematics } from './mathematics.js' + +export * from './mathematics.js' +export * from './MathematicsPlugin.js' +export * from './types.js' + +export default Mathematics diff --git a/packages/extension-mathematics/src/mathematics.ts b/packages/extension-mathematics/src/mathematics.ts new file mode 100644 index 0000000000..e07b8e8930 --- /dev/null +++ b/packages/extension-mathematics/src/mathematics.ts @@ -0,0 +1,31 @@ +import { Extension } from '@tiptap/core' +import type { EditorState } from '@tiptap/pm/state' + +import { MathematicsPlugin } from './MathematicsPlugin.js' +import type { MathematicsOptions } from './types.js' + +export const defaultShouldRender = (state: EditorState, pos: number) => { + const $pos = state.doc.resolve(pos) + const isInCodeBlock = $pos.parent.type.name === 'codeBlock' + + return !isInCodeBlock +} + +export const Mathematics = Extension.create({ + name: 'Mathematics', + + addOptions() { + return { + // eslint-disable-next-line no-useless-escape + regex: /\$([^\$]*)\$/gi, + katexOptions: undefined, + shouldRender: defaultShouldRender, + } + }, + + addProseMirrorPlugins() { + return [MathematicsPlugin({ ...this.options, editor: this.editor })] + }, +}) + +export default Mathematics diff --git a/packages/extension-mathematics/src/types.ts b/packages/extension-mathematics/src/types.ts new file mode 100644 index 0000000000..bc97172d47 --- /dev/null +++ b/packages/extension-mathematics/src/types.ts @@ -0,0 +1,12 @@ +import type { Editor } from '@tiptap/core' +import type { Node } from '@tiptap/pm/model' +import type { EditorState } from '@tiptap/pm/state' +import type { KatexOptions } from 'katex' + +export type MathematicsOptions = { + regex: RegExp + katexOptions?: KatexOptions + shouldRender: (state: EditorState, pos: number, node: Node) => boolean +} + +export type MathematicsOptionsWithEditor = MathematicsOptions & { editor: Editor } diff --git a/packages/extension-mathematics/tsup.config.ts b/packages/extension-mathematics/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-mathematics/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json new file mode 100644 index 0000000000..c51d2819e1 --- /dev/null +++ b/packages/extension-node-range/package.json @@ -0,0 +1,45 @@ +{ + "name": "@tiptap/extension-node-range", + "description": "node range extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-node-range/src/helpers/NodeRangeBookmark.ts b/packages/extension-node-range/src/helpers/NodeRangeBookmark.ts new file mode 100644 index 0000000000..93ae341f63 --- /dev/null +++ b/packages/extension-node-range/src/helpers/NodeRangeBookmark.ts @@ -0,0 +1,26 @@ +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' +import type { Mappable } from '@tiptap/pm/transform' + +import { NodeRangeSelection } from './NodeRangeSelection.js' + +export class NodeRangeBookmark { + anchor!: number + + head!: number + + constructor(anchor: number, head: number) { + this.anchor = anchor + this.head = head + } + + map(mapping: Mappable) { + return new NodeRangeBookmark(mapping.map(this.anchor), mapping.map(this.head)) + } + + resolve(doc: ProseMirrorNode) { + const $anchor = doc.resolve(this.anchor) + const $head = doc.resolve(this.head) + + return new NodeRangeSelection($anchor, $head) + } +} diff --git a/packages/extension-node-range/src/helpers/NodeRangeSelection.ts b/packages/extension-node-range/src/helpers/NodeRangeSelection.ts new file mode 100644 index 0000000000..ee45fd0e09 --- /dev/null +++ b/packages/extension-node-range/src/helpers/NodeRangeSelection.ts @@ -0,0 +1,115 @@ +import type { Node as ProseMirrorNode, ResolvedPos } from '@tiptap/pm/model' +import { Selection } from '@tiptap/pm/state' +import type { Mapping } from '@tiptap/pm/transform' + +import { getSelectionRanges } from './getSelectionRanges.js' +import { NodeRangeBookmark } from './NodeRangeBookmark.js' + +export class NodeRangeSelection extends Selection { + depth: number | undefined + + constructor($anchor: ResolvedPos, $head: ResolvedPos, depth?: number, bias = 1) { + // if there is only a cursor we can’t calculate a direction of the selection + // that’s why we adjust the head position by 1 in the desired direction + const { doc } = $anchor + const isCursor = $anchor === $head + const isCursorAtEnd = $anchor.pos === doc.content.size && $head.pos === doc.content.size + const $correctedHead = isCursor && !isCursorAtEnd ? doc.resolve($head.pos + (bias > 0 ? 1 : -1)) : $head + const $correctedAnchor = isCursor && isCursorAtEnd ? doc.resolve($anchor.pos - (bias > 0 ? 1 : -1)) : $anchor + + const ranges = getSelectionRanges($correctedAnchor.min($correctedHead), $correctedAnchor.max($correctedHead), depth) + + // get the smallest range start position + // this will become the $anchor + const $rangeFrom = $correctedHead.pos >= $anchor.pos ? ranges[0].$from : ranges[ranges.length - 1].$to + + // get the biggest range end position + // this will become the $head + const $rangeTo = $correctedHead.pos >= $anchor.pos ? ranges[ranges.length - 1].$to : ranges[0].$from + + super($rangeFrom, $rangeTo, ranges) + + this.depth = depth + } + + // we can safely ignore this TypeScript error: https://github.com/Microsoft/TypeScript/issues/338 + // @ts-ignore + get $to() { + return this.ranges[this.ranges.length - 1].$to + } + + eq(other: Selection): boolean { + return other instanceof NodeRangeSelection && other.$from.pos === this.$from.pos && other.$to.pos === this.$to.pos + } + + map(doc: ProseMirrorNode, mapping: Mapping): NodeRangeSelection { + const $anchor = doc.resolve(mapping.map(this.anchor)) + const $head = doc.resolve(mapping.map(this.head)) + + return new NodeRangeSelection($anchor, $head) + } + + toJSON() { + return { + type: 'nodeRange', + anchor: this.anchor, + head: this.head, + } + } + + get isForwards(): boolean { + return this.head >= this.anchor + } + + get isBackwards(): boolean { + return !this.isForwards + } + + extendBackwards(): NodeRangeSelection { + const { doc } = this.$from + + if (this.isForwards && this.ranges.length > 1) { + const ranges = this.ranges.slice(0, -1) + const $from = ranges[0].$from + const $to = ranges[ranges.length - 1].$to + + return new NodeRangeSelection($from, $to, this.depth) + } + + const firstRange = this.ranges[0] + const $from = doc.resolve(Math.max(0, firstRange.$from.pos - 1)) + + return new NodeRangeSelection(this.$anchor, $from, this.depth) + } + + extendForwards(): NodeRangeSelection { + const { doc } = this.$from + + if (this.isBackwards && this.ranges.length > 1) { + const ranges = this.ranges.slice(1) + const $from = ranges[0].$from + const $to = ranges[ranges.length - 1].$to + + return new NodeRangeSelection($to, $from, this.depth) + } + + const lastRange = this.ranges[this.ranges.length - 1] + const $to = doc.resolve(Math.min(doc.content.size, lastRange.$to.pos + 1)) + + return new NodeRangeSelection(this.$anchor, $to, this.depth) + } + + static fromJSON(doc: ProseMirrorNode, json: any): NodeRangeSelection { + return new NodeRangeSelection(doc.resolve(json.anchor), doc.resolve(json.head)) + } + + static create(doc: ProseMirrorNode, anchor: number, head: number, depth?: number, bias = 1): NodeRangeSelection { + return new this(doc.resolve(anchor), doc.resolve(head), depth, bias) + } + + getBookmark(): NodeRangeBookmark { + return new NodeRangeBookmark(this.anchor, this.head) + } +} + +NodeRangeSelection.prototype.visible = false diff --git a/packages/extension-node-range/src/helpers/getNodeRangeDecorations.ts b/packages/extension-node-range/src/helpers/getNodeRangeDecorations.ts new file mode 100644 index 0000000000..4b8243109f --- /dev/null +++ b/packages/extension-node-range/src/helpers/getNodeRangeDecorations.ts @@ -0,0 +1,28 @@ +import type { SelectionRange } from '@tiptap/pm/state' +import { Decoration, DecorationSet } from '@tiptap/pm/view' + +export function getNodeRangeDecorations(ranges: SelectionRange[]): DecorationSet { + if (!ranges.length) { + return DecorationSet.empty + } + + const decorations: Decoration[] = [] + const doc = ranges[0].$from.node(0) + + ranges.forEach(range => { + const pos = range.$from.pos + const node = range.$from.nodeAfter + + if (!node) { + return + } + + decorations.push( + Decoration.node(pos, pos + node.nodeSize, { + class: 'ProseMirror-selectednoderange', + }), + ) + }) + + return DecorationSet.create(doc, decorations) +} diff --git a/packages/extension-node-range/src/helpers/getSelectionRanges.ts b/packages/extension-node-range/src/helpers/getSelectionRanges.ts new file mode 100644 index 0000000000..7c3afd7bba --- /dev/null +++ b/packages/extension-node-range/src/helpers/getSelectionRanges.ts @@ -0,0 +1,34 @@ +import { type ResolvedPos, NodeRange } from '@tiptap/pm/model' +import { SelectionRange } from '@tiptap/pm/state' + +export function getSelectionRanges($from: ResolvedPos, $to: ResolvedPos, depth?: number): SelectionRange[] { + const ranges: SelectionRange[] = [] + const doc = $from.node(0) + + // Determine the appropriate depth + if (typeof depth === 'number' && depth >= 0) { + // Use the provided depth + } else if ($from.sameParent($to)) { + depth = Math.max(0, $from.sharedDepth($to.pos) - 1) + } else { + depth = $from.sharedDepth($to.pos) + } + + const nodeRange = new NodeRange($from, $to, depth) + const offset = nodeRange.depth === 0 ? 0 : doc.resolve(nodeRange.start).posAtIndex(0) + + nodeRange.parent.forEach((node, pos) => { + const from = offset + pos + const to = from + node.nodeSize + + if (from < nodeRange.start || from >= nodeRange.end) { + return + } + + const selectionRange = new SelectionRange(doc.resolve(from), doc.resolve(to)) + + ranges.push(selectionRange) + }) + + return ranges +} diff --git a/packages/extension-node-range/src/helpers/isNodeRangeSelection.ts b/packages/extension-node-range/src/helpers/isNodeRangeSelection.ts new file mode 100644 index 0000000000..dfb56d6caa --- /dev/null +++ b/packages/extension-node-range/src/helpers/isNodeRangeSelection.ts @@ -0,0 +1,5 @@ +import { NodeRangeSelection } from './NodeRangeSelection.js' + +export function isNodeRangeSelection(value: unknown): value is NodeRangeSelection { + return value instanceof NodeRangeSelection +} diff --git a/packages/extension-node-range/src/index.ts b/packages/extension-node-range/src/index.ts new file mode 100644 index 0000000000..a0183a4e39 --- /dev/null +++ b/packages/extension-node-range/src/index.ts @@ -0,0 +1,9 @@ +import { NodeRange } from './node-range.js' + +export * from './helpers/getNodeRangeDecorations.js' +export * from './helpers/getSelectionRanges.js' +export * from './helpers/isNodeRangeSelection.js' +export * from './helpers/NodeRangeSelection.js' +export * from './node-range.js' + +export default NodeRange diff --git a/packages/extension-node-range/src/node-range.ts b/packages/extension-node-range/src/node-range.ts new file mode 100644 index 0000000000..0b24b5eec4 --- /dev/null +++ b/packages/extension-node-range/src/node-range.ts @@ -0,0 +1,210 @@ +import { Extension } from '@tiptap/core' +import type { SelectionRange } from '@tiptap/pm/state' +import { Plugin, PluginKey } from '@tiptap/pm/state' + +import { getNodeRangeDecorations } from './helpers/getNodeRangeDecorations.js' +import { getSelectionRanges } from './helpers/getSelectionRanges.js' +import { isNodeRangeSelection } from './helpers/isNodeRangeSelection.js' +import { NodeRangeSelection } from './helpers/NodeRangeSelection.js' + +export interface NodeRangeOptions { + depth: number | undefined + key: 'Shift' | 'Control' | 'Alt' | 'Meta' | 'Mod' | null | undefined +} + +export const NodeRange = Extension.create({ + name: 'nodeRange', + + addOptions() { + return { + depth: undefined, + key: 'Mod', + } + }, + + addKeyboardShortcuts() { + return { + // extend NodeRangeSelection upwards + 'Shift-ArrowUp': ({ editor }) => { + const { depth } = this.options + const { view, state } = editor + const { doc, selection, tr } = state + const { anchor, head } = selection + + if (!isNodeRangeSelection(selection)) { + const nodeRangeSelection = NodeRangeSelection.create(doc, anchor, head, depth, -1) + + tr.setSelection(nodeRangeSelection) + view.dispatch(tr) + + return true + } + + const nodeRangeSelection = selection.extendBackwards() + + tr.setSelection(nodeRangeSelection) + view.dispatch(tr) + + return true + }, + + // extend NodeRangeSelection downwards + 'Shift-ArrowDown': ({ editor }) => { + const { depth } = this.options + const { view, state } = editor + const { doc, selection, tr } = state + const { anchor, head } = selection + + if (!isNodeRangeSelection(selection)) { + const nodeRangeSelection = NodeRangeSelection.create(doc, anchor, head, depth) + + tr.setSelection(nodeRangeSelection) + view.dispatch(tr) + + return true + } + + const nodeRangeSelection = selection.extendForwards() + + tr.setSelection(nodeRangeSelection) + view.dispatch(tr) + + return true + }, + + // add `NodeRangeSelection` to all nodes + 'Mod-a': ({ editor }) => { + const { depth } = this.options + const { view, state } = editor + const { doc, tr } = state + const nodeRangeSelection = NodeRangeSelection.create(doc, 0, doc.content.size, depth) + + tr.setSelection(nodeRangeSelection) + view.dispatch(tr) + + return true + }, + } + }, + + onSelectionUpdate() { + const { selection } = this.editor.state + + if (isNodeRangeSelection(selection)) { + this.editor.view.dom.classList.add('ProseMirror-noderangeselection') + } + }, + + addProseMirrorPlugins() { + let hideTextSelection = false + let activeMouseSelection = false + + return [ + new Plugin({ + key: new PluginKey('nodeRange'), + + props: { + attributes: () => { + if (hideTextSelection) { + return { + class: 'ProseMirror-noderangeselection', + } + } + + return { class: '' } + }, + + handleDOMEvents: { + mousedown: (view, event) => { + const { key } = this.options + const isMac = /Mac/.test(navigator.platform) + const isShift = !!event.shiftKey + const isControl = !!event.ctrlKey + const isAlt = !!event.altKey + const isMeta = !!event.metaKey + const isMod = isMac ? isMeta : isControl + + if ( + key === null || + key === undefined || + (key === 'Shift' && isShift) || + (key === 'Control' && isControl) || + (key === 'Alt' && isAlt) || + (key === 'Meta' && isMeta) || + (key === 'Mod' && isMod) + ) { + activeMouseSelection = true + } + + if (!activeMouseSelection) { + return false + } + + document.addEventListener( + 'mouseup', + () => { + activeMouseSelection = false + + const { state } = view + const { doc, selection, tr } = state + const { $anchor, $head } = selection + + if ($anchor.sameParent($head)) { + return + } + + const nodeRangeSelection = NodeRangeSelection.create(doc, $anchor.pos, $head.pos, this.options.depth) + + tr.setSelection(nodeRangeSelection) + view.dispatch(tr) + }, + { once: true }, + ) + + return false + }, + }, + + // when selecting some text we want to render some decorations + // to preview a `NodeRangeSelection` + decorations: state => { + const { selection } = state + const isNodeRange = isNodeRangeSelection(selection) + + hideTextSelection = false + + if (!activeMouseSelection) { + if (!isNodeRange) { + return null + } + + hideTextSelection = true + + return getNodeRangeDecorations(selection.ranges as SelectionRange[]) + } + + const { $from, $to } = selection + + // selection is probably in the same node like a paragraph + // so we don’t render decorations and show + // a simple text selection instead + if (!isNodeRange && $from.sameParent($to)) { + return null + } + + // try to calculate some node ranges + const nodeRanges = getSelectionRanges($from, $to, this.options.depth) + + if (!nodeRanges.length) { + return null + } + + hideTextSelection = true + + return getNodeRangeDecorations(nodeRanges) + }, + }, + }), + ] + }, +}) diff --git a/packages/extension-node-range/tsup.config.ts b/packages/extension-node-range/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-node-range/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-table-of-contents/README.md b/packages/extension-table-of-contents/README.md new file mode 100644 index 0000000000..9760a4d13b --- /dev/null +++ b/packages/extension-table-of-contents/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-table-of-contents +[![Version](https://img.shields.io/npm/v/@tiptap/extension-table-of-contents.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-table-of-contents) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-table-of-contents.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-table-of-contents.svg)](https://www.npmjs.com/package/@tiptap/extension-table-of-contents) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json new file mode 100644 index 0000000000..80972c8043 --- /dev/null +++ b/packages/extension-table-of-contents/package.json @@ -0,0 +1,49 @@ +{ + "name": "@tiptap/extension-table-of-contents", + "description": "table of contents extension for Tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "SEE LICENSE IN LICENSE.md", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "dependencies": { + "uuid": "^10.0.0" + }, + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*", + "@types/uuid": "^10.0.0" + }, + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-table-of-contents/src/index.ts b/packages/extension-table-of-contents/src/index.ts new file mode 100644 index 0000000000..1c5d7821c3 --- /dev/null +++ b/packages/extension-table-of-contents/src/index.ts @@ -0,0 +1,7 @@ +import { TableOfContents } from './tableOfContents.js' + +export * from './plugin.js' +export * from './tableOfContents.js' +export * from './utils.js' + +export default TableOfContents diff --git a/packages/extension-table-of-contents/src/plugin.ts b/packages/extension-table-of-contents/src/plugin.ts new file mode 100644 index 0000000000..7690db5757 --- /dev/null +++ b/packages/extension-table-of-contents/src/plugin.ts @@ -0,0 +1,54 @@ +import type { NodeType } from '@tiptap/pm/model' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import { v4 as uuidv4 } from 'uuid' + +export const TableOfContentsPlugin = ({ + getId, + anchorTypes = ['heading'], +}: { + getId?: (textContent: string) => string + anchorTypes?: Array +}) => { + return new Plugin({ + key: new PluginKey('tableOfContent'), + + appendTransaction(transactions, _oldState, newState) { + const tr = newState.tr + let modified = false + + if (transactions.some(transaction => transaction.docChanged)) { + const existingIds: string[] = [] + + newState.doc.descendants((node, pos) => { + const nodeId = node.attrs['data-toc-id'] + + if (!anchorTypes.includes(node.type.name) || node.textContent.length === 0) { + return + } + + if (nodeId === null || nodeId === undefined || existingIds.includes(nodeId)) { + let id = '' + + if (getId) { + id = getId(node.textContent) + } else { + id = uuidv4() + } + + tr.setNodeMarkup(pos, undefined, { + ...node.attrs, + 'data-toc-id': id, + id, + }) + + modified = true + } + + existingIds.push(nodeId) + }) + } + + return modified ? tr : null + }, + }) +} diff --git a/packages/extension-table-of-contents/src/tableOfContents.ts b/packages/extension-table-of-contents/src/tableOfContents.ts new file mode 100644 index 0000000000..9a751e8f91 --- /dev/null +++ b/packages/extension-table-of-contents/src/tableOfContents.ts @@ -0,0 +1,363 @@ +import type { Editor } from '@tiptap/core' +import { Extension } from '@tiptap/core' +import type { Node as TiptapNode } from '@tiptap/pm/model' +import { v4 as uuidv4 } from 'uuid' + +import { TableOfContentsPlugin } from './plugin.js' +import type { + GetTableOfContentIndexFunction, + GetTableOfContentLevelFunction, + TableOfContentData, + TableOfContentDataItem, + TableOfContentsOptions, + TableOfContentsStorage, +} from './types.js' +import { getHeadlineLevel, getLinearIndexes } from './utils.js' + +export * from './types.js' + +const addTocActiveStatesAndGetItems = ( + content: TableOfContentDataItem[], + options: { + editor: Editor + anchorTypes: Array | undefined + storage: TableOfContentsStorage + onUpdate?: (data: TableOfContentData, isCreate?: boolean) => void | undefined + }, +) => { + const { editor } = options + const headlines: Array<{ node: TiptapNode; pos: number }> = [] + const scrolledOverIds: string[] = [] + let activeId: string | null = null + + if (editor.isDestroyed) { + return content + } + + editor.state.doc.descendants((node, pos) => { + const isValidType = options.anchorTypes?.includes(node.type.name) + + if (!isValidType) { + return + } + + headlines.push({ node, pos }) + }) + + headlines.forEach(headline => { + const domElement = editor.view.domAtPos(headline.pos + 1).node as HTMLHeadingElement | HTMLElement + const scrolledOver = options.storage.scrollPosition >= domElement.offsetTop + + if (scrolledOver) { + activeId = headline.node.attrs['data-toc-id'] + scrolledOverIds.push(headline.node.attrs['data-toc-id']) + } + }) + + content = content.map(heading => ({ + ...heading, + isActive: heading.id === activeId, + isScrolledOver: scrolledOverIds.includes(heading.id), + })) + + if (options.onUpdate) { + const isInitialCreation = options.storage.content.length === 0 + + options.onUpdate(content, isInitialCreation) + } + + return content +} + +const setTocData = (options: { + editor: Editor + anchorTypes: Array | undefined + getIndexFn: GetTableOfContentIndexFunction + getLevelFn: GetTableOfContentLevelFunction + storage: TableOfContentsStorage + onUpdate?: (data: TableOfContentData, isCreate?: boolean) => void | undefined +}) => { + const { editor, onUpdate } = options + + if (editor.isDestroyed) { + return + } + + const headlines: Array<{ node: TiptapNode; pos: number }> = [] + + let anchors: TableOfContentDataItem[] = [] + const anchorEls: Array = [] + + editor.state.doc.descendants((node, pos) => { + const isValidType = options.anchorTypes?.includes(node.type.name) + + if (!isValidType) { + return + } + + headlines.push({ node, pos }) + }) + + headlines.forEach((headline, i) => { + if (headline.node.textContent.length === 0) { + return + } + + const domElement = editor.view.domAtPos(headline.pos + 1).node as HTMLHeadingElement + const scrolledOver = options.storage.scrollPosition >= domElement.offsetTop + + anchorEls.push(domElement) + + const originalLevel = headline.node.attrs.level + + const prevHeadline = headlines[i - 1] + + const level = options.getLevelFn(headline, anchors) + const itemIndex = options.getIndexFn(headline, anchors, level) + + if (!prevHeadline) { + anchors = [ + ...anchors, + { + itemIndex, + id: headline.node.attrs['data-toc-id'], + originalLevel, + level, + textContent: headline.node.textContent, + pos: headline.pos, + editor, + isActive: false, + isScrolledOver: scrolledOver, + node: headline.node, + dom: domElement, + }, + ] + + return + } + + anchors = [ + ...anchors, + { + itemIndex, + id: headline.node.attrs['data-toc-id'], + originalLevel, + level, + textContent: headline.node.textContent, + pos: headline.pos, + editor, + isActive: false, + isScrolledOver: false, + node: headline.node, + dom: domElement, + }, + ] + }) + + anchors = addTocActiveStatesAndGetItems(anchors, options) + + if (onUpdate) { + const isInitialCreation = options.storage.content.length === 0 + + onUpdate(anchors, isInitialCreation) + } + + options.storage.anchors = anchorEls + options.storage.content = anchors + editor.state.tr.setMeta('toc', anchors) + editor.view.dispatch(editor.state.tr) +} + +export const TableOfContents = Extension.create({ + name: 'tableOfContents', + + addStorage() { + return { + content: [], + anchors: [], + scrollHandler: () => null, + scrollPosition: 0, + } + }, + + addGlobalAttributes() { + return [ + { + types: (this.options.anchorTypes as string[]) || ['headline'], + attributes: { + id: { + default: null, + renderHTML: attributes => { + return { + id: attributes.id, + } + }, + parseHTML: element => { + return element.id || null + }, + }, + 'data-toc-id': { + default: null, + renderHTML: attributes => { + return { + 'data-toc-id': attributes['data-toc-id'], + } + }, + parseHTML: element => { + return element.dataset.tocId || null + }, + }, + }, + }, + ] + }, + + addOptions() { + const defaultScrollParent = typeof window !== 'undefined' ? () => window : undefined + + return { + // eslint-disable-next-line + onUpdate: () => {}, + // eslint-disable-next-line + getId: _textContent => uuidv4(), + + scrollParent: defaultScrollParent, + + anchorTypes: ['heading'], + } + }, + + addCommands() { + return { + updateTableOfContents: + () => + ({ dispatch }) => { + if (dispatch) { + setTocData({ + editor: this.editor, + storage: this.storage, + onUpdate: this.options.onUpdate?.bind(this), + getIndexFn: this.options.getIndex || getLinearIndexes, + getLevelFn: this.options.getLevel || getHeadlineLevel, + anchorTypes: this.options.anchorTypes, + }) + } + + return true + }, + } + }, + + onTransaction({ transaction }) { + if (transaction.docChanged && !transaction.getMeta('toc')) { + setTocData({ + editor: this.editor, + storage: this.storage, + onUpdate: this.options.onUpdate?.bind(this), + getIndexFn: this.options.getIndex || getLinearIndexes, + getLevelFn: this.options.getLevel || getHeadlineLevel, + anchorTypes: this.options.anchorTypes, + }) + } + }, + + onCreate() { + const { tr } = this.editor.state + const existingIds: string[] = [] + + if (this.options.scrollParent && typeof this.options.scrollParent !== 'function') { + console.warn( + "[Tiptap Table of Contents Deprecation Notice]: The 'scrollParent' option must now be provided as a callback function that returns the 'scrollParent' element. The ability to pass this option directly will be deprecated in future releases.", + ) + } + + this.editor.state.doc.descendants((node, pos) => { + const nodeId = node.attrs['data-toc-id'] + const isValidType = this.options.anchorTypes?.includes(node.type.name) + + if (!isValidType || node.textContent.length === 0) { + return + } + + if (nodeId === null || nodeId === undefined || existingIds.includes(nodeId)) { + let id = '' + + if (this.options.getId) { + id = this.options.getId(node.textContent) + } else { + id = uuidv4() + } + + tr.setNodeMarkup(pos, undefined, { + ...node.attrs, + 'data-toc-id': id, + id, + }) + } + + existingIds.push(nodeId) + }) + + this.editor.view.dispatch(tr) + + setTocData({ + editor: this.editor, + storage: this.storage, + onUpdate: this.options.onUpdate?.bind(this), + getIndexFn: this.options.getIndex || getLinearIndexes, + getLevelFn: this.options.getLevel || getHeadlineLevel, + anchorTypes: this.options.anchorTypes, + }) + + this.storage.scrollHandler = () => { + if (!this.options.scrollParent) { + return + } + + // if scrollParent is HTML Element, use scrollTop - otherwise use scrollY + const scrollParent = + typeof this.options.scrollParent === 'function' ? this.options.scrollParent() : this.options.scrollParent + + const scrollPosition = scrollParent instanceof HTMLElement ? scrollParent.scrollTop : scrollParent.scrollY + + this.storage.scrollPosition = scrollPosition || 0 + + const updatedItems = addTocActiveStatesAndGetItems(this.storage.content, { + editor: this.editor, + anchorTypes: this.options.anchorTypes, + storage: this.storage, + onUpdate: this.options.onUpdate?.bind(this), + }) + + this.storage.content = updatedItems + } + + if (!this.options.scrollParent) { + return + } + + const scrollParent = + typeof this.options.scrollParent === 'function' ? this.options.scrollParent() : this.options.scrollParent + + if (scrollParent) { + scrollParent.addEventListener('scroll', this.storage.scrollHandler) + } + }, + + onDestroy() { + if (!this.options.scrollParent) { + return + } + + const scrollParent = + typeof this.options.scrollParent === 'function' ? this.options.scrollParent() : this.options.scrollParent + + if (scrollParent) { + scrollParent.removeEventListener('scroll', this.storage.scrollHandler) + } + }, + + addProseMirrorPlugins() { + return [TableOfContentsPlugin({ getId: this.options.getId, anchorTypes: this.options.anchorTypes })] + }, +}) diff --git a/packages/extension-table-of-contents/src/types.ts b/packages/extension-table-of-contents/src/types.ts new file mode 100644 index 0000000000..c742e96018 --- /dev/null +++ b/packages/extension-table-of-contents/src/types.ts @@ -0,0 +1,53 @@ +import type { Editor } from '@tiptap/core' +import type { Node } from '@tiptap/pm/model' + +export type GetTableOfContentLevelFunction = ( + headline: { node: Node; pos: number }, + previousItems: TableOfContentDataItem[], +) => number + +export type GetTableOfContentIndexFunction = ( + headline: { node: Node; pos: number }, + previousItems: TableOfContentDataItem[], + currentLevel?: number, +) => number + +export type TableOfContentsOptions = { + getId?: (textContent: string) => string + onUpdate?: (data: TableOfContentData, isCreate?: boolean) => void + getLevel?: GetTableOfContentLevelFunction + getIndex?: GetTableOfContentIndexFunction + scrollParent?: (() => HTMLElement | Window) | HTMLElement | Window + anchorTypes?: Array +} + +export type TableOfContentsStorage = { + content: TableOfContentData + anchors: Array + scrollHandler: () => void + scrollPosition: number +} + +export type TableOfContentData = Array + +export type TableOfContentDataItem = { + dom: HTMLHeadingElement + editor: Editor + id: string + isActive: boolean + isScrolledOver: boolean + itemIndex: number + level: number + node: Node + originalLevel: number + pos: number + textContent: string +} + +declare module '@tiptap/core' { + interface Commands { + tableOfContents: { + updateTableOfContents: () => ReturnType + } + } +} diff --git a/packages/extension-table-of-contents/src/utils.ts b/packages/extension-table-of-contents/src/utils.ts new file mode 100644 index 0000000000..6c59403a2e --- /dev/null +++ b/packages/extension-table-of-contents/src/utils.ts @@ -0,0 +1,75 @@ +import type { GetTableOfContentIndexFunction, GetTableOfContentLevelFunction, TableOfContentDataItem } from './types.js' + +export const getLastHeadingOnLevel = ( + headings: TableOfContentDataItem[], + level: number, +): TableOfContentDataItem | undefined => { + let heading = headings.filter(currentHeading => currentHeading.level === level).pop() + + if (level === 0) { + return undefined + } + + if (!heading) { + heading = getLastHeadingOnLevel(headings, level - 1) + } + + return heading +} + +export const getHeadlineLevel: GetTableOfContentLevelFunction = (headline, previousItems) => { + let level = 1 + + const previousHeadline = previousItems.at(-1) + const highestHeadlineAbove = [...previousItems].reverse().find(h => h.originalLevel <= headline.node.attrs.level) + + const highestLevelAbove = highestHeadlineAbove?.level || 1 + + if (headline.node.attrs.level > (previousHeadline?.originalLevel || 1)) { + level = (previousHeadline?.level || 1) + 1 + } else if (headline.node.attrs.level < (previousHeadline?.originalLevel || 1)) { + level = highestLevelAbove + } else { + level = previousHeadline?.level || 1 + } + + return level +} + +export const getLinearIndexes: GetTableOfContentIndexFunction = (_headline, previousHeadlines) => { + const previousHeadline = previousHeadlines.at(-1) + + if (!previousHeadline) { + return 1 + } + + return (previousHeadline?.itemIndex || 1) + 1 +} + +export const getHierarchicalIndexes: GetTableOfContentIndexFunction = (headline, previousHeadlines, currentLevel) => { + const level = currentLevel || headline.node.attrs.level || 1 + let itemIndex = 1 + + const previousHeadlinesOnLevelOrBelow = previousHeadlines.filter(h => h.level <= level) + + if (previousHeadlinesOnLevelOrBelow.at(-1)?.level === level) { + itemIndex = (previousHeadlinesOnLevelOrBelow.at(-1)?.itemIndex || 1) + 1 + } else { + itemIndex = 1 + } + + return itemIndex +} + +export function debounce(func: (...args: any[]) => void, wait: number) { + let timeout: ReturnType | null = null + + return (...args: any[]) => { + if (timeout) { + clearTimeout(timeout) + } + timeout = setTimeout(() => { + func(...args) + }, wait) + } +} diff --git a/packages/extension-table-of-contents/tsup.config.ts b/packages/extension-table-of-contents/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-table-of-contents/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/packages/extension-unique-id/README.md b/packages/extension-unique-id/README.md new file mode 100644 index 0000000000..583c389850 --- /dev/null +++ b/packages/extension-unique-id/README.md @@ -0,0 +1,14 @@ +# @tiptap/extension-unique-id +[![Version](https://img.shields.io/npm/v/@tiptap/extension-unique-id.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-unique-id) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-unique-id.svg)](https://npmcharts.com/compare/tiptap?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-unique-id.svg)](https://www.npmjs.com/package/@tiptap/extension-unique-id) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as *New York Times*, *The Guardian* or *Atlassian*. + +## Official Documentation +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json new file mode 100644 index 0000000000..864051c7b8 --- /dev/null +++ b/packages/extension-unique-id/package.json @@ -0,0 +1,54 @@ +{ + "name": "@tiptap/extension-unique-id", + "description": "unique id extension for tiptap", + "version": "3.0.0-beta.7", + "homepage": "https://tiptap.dev/api/extensions/unique-id", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "peerDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*" + }, + "dependencies": { + "uuid": "^10.0.0" + }, + "devDependencies": { + "@tiptap/core": "workspace:*", + "@tiptap/pm": "workspace:*", + "@types/uuid": "^10.0.0" + }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-unique-id" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-unique-id/src/helpers/findDuplicates.ts b/packages/extension-unique-id/src/helpers/findDuplicates.ts new file mode 100644 index 0000000000..d193e8b3bf --- /dev/null +++ b/packages/extension-unique-id/src/helpers/findDuplicates.ts @@ -0,0 +1,11 @@ +import { removeDuplicates } from './removeDuplicates.js' + +/** + * Returns a list of duplicated items within an array. + */ +export function findDuplicates(items: any[]): any[] { + const filtered = items.filter((el, index) => items.indexOf(el) !== index) + const duplicates = removeDuplicates(filtered) + + return duplicates +} diff --git a/packages/extension-unique-id/src/helpers/removeDuplicates.ts b/packages/extension-unique-id/src/helpers/removeDuplicates.ts new file mode 100644 index 0000000000..7cd79a7db3 --- /dev/null +++ b/packages/extension-unique-id/src/helpers/removeDuplicates.ts @@ -0,0 +1,13 @@ +/** + * Removes duplicated values within an array. + * Supports numbers, strings and objects. + */ +export function removeDuplicates(array: T[], by = JSON.stringify): T[] { + const seen: Record = {} + + return array.filter(item => { + const key = by(item) + + return Object.prototype.hasOwnProperty.call(seen, key) ? false : (seen[key] = true) + }) +} diff --git a/packages/extension-unique-id/src/index.ts b/packages/extension-unique-id/src/index.ts new file mode 100644 index 0000000000..fd571af2ea --- /dev/null +++ b/packages/extension-unique-id/src/index.ts @@ -0,0 +1,5 @@ +import { UniqueID } from './unique-id.js' + +export * from './unique-id.js' + +export default UniqueID diff --git a/packages/extension-unique-id/src/unique-id.ts b/packages/extension-unique-id/src/unique-id.ts new file mode 100644 index 0000000000..686a262ec1 --- /dev/null +++ b/packages/extension-unique-id/src/unique-id.ts @@ -0,0 +1,303 @@ +import { combineTransactionSteps, Extension, findChildren, findChildrenInRange, getChangedRanges } from '@tiptap/core' +import type { Node as ProseMirrorNode } from '@tiptap/pm/model' +import { Fragment, Slice } from '@tiptap/pm/model' +import type { Transaction } from '@tiptap/pm/state' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import { v4 as uuidv4 } from 'uuid' + +import { findDuplicates } from './helpers/findDuplicates.js' + +export interface UniqueIDOptions { + attributeName: string + types: string[] + generateID: () => any + filterTransaction: ((transaction: Transaction) => boolean) | null +} + +export const UniqueID = Extension.create({ + name: 'uniqueID', + + // we’ll set a very high priority to make sure this runs first + // and is compatible with `appendTransaction` hooks of other extensions + priority: 10000, + + addOptions() { + return { + attributeName: 'id', + types: [], + generateID: () => uuidv4(), + filterTransaction: null, + } + }, + + addGlobalAttributes() { + return [ + { + types: this.options.types, + attributes: { + [this.options.attributeName]: { + default: null, + parseHTML: element => element.getAttribute(`data-${this.options.attributeName}`), + renderHTML: attributes => { + if (!attributes[this.options.attributeName]) { + return {} + } + + return { + [`data-${this.options.attributeName}`]: attributes[this.options.attributeName], + } + }, + }, + }, + }, + ] + }, + + // check initial content for missing ids + onCreate() { + const collab = this.editor.extensionManager.extensions.find(ext => ext.name === 'collaboration') + const provider = collab?.options ? collab.options.provider : undefined + + const createIds = () => { + const { view, state } = this.editor + const { tr, doc } = state + const { types, attributeName, generateID } = this.options + const nodesWithoutId = findChildren(doc, node => { + return types.includes(node.type.name) && node.attrs[attributeName] === null + }) + + nodesWithoutId.forEach(({ node, pos }) => { + tr.setNodeMarkup(pos, undefined, { + ...node.attrs, + [attributeName]: generateID(), + }) + }) + + tr.setMeta('addToHistory', false) + + view.dispatch(tr) + + if (provider) { + provider.off('synced', createIds) + } + } + + /** + * We need to handle collaboration a bit different here + * because we can't automatically add IDs when the provider is not yet synced + * otherwise we end up with empty paragraphs + */ + if (collab) { + if (!provider) { + return createIds() + } + + provider.on('synced', createIds) + } else { + return createIds() + } + }, + + addProseMirrorPlugins() { + let dragSourceElement: Element | null = null + let transformPasted = false + + return [ + new Plugin({ + key: new PluginKey('uniqueID'), + + appendTransaction: (transactions, oldState, newState) => { + const hasDocChanges = + transactions.some(transaction => transaction.docChanged) && !oldState.doc.eq(newState.doc) + const filterTransactions = + this.options.filterTransaction && transactions.some(tr => !this.options.filterTransaction?.(tr)) + + const isCollabTransaction = transactions.find(tr => tr.getMeta('y-sync$')) + + if (isCollabTransaction) { + return + } + + if (!hasDocChanges || filterTransactions) { + return + } + + const { tr } = newState + + const { types, attributeName, generateID } = this.options + const transform = combineTransactionSteps(oldState.doc, transactions as Transaction[]) + const { mapping } = transform + + // get changed ranges based on the old state + const changes = getChangedRanges(transform) + + changes.forEach(({ newRange }) => { + const newNodes = findChildrenInRange(newState.doc, newRange, node => { + return types.includes(node.type.name) + }) + + const newIds = newNodes.map(({ node }) => node.attrs[attributeName]).filter(id => id !== null) + + newNodes.forEach(({ node, pos }, i) => { + // instead of checking `node.attrs[attributeName]` directly + // we look at the current state of the node within `tr.doc`. + // this helps to prevent adding new ids to the same node + // if the node changed multiple times within one transaction + const id = tr.doc.nodeAt(pos)?.attrs[attributeName] + + if (id === null) { + tr.setNodeMarkup(pos, undefined, { + ...node.attrs, + [attributeName]: generateID(), + }) + + return + } + + const nextNode = newNodes[i + 1] + + if (nextNode && node.content.size === 0) { + tr.setNodeMarkup(nextNode.pos, undefined, { + ...nextNode.node.attrs, + [attributeName]: id, + }) + newIds[i + 1] = id + + if (nextNode.node.attrs[attributeName]) { + return + } + + const generatedId = generateID() + + tr.setNodeMarkup(pos, undefined, { + ...node.attrs, + [attributeName]: generatedId, + }) + newIds[i] = generatedId + + return tr + } + + const duplicatedNewIds = findDuplicates(newIds) + + // check if the node doesn’t exist in the old state + const { deleted } = mapping.invert().mapResult(pos) + + const newNode = deleted && duplicatedNewIds.includes(id) + + if (newNode) { + tr.setNodeMarkup(pos, undefined, { + ...node.attrs, + [attributeName]: generateID(), + }) + } + }) + }) + + if (!tr.steps.length) { + return + } + + // `tr.setNodeMarkup` resets the stored marks + // so we’ll restore them if they exist + tr.setStoredMarks(newState.tr.storedMarks) + + return tr + }, + + // we register a global drag handler to track the current drag source element + view(view) { + const handleDragstart = (event: DragEvent) => { + dragSourceElement = view.dom.parentElement?.contains(event.target as Element) + ? view.dom.parentElement + : null + } + + window.addEventListener('dragstart', handleDragstart) + + return { + destroy() { + window.removeEventListener('dragstart', handleDragstart) + }, + } + }, + + props: { + // `handleDOMEvents` is called before `transformPasted` + // so we can do some checks before + handleDOMEvents: { + // only create new ids for dropped content + // or dropped content while holding `alt` + // or content is dragged from another editor + drop: (view, event) => { + if ( + dragSourceElement !== view.dom.parentElement || + event.dataTransfer?.effectAllowed === 'copyMove' || + event.dataTransfer?.effectAllowed === 'copy' + ) { + dragSourceElement = null + transformPasted = true + } + + return false + }, + // always create new ids on pasted content + paste: () => { + transformPasted = true + + return false + }, + }, + + // we’ll remove ids for every pasted node + // so we can create a new one within `appendTransaction` + transformPasted: slice => { + if (!transformPasted) { + return slice + } + + const { types, attributeName } = this.options + const removeId = (fragment: Fragment): Fragment => { + const list: ProseMirrorNode[] = [] + + fragment.forEach(node => { + // don’t touch text nodes + if (node.isText) { + list.push(node) + + return + } + + // check for any other child nodes + if (!types.includes(node.type.name)) { + list.push(node.copy(removeId(node.content))) + + return + } + + // remove id + const nodeWithoutId = node.type.create( + { + ...node.attrs, + [attributeName]: null, + }, + removeId(node.content), + node.marks, + ) + + list.push(nodeWithoutId) + }) + + return Fragment.from(list) + } + + // reset check + transformPasted = false + + return new Slice(removeId(slice.content), slice.openStart, slice.openEnd) + }, + }, + }), + ] + }, +}) diff --git a/packages/extension-unique-id/tsup.config.ts b/packages/extension-unique-id/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-unique-id/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d2f8e29f34..4c572366d1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -158,6 +158,9 @@ importers: '@hocuspocus/provider': specifier: ^2.15.0 version: 2.15.0(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + '@hocuspocus/transformer': + specifier: ^2.15.0 + version: 2.15.2(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0)(y-prosemirror@1.3.5(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23))(yjs@13.6.23) '@lexical/react': specifier: ^0.11.3 version: 0.11.3(lexical@0.11.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(yjs@13.6.23) @@ -179,6 +182,9 @@ importers: highlight.js: specifier: ^11.11.1 version: 11.11.1 + katex: + specifier: ^0.16.4 + version: 0.16.22 lexical: specifier: ^0.11.3 version: 0.11.3 @@ -502,12 +508,170 @@ importers: specifier: workspace:* version: link:../extension-text-style + packages/extension-details: + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/extension-text-style': + specifier: workspace:* + version: link:../extension-text-style + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + + packages/extension-details-content: + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/extension-text-style': + specifier: workspace:* + version: link:../extension-text-style + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + + packages/extension-details-summary: + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/extension-text-style': + specifier: workspace:* + version: link:../extension-text-style + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + packages/extension-document: devDependencies: '@tiptap/core': specifier: workspace:* version: link:../core + packages/extension-drag-handle: + dependencies: + '@floating-ui/dom': + specifier: ^1.6.13 + version: 1.6.13 + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/extension-collaboration': + specifier: workspace:* + version: link:../extension-collaboration + '@tiptap/extension-node-range': + specifier: workspace:* + version: link:../extension-node-range + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + '@tiptap/y-tiptap': + specifier: ^3.0.0-beta.3 + version: 3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + + packages/extension-drag-handle-react: + devDependencies: + '@tiptap/extension-drag-handle': + specifier: workspace:* + version: link:../extension-drag-handle + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + '@tiptap/react': + specifier: workspace:* + version: link:../react + '@types/react': + specifier: ^18.0.0 + version: 18.3.18 + '@types/react-dom': + specifier: ^18.0.0 + version: 18.3.5(@types/react@18.3.18) + react: + specifier: ^18.0.0 + version: 18.3.1 + react-dom: + specifier: ^18.0.0 + version: 18.3.1(react@18.3.1) + + packages/extension-drag-handle-vue-2: + devDependencies: + '@tiptap/extension-drag-handle': + specifier: workspace:* + version: link:../extension-drag-handle + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + '@tiptap/vue-2': + specifier: workspace:* + version: link:../vue-2 + vue: + specifier: ^2.0.0 + version: 2.7.16 + vue-ts-types: + specifier: 1.6.2 + version: 1.6.2(vue@2.7.16) + + packages/extension-drag-handle-vue-3: + devDependencies: + '@tiptap/extension-drag-handle': + specifier: workspace:* + version: link:../extension-drag-handle + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + '@tiptap/vue-3': + specifier: workspace:* + version: link:../vue-3 + vue: + specifier: ^3.0.0 + version: 3.5.13(typescript@5.7.3) + + packages/extension-emoji: + dependencies: + emoji-regex: + specifier: ^10.4.0 + version: 10.4.0 + emojibase-data: + specifier: ^15 + version: 15.3.2(emojibase@16.0.0) + is-emoji-supported: + specifier: ^0.0.5 + version: 0.0.5 + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + '@tiptap/suggestion': + specifier: workspace:* + version: link:../suggestion + emoji-datasource: + specifier: ^7.0.2 + version: 7.0.2 + json5: + specifier: ^2.2.3 + version: 2.2.3 + tsm: + specifier: ^2.3.0 + version: 2.3.0 + + packages/extension-file-handler: + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/extension-text-style': + specifier: workspace:* + version: link:../extension-text-style + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + packages/extension-floating-menu: devDependencies: '@floating-ui/dom': @@ -559,6 +723,18 @@ importers: specifier: workspace:* version: link:../core + packages/extension-invisible-characters: + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/extension-text-style': + specifier: workspace:* + version: link:../extension-text-style + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + packages/extension-italic: devDependencies: '@tiptap/core': @@ -587,6 +763,22 @@ importers: specifier: workspace:* version: link:../pm + packages/extension-mathematics: + dependencies: + katex: + specifier: ^0.16.4 + version: 0.16.22 + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + '@types/katex': + specifier: ^0.16.7 + version: 0.16.7 + packages/extension-mention: devDependencies: '@tiptap/core': @@ -599,6 +791,15 @@ importers: specifier: workspace:* version: link:../suggestion + packages/extension-node-range: + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + packages/extension-ordered-list: devDependencies: '@tiptap/extension-list': @@ -644,6 +845,22 @@ importers: specifier: workspace:* version: link:../pm + packages/extension-table-of-contents: + dependencies: + uuid: + specifier: ^10.0.0 + version: 10.0.0 + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + '@types/uuid': + specifier: ^10.0.0 + version: 10.0.0 + packages/extension-text: devDependencies: '@tiptap/core': @@ -674,6 +891,22 @@ importers: specifier: workspace:* version: link:../core + packages/extension-unique-id: + dependencies: + uuid: + specifier: ^10.0.0 + version: 10.0.0 + devDependencies: + '@tiptap/core': + specifier: workspace:* + version: link:../core + '@tiptap/pm': + specifier: workspace:* + version: link:../pm + '@types/uuid': + specifier: ^10.0.0 + version: 10.0.0 + packages/extension-youtube: devDependencies: '@tiptap/core': @@ -1739,6 +1972,12 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm@0.15.18': + resolution: {integrity: sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + '@esbuild/android-arm@0.21.5': resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} @@ -1901,6 +2140,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-loong64@0.15.18': + resolution: {integrity: sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} @@ -2177,6 +2422,14 @@ packages: y-protocols: ^1.0.6 yjs: ^13.6.8 + '@hocuspocus/transformer@2.15.2': + resolution: {integrity: sha512-FAo/rt0kch+YeBBp/iit74q+4RV6YRjdZXmvE0/Aw+n/nSW1W0ZNGXnhncfm8qP0CuXnss/Aw8dpfEPZKUWDJw==} + peerDependencies: + '@tiptap/core': ^2.6.4 + '@tiptap/pm': ^2.6.4 + y-prosemirror: ^1.2.1 + yjs: ^13.6.8 + '@humanwhocodes/config-array@0.13.0': resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} engines: {node: '>=10.10.0'} @@ -2661,6 +2914,117 @@ packages: '@types/react-dom': optional: true + '@tiptap/core@2.14.0': + resolution: {integrity: sha512-MBSMzGYRFlwYCocvx3dU7zpCBSDQ0qWByNtStaEzuBUgzCJ6wn2DP/xG0cMcLmE3Ia0VLM4nwbLOAAvBXOtylA==} + peerDependencies: + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-blockquote@2.14.0': + resolution: {integrity: sha512-AwqPP0jLYNioKxakiVw0vlfH/ceGFbV+SGoqBbPSGFPRdSbHhxHDNBlTtiThmT3N2PiVwXAD9xislJV+WY4GUA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-bold@2.14.0': + resolution: {integrity: sha512-8DWwelH55H8KtLECSIv0wh8x/F/6lpagV/pMvT+Azujad0oqK+1iAPKU/kLgjXbFSkisrpV6KSwQts5neCtfRQ==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-bullet-list@2.14.0': + resolution: {integrity: sha512-SWnL4bP8Mm/mWN42AMQNoqYE0V6LgSBTVsHwwAki2wIUQdr9HyoAnohvHy3IME56NMwoyZyo+Mzl45wOqUxziA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-code-block@2.14.0': + resolution: {integrity: sha512-LRYYZeh8U2XgfTsJ4houB9s9cVRt7PRfVa4MaCeOYKfowVOKQh67yV5oom8Azk9XrMPkPxDmMmdPAEPxeVYFvw==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-code@2.14.0': + resolution: {integrity: sha512-kyo02mnzqgwXayMcyRA/fHQgb+nMmQQpIt1irZwjtEoFZshA7NnY/6b5SJmRcxQ4/X4r2Y2Ha2sWmOcEkLmt4A==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-document@2.14.0': + resolution: {integrity: sha512-qwEgpPIJ3AgXdEtRTr88hODbXRdt14VAwLj27PTSqexB5V7Ra1Jy7iQDhqRwBCoUomVywBsWYxkSuDisSRG+9w==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-dropcursor@2.14.0': + resolution: {integrity: sha512-FIh5cdPuoPKvZ0GqSKhzMZGixm05ac3hSgqhMNCBZmXX459qBUI9CvDl/uzSnY9koBDeLVV3HYMthWQQLSXl9A==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-gapcursor@2.14.0': + resolution: {integrity: sha512-as+SqC39FRshw4Fm1XVlrdSXveiusf5xiC4nuefLmXsUxO7Yx67x8jS0/VQbxWTLHZ6R1YEW8prLtnxGmVLCAQ==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-hard-break@2.14.0': + resolution: {integrity: sha512-A8c8n8881iBq3AusNqibh6Hloybr+FgYdg4Lg4jNxbbEaL0WhyLFge1bWlGVpbHXFqdv5YldMUAu6Rop3FhNvw==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-heading@2.14.0': + resolution: {integrity: sha512-vM//6G3Ox3mxPv9eilhrDqylELCc8kEP1aQ4xUuOw7vCidjNtGggOa1ERnnpV2dCa2A9E8y4FHtN4Xh29stXQg==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-history@2.14.0': + resolution: {integrity: sha512-/qnOHQFCEPfkb3caykqd+sqzEC2gx30EQB/mM7+5kIG7CQy7XXaGjFAEaqzE1xJ783Q2E7GVk4JxWM+3NhYSLw==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-horizontal-rule@2.14.0': + resolution: {integrity: sha512-OrKWgHOhmJtVHjPYaEJetNLiNEvrI85lTrGxzeQa+a8ACb93h4svyHe9J+LHs5pKkXDQFcpYEXJntu0LVLLiDw==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-italic@2.14.0': + resolution: {integrity: sha512-yEw2S+smoVR8DMYQMAWckVW2Sstf7z5+GBZ8zm8NMGhMKb1JFCPZUv5KTTIPnq7ZrKuuZHvjN9+Ef1dRYD8T2A==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-list-item@2.14.0': + resolution: {integrity: sha512-t1jXDPEd82sC6vZVE/12/CB52uuiydCIcRfwdh21xNgBMckToKO9S0K6XEp4ROtrKQdlIH2JDVPfpUBvVrYN8Q==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-ordered-list@2.14.0': + resolution: {integrity: sha512-QUZcyuW9AKvSfpFHcGmbyRCqxcpY0VNf0xipEtogxbA+JDDw3ZSPqU1dUgz9wk00RahPTwNDdY5aVjdQ5N4N9Q==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-paragraph@2.14.0': + resolution: {integrity: sha512-bsQesVpgvDS2e+wr2fp59QO7rWRp2FqcJvBafwXS3Br9U5Mx3eFYryx4wC7cUnhlhUwX5pmaoA7zISgV9dZDgg==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-strike@2.14.0': + resolution: {integrity: sha512-rD5d/IL3XPfBOrHRHxt+b+0X1jbIbWONGiad/3sX0ZYQD3PandtCWboH40r/J5tFksebuY12dVYyYQKgLpDBOQ==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-text-style@2.14.0': + resolution: {integrity: sha512-dl0oi2i0rjLpBqTf4wGy6SLidvPpjxLcmX727pwJlCklkFJVDf8wSFeD4ddxJXiD2Rwef0D/lkcwXSY73CoDcA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-text@2.14.0': + resolution: {integrity: sha512-rHny566nGZHq61zRLwQ9BPG55W/O+eDKwUJl+LhrLiVWwzpvAl9QQYixtoxJKOY48VK41PKwxe3bgDYgNs/Fhg==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/pm@2.14.0': + resolution: {integrity: sha512-cnsfaIlvTFCDtLP/A2Fd3LmpttgY0O/tuTM2fC71vetONz83wUTYT+aD9uvxdX0GkSocoh840b0TsEazbBxhpA==} + + '@tiptap/starter-kit@2.14.0': + resolution: {integrity: sha512-Z1bKAfHl14quRI3McmdU+bs675jp6/iexEQTI9M9oHa6l3McFF38g9N3xRpPPX02MX83DghsUPupndUW/yJvEQ==} + '@tiptap/y-tiptap@3.0.0-beta.3': resolution: {integrity: sha512-1U/MTG7mpkc2VEIRzVueXqpHpawflF0DUuqkPwTezmBst6HPZ+NnZuDbJGay8dh//KSXcrS1Vtu1Wqa2Z/1HTw==} engines: {node: '>=16.0.0', npm: '>=8.0.0'} @@ -2698,6 +3062,9 @@ packages: '@types/json5@0.0.29': resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + '@types/katex@0.16.7': + resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==} + '@types/linkify-it@5.0.0': resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==} @@ -2750,6 +3117,9 @@ packages: '@types/use-sync-external-store@0.0.6': resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==} + '@types/uuid@10.0.0': + resolution: {integrity: sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==} + '@types/uuid@8.3.4': resolution: {integrity: sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==} @@ -3787,6 +4157,9 @@ packages: electron-to-chromium@1.5.84: resolution: {integrity: sha512-I+DQ8xgafao9Ha6y0qjHHvpZ9OfyA1qKlkHkjywxzniORU2awxyz7f/iVJcULmrF2yrM3nHQf+iDjJtbbexd/g==} + emoji-datasource@7.0.2: + resolution: {integrity: sha512-F5TTUSktTIfbjHIlaz8tjsQ8EAD0UpJtj1i5O13jQARWTddtFgam3nE1W5WgSQoqU/cuTnF1H9tK/wlCOyzfiA==} + emoji-regex-xs@1.0.0: resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==} @@ -3799,6 +4172,15 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + emojibase-data@15.3.2: + resolution: {integrity: sha512-TpDyTDDTdqWIJixV5sTA6OQ0P0JfIIeK2tFRR3q56G9LK65ylAZ7z3KyBXokpvTTJ+mLUXQXbLNyVkjvnTLE+A==} + peerDependencies: + emojibase: '*' + + emojibase@16.0.0: + resolution: {integrity: sha512-Nw2m7JLIO4Ou2X/yZPRNscHQXVbbr6SErjkJ7EooG7MbR3yDZszCv9KTizsXFc7yZl0n3WF+qUKIC/Lw6H9xaQ==} + engines: {node: '>=18.12.0'} + end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} @@ -3865,6 +4247,131 @@ packages: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} + esbuild-android-64@0.15.18: + resolution: {integrity: sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + esbuild-android-arm64@0.15.18: + resolution: {integrity: sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + esbuild-darwin-64@0.15.18: + resolution: {integrity: sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + esbuild-darwin-arm64@0.15.18: + resolution: {integrity: sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + esbuild-freebsd-64@0.15.18: + resolution: {integrity: sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + esbuild-freebsd-arm64@0.15.18: + resolution: {integrity: sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + esbuild-linux-32@0.15.18: + resolution: {integrity: sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + esbuild-linux-64@0.15.18: + resolution: {integrity: sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + esbuild-linux-arm64@0.15.18: + resolution: {integrity: sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + esbuild-linux-arm@0.15.18: + resolution: {integrity: sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + esbuild-linux-mips64le@0.15.18: + resolution: {integrity: sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + esbuild-linux-ppc64le@0.15.18: + resolution: {integrity: sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + esbuild-linux-riscv64@0.15.18: + resolution: {integrity: sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + esbuild-linux-s390x@0.15.18: + resolution: {integrity: sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + esbuild-netbsd-64@0.15.18: + resolution: {integrity: sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + esbuild-openbsd-64@0.15.18: + resolution: {integrity: sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + esbuild-sunos-64@0.15.18: + resolution: {integrity: sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + esbuild-windows-32@0.15.18: + resolution: {integrity: sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + esbuild-windows-64@0.15.18: + resolution: {integrity: sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + esbuild-windows-arm64@0.15.18: + resolution: {integrity: sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + esbuild@0.15.18: + resolution: {integrity: sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==} + engines: {node: '>=12'} + hasBin: true + esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} @@ -4532,6 +5039,9 @@ packages: resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} engines: {node: '>= 0.4'} + is-emoji-supported@0.0.5: + resolution: {integrity: sha512-WOlXUhDDHxYqcSmFZis+xWhhqXiK2SU0iYiqmth5Ip0FHLZQAt9rKL5ahnilE8/86WH8tZ3bmNNNC+bTzamqlw==} + is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -4789,6 +5299,10 @@ packages: resolution: {integrity: sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==} engines: {'0': node >=0.6.0} + katex@0.16.22: + resolution: {integrity: sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==} + hasBin: true + keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} @@ -4941,6 +5455,10 @@ packages: resolution: {integrity: sha512-Ajzxb8CM6WAnFjgiloPsI3bF+WCxcvhdIG3KNA2KN962+tdBsHcuQ4k4qX/EcS/2CRkcc0iAkR956Nib6aXU/Q==} engines: {node: '>=0.10.0'} + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} @@ -5566,6 +6084,11 @@ packages: randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + react-dom@18.3.1: + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 + react-dom@19.1.0: resolution: {integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==} peerDependencies: @@ -5587,6 +6110,10 @@ packages: resolution: {integrity: sha512-XP8A9BT0CpRBD+NYLLeIhld/RqG9+gktUjW1FkE+Vm7OCinbG1SshcK5tb9ls4kzvjZr9mOQc7HYgBngEyPAXg==} engines: {node: '>=0.10.0'} + react@18.3.1: + resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + engines: {node: '>=0.10.0'} + react@19.1.0: resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==} engines: {node: '>=0.10.0'} @@ -5768,6 +6295,9 @@ packages: engines: {node: '>=14.0.0'} hasBin: true + scheduler@0.23.2: + resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + scheduler@0.26.0: resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==} @@ -6155,6 +6685,11 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + tsm@2.3.0: + resolution: {integrity: sha512-++0HFnmmR+gMpDtKTnW3XJ4yv9kVGi20n+NfyQWB9qwJvTaIWY9kBmzek2YUQK5APTQ/1DTrXmm4QtFPmW9Rzw==} + engines: {node: '>=12'} + hasBin: true + tsup@8.3.5: resolution: {integrity: sha512-Tunf6r6m6tnZsG9GYWndg0z8dEV7fD733VBFzFJ5Vcm1FtlXB8xBD/rtrBi2a3YKEV7hHtxiZtW5EAVADoe1pA==} engines: {node: '>=18'} @@ -6349,6 +6884,10 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + uuid@10.0.0: + resolution: {integrity: sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==} + hasBin: true + uuid@8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true @@ -6672,6 +7211,16 @@ packages: resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} engines: {node: '>=12'} + y-prosemirror@1.3.5: + resolution: {integrity: sha512-qW8fXCb72L6H2BWiuhZdSJ6hiShHUog08gh6KvBqLjhK6Et9DxfDnMDvx6yyO3iCdnEhDfUJviRvaMAAXb0dNg==} + engines: {node: '>=16.0.0', npm: '>=8.0.0'} + peerDependencies: + prosemirror-model: ^1.7.1 + prosemirror-state: ^1.2.3 + prosemirror-view: ^1.9.10 + y-protocols: ^1.0.1 + yjs: ^13.5.38 + y-protocols@1.0.6: resolution: {integrity: sha512-vHRF2L6iT3rwj1jub/K5tYcTT/mEYDUppgNPXwp8fmLpui9f7Yeq3OEtTLVF012j39QnV+KEQpNqoN7CWU7Y9Q==} engines: {node: '>=16.0.0', npm: '>=8.0.0'} @@ -7840,6 +8389,9 @@ snapshots: '@esbuild/android-arm64@0.25.0': optional: true + '@esbuild/android-arm@0.15.18': + optional: true + '@esbuild/android-arm@0.21.5': optional: true @@ -7921,6 +8473,9 @@ snapshots: '@esbuild/linux-ia32@0.25.0': optional: true + '@esbuild/linux-loong64@0.15.18': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true @@ -8091,6 +8646,14 @@ snapshots: - bufferutil - utf-8-validate + '@hocuspocus/transformer@2.15.2(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0)(y-prosemirror@1.3.5(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23))(yjs@13.6.23)': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + '@tiptap/pm': 2.14.0 + '@tiptap/starter-kit': 2.14.0 + y-prosemirror: 1.3.5(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + yjs: 13.6.23 + '@humanwhocodes/config-array@0.13.0': dependencies: '@humanwhocodes/object-schema': 2.0.3 @@ -8597,6 +9160,136 @@ snapshots: '@types/react': 19.1.6 '@types/react-dom': 19.1.5(@types/react@19.1.6) + '@tiptap/core@2.14.0(@tiptap/pm@2.14.0)': + dependencies: + '@tiptap/pm': 2.14.0 + + '@tiptap/extension-blockquote@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-bold@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-bullet-list@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-code-block@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0)': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + '@tiptap/pm': 2.14.0 + + '@tiptap/extension-code@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-document@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-dropcursor@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0)': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + '@tiptap/pm': 2.14.0 + + '@tiptap/extension-gapcursor@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0)': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + '@tiptap/pm': 2.14.0 + + '@tiptap/extension-hard-break@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-heading@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-history@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0)': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + '@tiptap/pm': 2.14.0 + + '@tiptap/extension-horizontal-rule@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0)': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + '@tiptap/pm': 2.14.0 + + '@tiptap/extension-italic@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-list-item@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-ordered-list@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-paragraph@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-strike@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-text-style@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/extension-text@2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + + '@tiptap/pm@2.14.0': + dependencies: + prosemirror-changeset: 2.3.0 + prosemirror-collab: 1.3.1 + prosemirror-commands: 1.6.2 + prosemirror-dropcursor: 1.8.1 + prosemirror-gapcursor: 1.3.2 + prosemirror-history: 1.4.1 + prosemirror-inputrules: 1.4.0 + prosemirror-keymap: 1.2.2 + prosemirror-markdown: 1.13.1 + prosemirror-menu: 1.2.4 + prosemirror-model: 1.24.1 + prosemirror-schema-basic: 1.2.3 + prosemirror-schema-list: 1.5.0 + prosemirror-state: 1.4.3 + prosemirror-tables: 1.6.4 + prosemirror-trailing-node: 3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1) + prosemirror-transform: 1.10.2 + prosemirror-view: 1.38.1 + + '@tiptap/starter-kit@2.14.0': + dependencies: + '@tiptap/core': 2.14.0(@tiptap/pm@2.14.0) + '@tiptap/extension-blockquote': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-bold': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-bullet-list': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-code': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-code-block': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0) + '@tiptap/extension-document': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-dropcursor': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0) + '@tiptap/extension-gapcursor': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0) + '@tiptap/extension-hard-break': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-heading': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-history': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0) + '@tiptap/extension-horizontal-rule': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0))(@tiptap/pm@2.14.0) + '@tiptap/extension-italic': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-list-item': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-ordered-list': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-paragraph': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-strike': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-text': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/extension-text-style': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) + '@tiptap/pm': 2.14.0 + '@tiptap/y-tiptap@3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23)': dependencies: lib0: 0.2.104 @@ -8637,6 +9330,8 @@ snapshots: '@types/json5@0.0.29': {} + '@types/katex@0.16.7': {} + '@types/linkify-it@5.0.0': {} '@types/markdown-it@14.1.2': @@ -8687,6 +9382,8 @@ snapshots: '@types/use-sync-external-store@0.0.6': {} + '@types/uuid@10.0.0': {} + '@types/uuid@8.3.4': {} '@types/yauzl@2.10.3': @@ -9898,6 +10595,8 @@ snapshots: electron-to-chromium@1.5.84: {} + emoji-datasource@7.0.2: {} + emoji-regex-xs@1.0.0: {} emoji-regex@10.4.0: {} @@ -9906,6 +10605,12 @@ snapshots: emoji-regex@9.2.2: {} + emojibase-data@15.3.2(emojibase@16.0.0): + dependencies: + emojibase: 16.0.0 + + emojibase@16.0.0: {} + end-of-stream@1.4.4: dependencies: once: 1.4.0 @@ -10017,6 +10722,91 @@ snapshots: is-date-object: 1.1.0 is-symbol: 1.1.1 + esbuild-android-64@0.15.18: + optional: true + + esbuild-android-arm64@0.15.18: + optional: true + + esbuild-darwin-64@0.15.18: + optional: true + + esbuild-darwin-arm64@0.15.18: + optional: true + + esbuild-freebsd-64@0.15.18: + optional: true + + esbuild-freebsd-arm64@0.15.18: + optional: true + + esbuild-linux-32@0.15.18: + optional: true + + esbuild-linux-64@0.15.18: + optional: true + + esbuild-linux-arm64@0.15.18: + optional: true + + esbuild-linux-arm@0.15.18: + optional: true + + esbuild-linux-mips64le@0.15.18: + optional: true + + esbuild-linux-ppc64le@0.15.18: + optional: true + + esbuild-linux-riscv64@0.15.18: + optional: true + + esbuild-linux-s390x@0.15.18: + optional: true + + esbuild-netbsd-64@0.15.18: + optional: true + + esbuild-openbsd-64@0.15.18: + optional: true + + esbuild-sunos-64@0.15.18: + optional: true + + esbuild-windows-32@0.15.18: + optional: true + + esbuild-windows-64@0.15.18: + optional: true + + esbuild-windows-arm64@0.15.18: + optional: true + + esbuild@0.15.18: + optionalDependencies: + '@esbuild/android-arm': 0.15.18 + '@esbuild/linux-loong64': 0.15.18 + esbuild-android-64: 0.15.18 + esbuild-android-arm64: 0.15.18 + esbuild-darwin-64: 0.15.18 + esbuild-darwin-arm64: 0.15.18 + esbuild-freebsd-64: 0.15.18 + esbuild-freebsd-arm64: 0.15.18 + esbuild-linux-32: 0.15.18 + esbuild-linux-64: 0.15.18 + esbuild-linux-arm: 0.15.18 + esbuild-linux-arm64: 0.15.18 + esbuild-linux-mips64le: 0.15.18 + esbuild-linux-ppc64le: 0.15.18 + esbuild-linux-riscv64: 0.15.18 + esbuild-linux-s390x: 0.15.18 + esbuild-netbsd-64: 0.15.18 + esbuild-openbsd-64: 0.15.18 + esbuild-sunos-64: 0.15.18 + esbuild-windows-32: 0.15.18 + esbuild-windows-64: 0.15.18 + esbuild-windows-arm64: 0.15.18 + esbuild@0.21.5: optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 @@ -10861,6 +11651,8 @@ snapshots: call-bound: 1.0.3 has-tostringtag: 1.0.2 + is-emoji-supported@0.0.5: {} + is-extglob@2.1.1: {} is-finalizationregistry@1.1.1: @@ -11114,6 +11906,10 @@ snapshots: json-schema: 0.4.0 verror: 1.10.0 + katex@0.16.22: + dependencies: + commander: 8.3.0 + keyv@4.5.4: dependencies: json-buffer: 3.0.1 @@ -11264,6 +12060,10 @@ snapshots: longest@2.0.1: {} + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + loupe@2.3.7: dependencies: get-func-name: 2.0.2 @@ -11902,6 +12702,12 @@ snapshots: dependencies: safe-buffer: 5.2.1 + react-dom@18.3.1(react@18.3.1): + dependencies: + loose-envify: 1.4.0 + react: 18.3.1 + scheduler: 0.23.2 + react-dom@19.1.0(react@19.1.0): dependencies: react: 19.1.0 @@ -11918,6 +12724,10 @@ snapshots: react-refresh@0.13.0: {} + react@18.3.1: + dependencies: + loose-envify: 1.4.0 + react@19.1.0: {} read-cache@1.0.0: @@ -12139,6 +12949,10 @@ snapshots: optionalDependencies: '@parcel/watcher': 2.5.0 + scheduler@0.23.2: + dependencies: + loose-envify: 1.4.0 + scheduler@0.26.0: {} schema-utils@3.3.0: @@ -12585,6 +13399,10 @@ snapshots: tslib@2.8.1: {} + tsm@2.3.0: + dependencies: + esbuild: 0.15.18 + tsup@8.3.5(jiti@2.4.2)(postcss@8.5.1)(typescript@5.7.3)(yaml@2.7.0): dependencies: bundle-require: 5.1.0(esbuild@0.24.2) @@ -12775,6 +13593,8 @@ snapshots: util-deprecate@1.0.2: {} + uuid@10.0.0: {} + uuid@8.3.2: {} validate-npm-package-name@5.0.1: {} @@ -13127,6 +13947,15 @@ snapshots: xml-name-validator@4.0.0: {} + y-prosemirror@1.3.5(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23): + dependencies: + lib0: 0.2.104 + prosemirror-model: 1.24.1 + prosemirror-state: 1.4.3 + prosemirror-view: 1.38.1 + y-protocols: 1.0.6(yjs@13.6.23) + yjs: 13.6.23 + y-protocols@1.0.6(yjs@13.6.23): dependencies: lib0: 0.2.99 From 2d8593435a7454005e78c650efbe6be58124dc3e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 11:06:35 +0200 Subject: [PATCH 188/629] chore(release): publish a new pre-release version (beta) (#6471) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 17 +++++++++- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 ++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 ++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 ++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 ++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- .../extension-details-content/CHANGELOG.md | 30 +++++++++++++++++ .../extension-details-content/package.json | 2 +- .../extension-details-summary/CHANGELOG.md | 30 +++++++++++++++++ .../extension-details-summary/package.json | 2 +- packages/extension-details/CHANGELOG.md | 30 +++++++++++++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 31 ++++++++++++++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 31 ++++++++++++++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 31 ++++++++++++++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 32 +++++++++++++++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 30 +++++++++++++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 30 +++++++++++++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 ++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 ++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 30 +++++++++++++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 ++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 ++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 29 +++++++++++++++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 29 +++++++++++++++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 ++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 ++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 29 +++++++++++++++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 ++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 29 +++++++++++++++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 ++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 ++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 ++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 ++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 ++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 ++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 ++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 144 files changed, 894 insertions(+), 75 deletions(-) create mode 100644 packages/extension-details-content/CHANGELOG.md create mode 100644 packages/extension-details-summary/CHANGELOG.md create mode 100644 packages/extension-details/CHANGELOG.md create mode 100644 packages/extension-drag-handle-react/CHANGELOG.md create mode 100644 packages/extension-drag-handle-vue-2/CHANGELOG.md create mode 100644 packages/extension-drag-handle-vue-3/CHANGELOG.md create mode 100644 packages/extension-drag-handle/CHANGELOG.md create mode 100644 packages/extension-emoji/CHANGELOG.md create mode 100644 packages/extension-file-handler/CHANGELOG.md create mode 100644 packages/extension-invisible-characters/CHANGELOG.md create mode 100644 packages/extension-mathematics/CHANGELOG.md create mode 100644 packages/extension-node-range/CHANGELOG.md create mode 100644 packages/extension-table-of-contents/CHANGELOG.md create mode 100644 packages/extension-unique-id/CHANGELOG.md diff --git a/.changeset/pre.json b/.changeset/pre.json index d4a676e5c9..a361569cb5 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -60,7 +60,21 @@ "@tiptap/static-renderer": "3.0.0-beta.0", "@tiptap/suggestion": "3.0.0-beta.0", "@tiptap/vue-2": "3.0.0-beta.0", - "@tiptap/vue-3": "3.0.0-beta.0" + "@tiptap/vue-3": "3.0.0-beta.0", + "@tiptap/extension-details": "3.0.0-beta.7", + "@tiptap/extension-details-content": "3.0.0-beta.7", + "@tiptap/extension-details-summary": "3.0.0-beta.7", + "@tiptap/extension-drag-handle": "3.0.0-beta.7", + "@tiptap/extension-drag-handle-react": "3.0.0-beta.7", + "@tiptap/extension-drag-handle-vue-2": "3.0.0-beta.7", + "@tiptap/extension-drag-handle-vue-3": "3.0.0-beta.7", + "@tiptap/extension-emoji": "2.21.4", + "@tiptap/extension-file-handler": "3.0.0-beta.7", + "@tiptap/extension-invisible-characters": "3.0.0-beta.7", + "@tiptap/extension-mathematics": "3.0.0-beta.7", + "@tiptap/extension-node-range": "3.0.0-beta.7", + "@tiptap/extension-table-of-contents": "3.0.0-beta.7", + "@tiptap/extension-unique-id": "3.0.0-beta.7" }, "changesets": [ "beige-llamas-shout", @@ -110,6 +124,7 @@ "smooth-carrots-beam", "spotty-cobras-shake", "tame-worms-applaud", + "thick-buckets-cross", "thirty-rockets-act", "tidy-fireants-hang", "twenty-moose-invent", diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 8f9576ef65..d3d261d984 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 131276ccb5..d791171816 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 99c2f48a6e..af9403adb9 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index a408d87cdd..1cfdfd129b 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 2d1026d9f7..51cfaa7c05 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 000fee8fa8..15dfa0d7c4 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.9" + "@tiptap/extensions": "3.0.0-beta.10" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.9" + "@tiptap/extensions": "3.0.0-beta.10" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 44e3e24f31..5e73119313 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index e2dae76c94..99a37e1ac5 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 0c4e913b62..ed6a897efa 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 728b43a827..ba24dd0630 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 21d6c3d8f7..5ad5dbba27 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 23ac494d74..017be729bb 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index ceafc08fa3..a0cadbbf34 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 5cf06c949c..f3919bc361 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index ff63d084bd..42f987e9d6 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index bc301f034d..c70e1e3402 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 86e480af56..df76b21a2c 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index cfdb19b4a2..8509c94116 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 184248645d..01acf94b0f 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 6d3ae72cbc..fd3b2bf50f 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 0662ac224d..5e8a9a28d1 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 8356ab955d..27b47498e3 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 6ae02e84f2..988bb31bee 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index ee5727550c..ea4fe96cc8 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index ce573c2821..bcb59d813c 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index f90556268a..7baa7b2033 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 4d5f0d9c6e..18d5ff63c8 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 5f134985d5..25464c940e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 5f0e33534e..753fb8ab7e 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 2f4ac4a530..994e4a9496 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 862ca4a6c9..ba813a0ca8 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 6b4980a1cf..1d2188f7b4 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 717f515716..d104035992 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 16c9e8ca4e..d322dc1602 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 4abc052452..8a6e1063b8 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 808613d74a..3564626cfa 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 826e9a7e26..db98a3290e 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/extension-code-block@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 15eed5c8a2..c662bac3b2 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 5538f53b9f..9e4fed8913 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 6c1817566f..d57009d96b 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 6f9a1ae175..84f805cc1d 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 2933970dbe..9be6e26206 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 7f8aa2fe1d..8e1eeb1f77 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 2289f879d4..94494ebf01 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 02957b74b9..c97d6533c0 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index bd6064f3c2..ac0a0eac30 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index dc67960ed1..33b1f0f218 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 4469f875e4..efb639de01 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details-content/CHANGELOG.md b/packages/extension-details-content/CHANGELOG.md new file mode 100644 index 0000000000..619216bbb3 --- /dev/null +++ b/packages/extension-details-content/CHANGELOG.md @@ -0,0 +1,30 @@ +# @tiptap/extension-details-content + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/extension-text-style@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-details-content/package.json b/packages/extension-details-content/package.json index 02a32cb7a1..cbfcdfef03 100644 --- a/packages/extension-details-content/package.json +++ b/packages/extension-details-content/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details-content", "description": "details content extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/api/nodes/details-content", "keywords": [ "tiptap", diff --git a/packages/extension-details-summary/CHANGELOG.md b/packages/extension-details-summary/CHANGELOG.md new file mode 100644 index 0000000000..95035a1574 --- /dev/null +++ b/packages/extension-details-summary/CHANGELOG.md @@ -0,0 +1,30 @@ +# @tiptap/extension-details-summary + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/extension-text-style@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-details-summary/package.json b/packages/extension-details-summary/package.json index 3e82c4e222..ec8015fe85 100644 --- a/packages/extension-details-summary/package.json +++ b/packages/extension-details-summary/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details-summary", "description": "details summary extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/api/nodes/details-summary", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md new file mode 100644 index 0000000000..92c8f6132c --- /dev/null +++ b/packages/extension-details/CHANGELOG.md @@ -0,0 +1,30 @@ +# @tiptap/extension-details + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/extension-text-style@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 494cc19001..905c10d912 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 162c98f47e..8607b2c17b 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 00326179e5..bf8f6e2df5 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md new file mode 100644 index 0000000000..0254ff6f21 --- /dev/null +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -0,0 +1,31 @@ +# @tiptap/extension-drag-handle-react + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [7ac01ef] + - @tiptap/extension-drag-handle@3.0.0-beta.10 + - @tiptap/pm@3.0.0-beta.10 + - @tiptap/react@3.0.0-beta.10 diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 7cd4f384a7..dc6bd6dda7 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md new file mode 100644 index 0000000000..47f3d25130 --- /dev/null +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -0,0 +1,31 @@ +# @tiptap/extension-drag-handle-vue-2 + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [7ac01ef] + - @tiptap/extension-drag-handle@3.0.0-beta.10 + - @tiptap/pm@3.0.0-beta.10 + - @tiptap/vue-2@3.0.0-beta.10 diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 4045f0db21..574f8cdc83 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md new file mode 100644 index 0000000000..c6fd40c722 --- /dev/null +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -0,0 +1,31 @@ +# @tiptap/extension-drag-handle-vue-3 + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [7ac01ef] + - @tiptap/extension-drag-handle@3.0.0-beta.10 + - @tiptap/pm@3.0.0-beta.10 + - @tiptap/vue-3@3.0.0-beta.10 diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index feeb32dc08..b216368b2d 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md new file mode 100644 index 0000000000..236c70ed18 --- /dev/null +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -0,0 +1,32 @@ +# @tiptap/extension-drag-handle + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [7ac01ef] + - @tiptap/extension-node-range@3.0.0-beta.10 + - @tiptap/core@3.0.0-beta.10 + - @tiptap/extension-collaboration@3.0.0-beta.10 + - @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 84e2d7d95f..d08a7a7ad5 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md new file mode 100644 index 0000000000..1d8ae6e8f9 --- /dev/null +++ b/packages/extension-emoji/CHANGELOG.md @@ -0,0 +1,30 @@ +# @tiptap/extension-emoji + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 +- @tiptap/suggestion@3.0.0-beta.10 diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 29d41f76d6..9316cba092 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "2.21.4", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md new file mode 100644 index 0000000000..597a6cc5ea --- /dev/null +++ b/packages/extension-file-handler/CHANGELOG.md @@ -0,0 +1,30 @@ +# @tiptap/extension-file-handler + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/extension-text-style@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index db31b70706..955be2b20a 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index af24c36f44..ead6880a7e 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 167cf36666..368e497c9c 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 3a993d44a4..180e6240ec 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index ed5f46501f..1d321b49a0 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 1555a89c68..37d6f1c656 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 13dd64eb34..b6668da926 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index b8c684eb54..e6d35ebc67 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 90337b9642..3fb3a64e75 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 24d3da0ad7..59aaa83415 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 8a65f6e707..f53c105dec 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index c64f745ddf..178cf68549 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index a96bda9932..ae0bfadc80 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index cf2e14afe7..254c4591bf 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 08c05803ec..1cd3a30814 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md new file mode 100644 index 0000000000..57105a7a68 --- /dev/null +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -0,0 +1,30 @@ +# @tiptap/extension-invisible-characters + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/extension-text-style@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 0851132d8e..9aea3b145c 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index e54b9c10c3..18e40fbb8b 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index df4a334355..352b86807f 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 3775100b84..f8f71b24c0 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index e2a4ad84fe..30b384d5a3 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index ca357060ed..702f73f824 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 8ebd234e3d..b5a0d0c6c3 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md new file mode 100644 index 0000000000..82524b297e --- /dev/null +++ b/packages/extension-mathematics/CHANGELOG.md @@ -0,0 +1,29 @@ +# @tiptap/extension-mathematics + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index bcc97efc59..a7552c8665 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index aa6147c483..209f82e118 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 +- @tiptap/suggestion@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index a6e12dd924..a169408019 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md new file mode 100644 index 0000000000..e4ff4fcafc --- /dev/null +++ b/packages/extension-node-range/CHANGELOG.md @@ -0,0 +1,29 @@ +# @tiptap/extension-node-range + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index c51d2819e1..3f6c93cb69 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 330c082f9a..908c7a3054 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 3b72b44dfb..f5fb8d39ab 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 7caed711a8..e56ce37906 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index f979e75cfd..01569de801 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index f52d5d3403..4241a2978d 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index e97f07bed9..4328bb7a9e 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 1e94aa386b..0a53072edc 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 725afb371f..7f3cf9f4fe 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 2cecd5d926..11388569b7 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index b3244f7a58..a22235b56f 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md new file mode 100644 index 0000000000..7d5cd9460d --- /dev/null +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -0,0 +1,29 @@ +# @tiptap/extension-table-of-contents + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 80972c8043..b841ab0888 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index be70030ca0..2a8cbc5d58 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 8e69b79f4c..ba4fc4943e 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 4b0d20fa4a..acdb6a3ede 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 25c2846c73..e5fb2623fe 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index d1e5b93802..e24f207b93 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index d54a8c1b65..130a2f62c7 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 69c30c8f2e..02657fe95e 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 79661f1fa5..8fd89982ae 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index c07410fc24..d78247be3f 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 9540281b71..30983055f0 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index e55ce121eb..cbf7640bb9 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 93577bdcc2..f405b7c1bc 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md new file mode 100644 index 0000000000..e61ba1fc51 --- /dev/null +++ b/packages/extension-unique-id/CHANGELOG.md @@ -0,0 +1,29 @@ +# @tiptap/extension-unique-id + +## 3.0.0-beta.10 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details-content` + - `@tiptap/extension-details-summary` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 864051c7b8..d2abfa2a2b 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.0-beta.7", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index b01d359d24..2296f7ae64 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 2d72918429..5bcc0a585e 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index a7fddecd71..b5e51f38f8 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 22ec41c298..8abb4b529b 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index a05c9e2dd5..2d7f093e4a 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index d6416a76e0..a812abaf38 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index c3049238d6..3613c03169 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-beta.10 + ## 3.0.0-beta.9 ## 3.0.0-beta.8 diff --git a/packages/pm/package.json b/packages/pm/package.json index f1ccdb4203..b7751cb031 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index ce119801c3..e08c2ea263 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 820c5c9dcf..782d6f0e23 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 1047ea1fbd..efc80c4590 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.0.0-beta.10 +- @tiptap/extension-gapcursor@3.0.0-beta.10 +- @tiptap/extension-list-item@3.0.0-beta.10 +- @tiptap/extension-list-keymap@3.0.0-beta.10 +- @tiptap/core@3.0.0-beta.10 +- @tiptap/extension-blockquote@3.0.0-beta.10 +- @tiptap/extension-bold@3.0.0-beta.10 +- @tiptap/extension-bullet-list@3.0.0-beta.10 +- @tiptap/extension-code@3.0.0-beta.10 +- @tiptap/extension-code-block@3.0.0-beta.10 +- @tiptap/extension-document@3.0.0-beta.10 +- @tiptap/extension-hard-break@3.0.0-beta.10 +- @tiptap/extension-heading@3.0.0-beta.10 +- @tiptap/extension-horizontal-rule@3.0.0-beta.10 +- @tiptap/extension-italic@3.0.0-beta.10 +- @tiptap/extension-link@3.0.0-beta.10 +- @tiptap/extension-list@3.0.0-beta.10 +- @tiptap/extension-ordered-list@3.0.0-beta.10 +- @tiptap/extension-paragraph@3.0.0-beta.10 +- @tiptap/extension-strike@3.0.0-beta.10 +- @tiptap/extension-text@3.0.0-beta.10 +- @tiptap/extension-underline@3.0.0-beta.10 +- @tiptap/extensions@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 1ddc7e1785..39e3acf1dd 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 877fc079fe..51db2b78c4 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 4fe23ccf3f..83104dd000 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 8d3eb4f15b..a1e754a2ef 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index c1c17cf6c0..ef5e183cd7 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index c5bd3ac72b..357041c8be 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index f97fc2b215..6f2ee98dff 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index c4b8ca8a72..bb20ad3ddd 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.10 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.10 +- @tiptap/pm@3.0.0-beta.10 + ## 3.0.0-beta.9 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 289b62f2df..a08a555fff 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.9", + "version": "3.0.0-beta.10", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4c572366d1..11ad475ce6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -340,7 +340,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.9 + specifier: 3.0.0-beta.10 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From 2a0e9f722afe94e3bb4e68d221bff628a64369a4 Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Fri, 20 Jun 2025 11:13:38 +0200 Subject: [PATCH 189/629] add repository info to package.json --- packages/extension-mathematics/package.json | 5 +++++ packages/extension-node-range/package.json | 5 +++++ packages/extension-table-of-contents/package.json | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index a7552c8665..9b073d13f1 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -12,6 +12,11 @@ "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-mathematics" + }, "type": "module", "exports": { ".": { diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 3f6c93cb69..af3de3b5d9 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -12,6 +12,11 @@ "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-node-range" + }, "type": "module", "exports": { ".": { diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index b841ab0888..5c67498aa2 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -12,6 +12,11 @@ "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-table-of-contents" + }, "type": "module", "exports": { ".": { From 3f4bac2fc909bb9f6726c9064c63a6e58c583249 Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Fri, 20 Jun 2025 11:20:29 +0200 Subject: [PATCH 190/629] add repository info to package.json --- packages/extension-drag-handle-react/package.json | 5 +++++ packages/extension-drag-handle-vue-2/package.json | 5 +++++ packages/extension-drag-handle-vue-3/package.json | 5 +++++ packages/extension-drag-handle/package.json | 5 +++++ 4 files changed, 20 insertions(+) diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index dc6bd6dda7..afd52f8ed8 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -12,6 +12,11 @@ "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-drag-handle-react" + }, "type": "module", "exports": { ".": { diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 574f8cdc83..fc42583038 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -12,6 +12,11 @@ "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-drag-handle-vue-2" + }, "type": "module", "exports": { ".": { diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index b216368b2d..a0b4b82505 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -12,6 +12,11 @@ "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-drag-handle-vue-3" + }, "type": "module", "exports": { ".": { diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index d08a7a7ad5..45ffbbf26f 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -12,6 +12,11 @@ "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-drag-handle" + }, "type": "module", "exports": { ".": { From c21b4b45b94d6169115e44dcb6cc40774f2faddf Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Fri, 20 Jun 2025 13:29:11 +0200 Subject: [PATCH 191/629] update dedupeDeps --- demos/dedupeDeps.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/demos/dedupeDeps.txt b/demos/dedupeDeps.txt index e5c2daa5aa..c2f31c8b46 100644 --- a/demos/dedupeDeps.txt +++ b/demos/dedupeDeps.txt @@ -16,6 +16,8 @@ shiki uuid y-webrtc yjs +emoji-regex +is-emoji-supported prosemirror-changeset prosemirror-collab prosemirror-commands From 4dcea785852a00121ef2d512eee561ffaa953a9d Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Fri, 20 Jun 2025 18:42:45 +0200 Subject: [PATCH 192/629] Revert "update dedupeDeps" This reverts commit c21b4b45b94d6169115e44dcb6cc40774f2faddf. --- demos/dedupeDeps.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/demos/dedupeDeps.txt b/demos/dedupeDeps.txt index c2f31c8b46..e5c2daa5aa 100644 --- a/demos/dedupeDeps.txt +++ b/demos/dedupeDeps.txt @@ -16,8 +16,6 @@ shiki uuid y-webrtc yjs -emoji-regex -is-emoji-supported prosemirror-changeset prosemirror-collab prosemirror-commands From 81bb134626dcdbde28387ffeacac804cf8bb0a47 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 20 Jun 2025 20:04:29 +0200 Subject: [PATCH 193/629] fix react static renderer to parse inline styles as string (#6476) * static-renderer: convert inline style strings to object * added changeset --- .changeset/dry-monkeys-learn.md | 5 +++++ .../static-renderer/src/pm/react/react.ts | 19 ++++++++++++++++- .../static-renderer/react-string.spec.ts | 21 ++++++++++++++++++- 3 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 .changeset/dry-monkeys-learn.md diff --git a/.changeset/dry-monkeys-learn.md b/.changeset/dry-monkeys-learn.md new file mode 100644 index 0000000000..5907cbda9e --- /dev/null +++ b/.changeset/dry-monkeys-learn.md @@ -0,0 +1,5 @@ +--- +'@tiptap/static-renderer': patch +--- + +Fixed a bug causing inline-styles to be parsed as strings for React diff --git a/packages/static-renderer/src/pm/react/react.ts b/packages/static-renderer/src/pm/react/react.ts index 0f06cc1717..7d59ba5cfa 100644 --- a/packages/static-renderer/src/pm/react/react.ts +++ b/packages/static-renderer/src/pm/react/react.ts @@ -13,7 +13,7 @@ import { renderToElement } from '../extensionRenderer.js' * @param key The key to use for the React element * @returns The mapped HTML attributes as an object */ -function mapAttrsToHTMLAttributes(attrs?: Record, key?: string): Record { +export function mapAttrsToHTMLAttributes(attrs?: Record, key?: string): Record { if (!attrs) { return { key } } @@ -22,6 +22,23 @@ function mapAttrsToHTMLAttributes(attrs?: Record, key?: string): Re if (name === 'class') { return Object.assign(acc, { className: value }) } + + // React expects styles to be a object + // so we need to convert it from string to object + if (name === 'style' && typeof value === 'string') { + const styleObject: Record = {} + value.split(';').forEach(style => { + const [styleKey, val] = style.split(':') + if (styleKey && val) { + // we need to turn the key into camelCase + const camelCaseKey = styleKey.trim().replace(/-([a-z])/g, g => g[1].toUpperCase()) + styleObject[camelCaseKey] = val.trim() + } + }) + + return Object.assign(acc, { style: styleObject }) + } + return Object.assign(acc, { [name]: value }) }, { key }, diff --git a/tests/cypress/integration/static-renderer/react-string.spec.ts b/tests/cypress/integration/static-renderer/react-string.spec.ts index 24923ca691..6d87826231 100644 --- a/tests/cypress/integration/static-renderer/react-string.spec.ts +++ b/tests/cypress/integration/static-renderer/react-string.spec.ts @@ -6,9 +6,28 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import { Mark, Node } from '@tiptap/pm/model' -import { renderToReactElement } from '@tiptap/static-renderer/pm/react' +import { mapAttrsToHTMLAttributes,renderToReactElement } from '@tiptap/static-renderer/pm/react' import React from 'react' +describe('static renderer: react', () => { + it('mapAttrsToHTMLAttributes maps attributes to React attributes', () => { + const attrs = { + class: 'my-class', + style: 'color: red; font-size: 16px; transform: translateX(15px) translateY(10px);', + id: 'my-id', + } + + const result = mapAttrsToHTMLAttributes(attrs, 'test-key') + + expect(result).to.deep.equal({ + className: 'my-class', + style: { color: 'red', fontSize: '16px', transform: 'translateX(15px) translateY(10px)' }, + id: 'my-id', + key: 'test-key', + }) + }) +}) + describe('static render json to react elements (with prosemirror)', () => { it('generates a React element from JSON without an editor instance', () => { const json = { From 0f14cc5e7b9dd9dcd37bd6a8ba3e704ce04bf12b Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 20 Jun 2025 20:44:16 +0200 Subject: [PATCH 194/629] add missing event options for bubble and floating menu (#6478) * add missing event options for bubble and floating menu * added changeset * Update packages/extension-bubble-menu/src/bubble-menu-plugin.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/serious-rings-end.md | 9 +++++ .../src/bubble-menu-plugin.ts | 39 +++++++++++++++++++ .../src/floating-menu-plugin.ts | 35 +++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100644 .changeset/serious-rings-end.md diff --git a/.changeset/serious-rings-end.md b/.changeset/serious-rings-end.md new file mode 100644 index 0000000000..e52f241392 --- /dev/null +++ b/.changeset/serious-rings-end.md @@ -0,0 +1,9 @@ +--- +'@tiptap/extension-floating-menu': patch +'@tiptap/extension-bubble-menu': patch +'@tiptap/react': patch +'@tiptap/vue-2': patch +'@tiptap/vue-3': patch +--- + +Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index b426495010..2055926508 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -94,6 +94,11 @@ export interface BubbleMenuPluginProps { autoPlacement?: Parameters[0] | boolean hide?: Parameters[0] | boolean inline?: Parameters[0] | boolean + + onShow?: () => void + onHide?: () => void + onUpdate?: () => void + onDestroy?: () => void } } @@ -118,6 +123,8 @@ export class BubbleMenuView implements PluginView { private resizeDebounceTimer: number | undefined + private isVisible = false + private floatingUIOptions: NonNullable = { strategy: 'absolute', placement: 'top', @@ -129,6 +136,10 @@ export class BubbleMenuView implements PluginView { autoPlacement: false, hide: false, inline: false, + onShow: undefined, + onHide: undefined, + onUpdate: undefined, + onDestroy: undefined, } public shouldShow: Exclude = ({ view, state, from, to }) => { @@ -294,6 +305,10 @@ export class BubbleMenuView implements PluginView { this.element.style.position = strategy this.element.style.left = `${x}px` this.element.style.top = `${y}px` + + if (this.isVisible && this.floatingUIOptions.onUpdate) { + this.floatingUIOptions.onUpdate() + } }) } @@ -373,17 +388,37 @@ export class BubbleMenuView implements PluginView { } show() { + if (this.isVisible) { + return + } + this.element.style.visibility = 'visible' this.element.style.opacity = '1' // attach to editor's parent element this.view.dom.parentElement?.appendChild(this.element) + + if (this.floatingUIOptions.onShow) { + this.floatingUIOptions.onShow() + } + + this.isVisible = true } hide() { + if (!this.isVisible) { + return + } + this.element.style.visibility = 'hidden' this.element.style.opacity = '0' // remove from the parent element this.element.remove() + + if (this.floatingUIOptions.onHide) { + this.floatingUIOptions.onHide() + } + + this.isVisible = false } destroy() { @@ -392,6 +427,10 @@ export class BubbleMenuView implements PluginView { this.view.dom.removeEventListener('dragstart', this.dragstartHandler) this.editor.off('focus', this.focusHandler) this.editor.off('blur', this.blurHandler) + + if (this.floatingUIOptions.onDestroy) { + this.floatingUIOptions.onDestroy() + } } } diff --git a/packages/extension-floating-menu/src/floating-menu-plugin.ts b/packages/extension-floating-menu/src/floating-menu-plugin.ts index 92a3f591c8..1fe6c77255 100644 --- a/packages/extension-floating-menu/src/floating-menu-plugin.ts +++ b/packages/extension-floating-menu/src/floating-menu-plugin.ts @@ -77,6 +77,11 @@ export interface FloatingMenuPluginProps { autoPlacement?: Parameters[0] | boolean hide?: Parameters[0] | boolean inline?: Parameters[0] | boolean + + onShow?: () => void + onHide?: () => void + onUpdate?: () => void + onDestroy?: () => void } } @@ -96,6 +101,8 @@ export class FloatingMenuView { public preventHide = false + private isVisible = false + private getTextContent(node: ProsemirrorNode) { return getText(node, { textSerializers: getTextSerializersFromSchema(this.editor.schema) }) } @@ -289,6 +296,10 @@ export class FloatingMenuView { this.element.style.position = strategy this.element.style.left = `${x}px` this.element.style.top = `${y}px` + + if (this.isVisible && this.floatingUIOptions.onUpdate) { + this.floatingUIOptions.onUpdate() + } }) } @@ -300,17 +311,37 @@ export class FloatingMenuView { } show() { + if (this.isVisible) { + return + } + this.element.style.visibility = 'visible' this.element.style.opacity = '1' // attach to editor's parent element this.view.dom.parentElement?.appendChild(this.element) + + if (this.floatingUIOptions.onShow) { + this.floatingUIOptions.onShow() + } + + this.isVisible = true } hide() { + if (!this.isVisible) { + return + } + this.element.style.visibility = 'hidden' this.element.style.opacity = '0' // remove from the parent element this.element.remove() + + if (this.floatingUIOptions.onHide) { + this.floatingUIOptions.onHide() + } + + this.isVisible = false } destroy() { @@ -318,6 +349,10 @@ export class FloatingMenuView { this.element.removeEventListener('mousedown', this.mousedownHandler, { capture: true }) this.editor.off('focus', this.focusHandler) this.editor.off('blur', this.blurHandler) + + if (this.floatingUIOptions.onDestroy) { + this.floatingUIOptions.onDestroy() + } } } From bf7c3338c9afb36b9d5b987d86d66d006d64b80b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 20 Jun 2025 20:55:16 +0200 Subject: [PATCH 195/629] chore(release): publish a new pre-release version (beta) (#6477) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 2 ++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- .../extension-details-content/CHANGELOG.md | 8 +++++ .../extension-details-content/package.json | 2 +- .../extension-details-summary/CHANGELOG.md | 8 +++++ .../extension-details-summary/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 144 files changed, 577 insertions(+), 74 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index a361569cb5..5e00e30c54 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -90,6 +90,7 @@ "curly-adults-move", "dirty-bats-look", "dirty-colts-shave", + "dry-monkeys-learn", "eighty-gifts-matter", "fair-jars-shout", "fast-foxes-mate", @@ -116,6 +117,7 @@ "red-rivers-exist", "rude-ads-battle", "selfish-rings-hang", + "serious-rings-end", "seven-llamas-love", "shiny-days-rhyme", "shiny-impalas-remember", diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index d3d261d984..ab2acf6704 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index d791171816..dba1061f0e 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index af9403adb9..fe7b354fc3 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 1cfdfd129b..a910d2a028 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 51cfaa7c05..0725c36f38 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 15dfa0d7c4..a279171358 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.10" + "@tiptap/extensions": "3.0.0-beta.11" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.10" + "@tiptap/extensions": "3.0.0-beta.11" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 5e73119313..ac9b613aef 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 99a37e1ac5..820411bea4 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index ed6a897efa..ef2b324dbd 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index ba24dd0630..88523e9716 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 5ad5dbba27..7d2cbaaeda 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 017be729bb..c49be48e03 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index a0cadbbf34..a54d7785b1 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index f3919bc361..de448e0e39 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 42f987e9d6..7ae79808c8 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index c70e1e3402..d17285794b 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index df76b21a2c..b375bceba3 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 8509c94116..634c360fd1 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 01acf94b0f..0108210f81 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index fd3b2bf50f..17f8aa1d8d 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 5e8a9a28d1..136a24df2d 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 27b47498e3..47b6ce53e5 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 988bb31bee..ace527a44c 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index ea4fe96cc8..804dc45812 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index bcb59d813c..94dd6f1afa 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 7baa7b2033..6c7cebef5c 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 18d5ff63c8..20bd7936f9 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 25464c940e..15b9ba8e5c 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 753fb8ab7e..3e6052f30d 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 994e4a9496..51cc749b40 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index ba813a0ca8..fc3ff576c7 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 1d2188f7b4..707bdd65c2 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index d104035992..7591a188a5 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options + - @tiptap/core@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index d322dc1602..08c0cf0faa 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 8a6e1063b8..87dd479752 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 3564626cfa..9e7fd16269 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index db98a3290e..dc59af2f35 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/extension-code-block@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index c662bac3b2..3fbfe1776c 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 9e4fed8913..b2f9c039a8 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index d57009d96b..aa13d30102 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 84f805cc1d..4f555f166d 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 9be6e26206..dea3ea15cc 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 8e1eeb1f77..74519bdee9 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 94494ebf01..1852d0b2ec 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index c97d6533c0..5192286cf9 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index ac0a0eac30..f98fe72c86 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 33b1f0f218..5a74ca635c 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index efb639de01..82e271fd97 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details-content/CHANGELOG.md b/packages/extension-details-content/CHANGELOG.md index 619216bbb3..0eb13bc05f 100644 --- a/packages/extension-details-content/CHANGELOG.md +++ b/packages/extension-details-content/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details-content +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/extension-text-style@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-details-content/package.json b/packages/extension-details-content/package.json index cbfcdfef03..2794d23fb5 100644 --- a/packages/extension-details-content/package.json +++ b/packages/extension-details-content/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details-content", "description": "details content extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/api/nodes/details-content", "keywords": [ "tiptap", diff --git a/packages/extension-details-summary/CHANGELOG.md b/packages/extension-details-summary/CHANGELOG.md index 95035a1574..47be10b542 100644 --- a/packages/extension-details-summary/CHANGELOG.md +++ b/packages/extension-details-summary/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details-summary +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/extension-text-style@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-details-summary/package.json b/packages/extension-details-summary/package.json index ec8015fe85..105b6c2483 100644 --- a/packages/extension-details-summary/package.json +++ b/packages/extension-details-summary/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details-summary", "description": "details summary extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/api/nodes/details-summary", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 92c8f6132c..cfc5cac3cd 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/extension-text-style@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 905c10d912..060be50036 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 8607b2c17b..c6ea74a950 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index bf8f6e2df5..015835a402 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 0254ff6f21..859974e0f8 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.0.0-beta.11 + +### Patch Changes + +- Updated dependencies [0f14cc5] + - @tiptap/react@3.0.0-beta.11 + - @tiptap/extension-drag-handle@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index afd52f8ed8..abb7f61d8c 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 47f3d25130..35c4701c63 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.0.0-beta.11 + +### Patch Changes + +- Updated dependencies [0f14cc5] + - @tiptap/vue-2@3.0.0-beta.11 + - @tiptap/extension-drag-handle@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index fc42583038..0d59949bf4 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index c6fd40c722..f5552818f9 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.0.0-beta.11 + +### Patch Changes + +- Updated dependencies [0f14cc5] + - @tiptap/vue-3@3.0.0-beta.11 + - @tiptap/extension-drag-handle@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index a0b4b82505..78e567c495 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 236c70ed18..d983d4ae72 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/extension-collaboration@3.0.0-beta.11 +- @tiptap/extension-node-range@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 45ffbbf26f..d1f7cb5d56 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 1d8ae6e8f9..220298c123 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 +- @tiptap/suggestion@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 9316cba092..098ff9d613 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 597a6cc5ea..0109436aa0 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/extension-text-style@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 955be2b20a..fc0598f5b9 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index ead6880a7e..c38509b3ad 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options + - @tiptap/core@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 368e497c9c..6f82abaac9 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 180e6240ec..faaefa37e3 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 1d321b49a0..07a85fd476 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 37d6f1c656..3062ae9d2d 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index b6668da926..121f6fac1b 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index e6d35ebc67..1b48ba20d0 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 3fb3a64e75..bb1e82acef 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 59aaa83415..1f2678c2c7 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index f53c105dec..5f319771a0 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 178cf68549..207dba6bbc 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index ae0bfadc80..ceb38d2dcf 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 254c4591bf..2e79352974 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 1cd3a30814..d12cf03988 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 57105a7a68..b0281a5c0d 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/extension-text-style@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 9aea3b145c..d3488353b4 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 18e40fbb8b..67dc207935 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 352b86807f..caa80cc309 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index f8f71b24c0..2f373ecb85 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 30b384d5a3..405eea2103 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 702f73f824..b4f3455d72 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index b5a0d0c6c3..1111ca0e0a 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 82524b297e..3a81c35848 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 9b073d13f1..ac2439ede8 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 209f82e118..ce1af22445 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 +- @tiptap/suggestion@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index a169408019..2ef33e2557 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index e4ff4fcafc..3583201392 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index af3de3b5d9..ec10d4527e 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 908c7a3054..42b01d6f93 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index f5fb8d39ab..c1307520e3 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index e56ce37906..519eb89567 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 01569de801..b23a39265d 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 4241a2978d..7581d85224 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 4328bb7a9e..125d173d7e 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 0a53072edc..95cdd897aa 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 7f3cf9f4fe..6066e4ac2b 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 11388569b7..8ba4e728b7 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index a22235b56f..493a529c7d 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 7d5cd9460d..79a34c6537 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 5c67498aa2..04e249f959 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 2a8cbc5d58..e898fc1664 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index ba4fc4943e..9b7aa6a6ca 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index acdb6a3ede..3784b1b214 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index e5fb2623fe..033dc1530c 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index e24f207b93..9a603c9904 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 130a2f62c7..e0ce1bca33 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 02657fe95e..5af9141d83 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 8fd89982ae..6e7387d80b 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index d78247be3f..856c8308a2 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 30983055f0..915943c67d 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index cbf7640bb9..150240f235 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index f405b7c1bc..1da89b6b88 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index e61ba1fc51..dc3291afed 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Minor Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index d2abfa2a2b..37dc075647 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 2296f7ae64..8e5d41f59b 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 5bcc0a585e..f23bf201ca 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index b5e51f38f8..c84cf94169 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 8abb4b529b..40e0216d9f 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 2d7f093e4a..1ddce43859 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index a812abaf38..861ff57f2c 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 3613c03169..36e0529a3c 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-beta.11 + ## 3.0.0-beta.10 ## 3.0.0-beta.9 diff --git a/packages/pm/package.json b/packages/pm/package.json index b7751cb031..0590e7d57e 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index e08c2ea263..683b712f0f 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options + - @tiptap/core@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 782d6f0e23..e6ce5f4dcf 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index efc80c4590..541f2e14b5 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.0.0-beta.11 +- @tiptap/extension-gapcursor@3.0.0-beta.11 +- @tiptap/extension-list-item@3.0.0-beta.11 +- @tiptap/extension-list-keymap@3.0.0-beta.11 +- @tiptap/core@3.0.0-beta.11 +- @tiptap/extension-blockquote@3.0.0-beta.11 +- @tiptap/extension-bold@3.0.0-beta.11 +- @tiptap/extension-bullet-list@3.0.0-beta.11 +- @tiptap/extension-code@3.0.0-beta.11 +- @tiptap/extension-code-block@3.0.0-beta.11 +- @tiptap/extension-document@3.0.0-beta.11 +- @tiptap/extension-hard-break@3.0.0-beta.11 +- @tiptap/extension-heading@3.0.0-beta.11 +- @tiptap/extension-horizontal-rule@3.0.0-beta.11 +- @tiptap/extension-italic@3.0.0-beta.11 +- @tiptap/extension-link@3.0.0-beta.11 +- @tiptap/extension-list@3.0.0-beta.11 +- @tiptap/extension-ordered-list@3.0.0-beta.11 +- @tiptap/extension-paragraph@3.0.0-beta.11 +- @tiptap/extension-strike@3.0.0-beta.11 +- @tiptap/extension-text@3.0.0-beta.11 +- @tiptap/extension-underline@3.0.0-beta.11 +- @tiptap/extensions@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 39e3acf1dd..6c905551ed 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 51db2b78c4..6e13a6dc81 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- 81bb134: Fixed a bug causing inline-styles to be parsed as strings for React + - @tiptap/core@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 83104dd000..dc38aee3a9 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index a1e754a2ef..621222ed3a 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.11 +- @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index ef5e183cd7..e7e5f4c4e6 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 357041c8be..d99a9a3a7c 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options + - @tiptap/core@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 6f2ee98dff..464c220f10 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index bb20ad3ddd..a217ce76f1 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.11 + +### Patch Changes + +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options + - @tiptap/core@3.0.0-beta.11 + - @tiptap/pm@3.0.0-beta.11 + ## 3.0.0-beta.10 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index a08a555fff..549b83972c 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.10", + "version": "3.0.0-beta.11", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 11ad475ce6..6d31e7a72e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -340,7 +340,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.10 + specifier: 3.0.0-beta.11 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From 3f7877e3086dff1a35845ee82046159608483c6c Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Fri, 20 Jun 2025 21:02:40 +0200 Subject: [PATCH 196/629] added missing emoji extension repo information --- packages/extension-emoji/package.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 098ff9d613..d02883c4ba 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -12,6 +12,11 @@ "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-emoji" + }, "type": "module", "exports": { ".": { From 6412b50c56f4d5c48b4e272e54cfa9705eece693 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 20 Jun 2025 21:17:08 +0200 Subject: [PATCH 197/629] Remove stuck DOM elements after suggestions are removed (#6480) * fix(demos): remove mentions component element when destroyed * fix(demos): remove component element for suggestion on destroy * remove component elements first before destroying component --- demos/src/Nodes/Mention/React/suggestion.js | 1 + demos/src/Nodes/Mention/Vue/suggestion.js | 1 + 2 files changed, 2 insertions(+) diff --git a/demos/src/Nodes/Mention/React/suggestion.js b/demos/src/Nodes/Mention/React/suggestion.js index f01b7d2a58..5f6628dc8f 100644 --- a/demos/src/Nodes/Mention/React/suggestion.js +++ b/demos/src/Nodes/Mention/React/suggestion.js @@ -95,6 +95,7 @@ export default { }, onExit() { + component.element.remove() component.destroy() }, } diff --git a/demos/src/Nodes/Mention/Vue/suggestion.js b/demos/src/Nodes/Mention/Vue/suggestion.js index b6d60172f3..866d17fbf7 100644 --- a/demos/src/Nodes/Mention/Vue/suggestion.js +++ b/demos/src/Nodes/Mention/Vue/suggestion.js @@ -99,6 +99,7 @@ export default { }, onExit() { + component.element.remove() component.destroy() }, } From 00693b8dd768ee338fbf24e76f944c1fbf8751e1 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 20 Jun 2025 22:56:01 +0200 Subject: [PATCH 198/629] Enhance bubble menu positioning for table cell selections (#6482) * Enhance bubble menu positioning for table cell selections * added changeset * added null check for nodeDOM * Update packages/extension-bubble-menu/src/bubble-menu-plugin.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update packages/extension-bubble-menu/src/bubble-menu-plugin.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * use instanceof cellselection --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/early-guests-melt.md | 8 ++++ .../src/bubble-menu-plugin.ts | 43 ++++++++++++++++++- 2 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 .changeset/early-guests-melt.md diff --git a/.changeset/early-guests-melt.md b/.changeset/early-guests-melt.md new file mode 100644 index 0000000000..1897a4d07e --- /dev/null +++ b/.changeset/early-guests-melt.md @@ -0,0 +1,8 @@ +--- +'@tiptap/extension-bubble-menu': patch +'@tiptap/react': patch +'@tiptap/vue-2': patch +'@tiptap/vue-3': patch +--- + +Fixed a bug where table cell selections would not position the bubble menu accordingly diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index 2055926508..77a35323c3 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -14,8 +14,21 @@ import type { Editor } from '@tiptap/core' import { isTextSelection, posToDOMRect } from '@tiptap/core' import type { EditorState, PluginView } from '@tiptap/pm/state' import { Plugin, PluginKey } from '@tiptap/pm/state' +import { CellSelection } from '@tiptap/pm/tables' import type { EditorView } from '@tiptap/pm/view' +function combineDOMRects(rect1: DOMRect, rect2: DOMRect): DOMRect { + const top = Math.min(rect1.top, rect2.top) + const bottom = Math.max(rect1.bottom, rect2.bottom) + const left = Math.min(rect1.left, rect2.left) + const right = Math.max(rect1.right, rect2.right) + const width = right - left + const height = bottom - top + const x = left + const y = top + return new DOMRect(x, y, width, height) +} + export interface BubbleMenuPluginProps { /** * The plugin key. @@ -291,11 +304,37 @@ export class BubbleMenuView implements PluginView { updatePosition() { const { selection } = this.editor.state - - const virtualElement = { + let virtualElement = { getBoundingClientRect: () => posToDOMRect(this.view, selection.from, selection.to), } + // this is a special case for cell selections + if (selection instanceof CellSelection) { + const { $anchorCell, $headCell } = selection + + const from = $anchorCell ? $anchorCell.pos : $headCell!.pos + const to = $headCell ? $headCell.pos : $anchorCell!.pos + + const fromDOM = this.view.nodeDOM(from) + const toDOM = this.view.nodeDOM(to) + + if (!fromDOM || !toDOM) { + return + } + + const clientRect = + fromDOM === toDOM + ? (fromDOM as HTMLElement).getBoundingClientRect() + : combineDOMRects( + (fromDOM as HTMLElement).getBoundingClientRect(), + (toDOM as HTMLElement).getBoundingClientRect(), + ) + + virtualElement = { + getBoundingClientRect: () => clientRect, + } + } + computePosition(virtualElement, this.element, { placement: this.floatingUIOptions.placement, strategy: this.floatingUIOptions.strategy, From da7ccd9409bbb9b47998f769082f0d903dd56e9f Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 20 Jun 2025 23:15:35 +0200 Subject: [PATCH 199/629] Migrate `next` version of details extension (#6484) * migrate next version of details * added changeset --- .changeset/curly-wombats-train.md | 5 ++ demos/src/Nodes/Details/React/index.jsx | 4 +- demos/src/Nodes/Details/Vue/index.vue | 4 +- .../extension-details-content/CHANGELOG.md | 38 -------------- packages/extension-details-content/README.md | 14 ----- .../extension-details-content/package.json | 51 ------------------ .../extension-details-content/tsup.config.ts | 11 ---- .../extension-details-summary/CHANGELOG.md | 38 -------------- packages/extension-details-summary/README.md | 14 ----- .../extension-details-summary/package.json | 52 ------------------- .../extension-details-summary/tsup.config.ts | 11 ---- .../src/content}/details-content.ts | 0 .../src/content}/index.ts | 0 packages/extension-details/src/details.ts | 5 +- packages/extension-details/src/index.ts | 2 + .../src/summary}/details-summary.ts | 0 .../src/summary}/index.ts | 0 17 files changed, 12 insertions(+), 237 deletions(-) create mode 100644 .changeset/curly-wombats-train.md delete mode 100644 packages/extension-details-content/CHANGELOG.md delete mode 100644 packages/extension-details-content/README.md delete mode 100644 packages/extension-details-content/package.json delete mode 100644 packages/extension-details-content/tsup.config.ts delete mode 100644 packages/extension-details-summary/CHANGELOG.md delete mode 100644 packages/extension-details-summary/README.md delete mode 100644 packages/extension-details-summary/package.json delete mode 100644 packages/extension-details-summary/tsup.config.ts rename packages/{extension-details-content/src => extension-details/src/content}/details-content.ts (100%) rename packages/{extension-details-content/src => extension-details/src/content}/index.ts (100%) rename packages/{extension-details-summary/src => extension-details/src/summary}/details-summary.ts (100%) rename packages/{extension-details-summary/src => extension-details/src/summary}/index.ts (100%) diff --git a/.changeset/curly-wombats-train.md b/.changeset/curly-wombats-train.md new file mode 100644 index 0000000000..344be3c80d --- /dev/null +++ b/.changeset/curly-wombats-train.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-details': patch +--- + +Removed details summary and details content and include it in details diff --git a/demos/src/Nodes/Details/React/index.jsx b/demos/src/Nodes/Details/React/index.jsx index 3b46f63ad4..65ce5a2dfc 100644 --- a/demos/src/Nodes/Details/React/index.jsx +++ b/demos/src/Nodes/Details/React/index.jsx @@ -1,8 +1,6 @@ import './styles.scss' -import Details from '@tiptap/extension-details' -import DetailsContent from '@tiptap/extension-details-content' -import DetailsSummary from '@tiptap/extension-details-summary' +import { Details, DetailsContent, DetailsSummary } from '@tiptap/extension-details' import { Placeholder } from '@tiptap/extensions' import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' diff --git a/demos/src/Nodes/Details/Vue/index.vue b/demos/src/Nodes/Details/Vue/index.vue index bc7b9279a3..febba36b34 100644 --- a/demos/src/Nodes/Details/Vue/index.vue +++ b/demos/src/Nodes/Details/Vue/index.vue @@ -15,9 +15,7 @@ @@ -13,7 +21,7 @@ diff --git a/packages/extension-mathematics/src/MathematicsPlugin.ts b/packages/extension-mathematics/src/MathematicsPlugin.ts deleted file mode 100644 index 616f13cf7f..0000000000 --- a/packages/extension-mathematics/src/MathematicsPlugin.ts +++ /dev/null @@ -1,205 +0,0 @@ -import { getChangedRanges } from '@tiptap/core' -import type { EditorState, Transaction } from '@tiptap/pm/state' -import { Plugin, PluginKey } from '@tiptap/pm/state' -import { Decoration, DecorationSet } from '@tiptap/pm/view' -import katex from 'katex' - -import type { MathematicsOptionsWithEditor } from './types.js' - -type DecoSpec = { - isEditable: boolean - isEditing: boolean - katexOptions: MathematicsOptionsWithEditor['katexOptions'] - content: string -} - -type Deco = Omit & { spec: DecoSpec } - -type PluginState = - | { decorations: DecorationSet; isEditable: boolean } - | { decorations: undefined; isEditable: undefined } - -/** - * Get the range of positions that have been affected by a transaction - */ -function getAffectedRange( - newState: EditorState, - previousPluginState: PluginState, - isEditable: boolean, - tr: Transaction, - state: EditorState, -) { - const docSize = newState.doc.nodeSize - 2 - let minFrom = 0 - let maxTo = docSize - - if (previousPluginState.isEditable !== isEditable) { - // When the editable state changes, run on all nodes just to be safe - minFrom = 0 - maxTo = docSize - } else if (tr.docChanged) { - // When the document changes, only run on the nodes that have changed - minFrom = docSize - maxTo = 0 - - getChangedRanges(tr).forEach(range => { - // Purposefully over scan the range to ensure we catch all decorations - minFrom = Math.min(minFrom, range.newRange.from - 1, range.oldRange.from - 1) - maxTo = Math.max(maxTo, range.newRange.to + 1, range.oldRange.to + 1) - }) - } else if (tr.selectionSet) { - const { $from, $to } = state.selection - const { $from: $newFrom, $to: $newTo } = newState.selection - - // When the selection changes, run on all the nodes between the old and new selection - minFrom = Math.min( - // Purposefully over scan the range to ensure we catch all decorations - $from.depth === 0 ? 0 : $from.before(), - $newFrom.depth === 0 ? 0 : $newFrom.before(), - ) - maxTo = Math.max($to.depth === 0 ? maxTo : $to.after(), $newTo.depth === 0 ? maxTo : $newTo.after()) - } - - return { - minFrom: Math.max(minFrom, 0), - maxTo: Math.min(maxTo, docSize), - } -} - -export const MathematicsPlugin = (options: MathematicsOptionsWithEditor) => { - const { regex, katexOptions = {}, editor, shouldRender } = options - - return new Plugin({ - key: new PluginKey('mathematics'), - - state: { - init() { - return { decorations: undefined, isEditable: undefined } - }, - apply(tr, previousPluginState, state, newState) { - if (!tr.docChanged && !tr.selectionSet && previousPluginState.decorations) { - // Just reuse the existing decorations, since nothing should have changed - return previousPluginState - } - - const nextDecorationSet = (previousPluginState.decorations || DecorationSet.empty).map(tr.mapping, tr.doc) - const { selection } = newState - const isEditable = editor.isEditable - const decorationsToAdd = [] as Deco[] - const { minFrom, maxTo } = getAffectedRange(newState, previousPluginState, isEditable, tr, state) - - newState.doc.nodesBetween(minFrom, maxTo, (node, pos) => { - const enabled = shouldRender(newState, pos, node) - - if (node.isText && node.text && enabled) { - let match: RegExpExecArray | null - - // eslint-disable-next-line no-cond-assign - while ((match = regex.exec(node.text))) { - const from = pos + match.index - const to = from + match[0].length - const content = match.slice(1).find(Boolean) - - if (content) { - const selectionSize = selection.from - selection.to - const anchorIsInside = selection.anchor >= from && selection.anchor <= to - const rangeIsInside = selection.from >= from && selection.to <= to - const isEditing = (selectionSize === 0 && anchorIsInside) || rangeIsInside - - if ( - // Are the decorations already present? - nextDecorationSet.find( - from, - to, - (deco: DecoSpec) => - isEditing === deco.isEditing && - content === deco.content && - isEditable === deco.isEditable && - katexOptions === deco.katexOptions, - ).length - ) { - // Decoration exists in set, no need to add it again - continue - } - // Use an inline decoration to either hide original (preview is showing) or show it (editing "mode") - decorationsToAdd.push( - Decoration.inline( - from, - to, - { - class: - isEditing && isEditable - ? 'Tiptap-mathematics-editor' - : 'Tiptap-mathematics-editor Tiptap-mathematics-editor--hidden', - style: - !isEditing || !isEditable - ? 'display: inline-block; height: 0; opacity: 0; overflow: hidden; position: absolute; width: 0;' - : undefined, - }, - { - content, - isEditable, - isEditing, - katexOptions, - } satisfies DecoSpec, - ), - ) - - if (!isEditable || !isEditing) { - // Create decoration widget and add KaTeX preview if selection is not within the math-editor - decorationsToAdd.push( - Decoration.widget( - from, - () => { - const element = document.createElement('span') - - // TODO: changeable class names - element.classList.add('Tiptap-mathematics-render') - - if (isEditable) { - element.classList.add('Tiptap-mathematics-render--editable') - } - - try { - katex.render(content!, element, katexOptions) - } catch { - element.innerHTML = content! - } - - return element - }, - { - content, - isEditable, - isEditing, - katexOptions, - } satisfies DecoSpec, - ), - ) - } - } - } - } - }) - - // Remove any decorations that exist at the same position, they will be replaced by the new decorations - const decorationsToRemove = decorationsToAdd.flatMap(deco => nextDecorationSet.find(deco.from, deco.to)) - - return { - decorations: nextDecorationSet - // Remove existing decorations that are going to be replaced - .remove(decorationsToRemove) - // Add any new decorations - .add(tr.doc, decorationsToAdd), - isEditable, - } - }, - }, - - props: { - decorations(state) { - return this.getState(state)?.decorations ?? DecorationSet.empty - }, - }, - }) -} diff --git a/packages/extension-mathematics/src/extensions/BlockMath.ts b/packages/extension-mathematics/src/extensions/BlockMath.ts new file mode 100644 index 0000000000..1f9cce0087 --- /dev/null +++ b/packages/extension-mathematics/src/extensions/BlockMath.ts @@ -0,0 +1,210 @@ +import { InputRule, mergeAttributes, Node } from '@tiptap/core' +import type { Node as PMNode } from '@tiptap/pm/model' +import katex from 'katex' + +export type BlockMathOptions = { + onClick?: (node: PMNode, pos: number) => void +} + +declare module '@tiptap/core' { + interface Commands { + blockMath: { + /** + * Set block math node with LaTeX string. + * @param options - Options for setting block math. + * @returns ReturnType + */ + setBlockMath: (options: { latex: string; pos?: number }) => ReturnType + + /** + * Unset block math node. + * @returns ReturnType + */ + unsetBlockMath: (options?: { pos?: number }) => ReturnType + + /** + * Update block math node with optional LaTeX string. + * @param options - Options for updating block math. + * @returns ReturnType + */ + updateBlockMath: (options?: { latex?: string; pos?: number }) => ReturnType + } + } +} + +/** + * BlockMath is a Tiptap extension for rendering block mathematical expressions using KaTeX. + * It allows users to insert LaTeX formatted math expressions block within text. + * It supports rendering, input rules for LaTeX syntax, and click handling for interaction. + * + * @example + * ```javascript + * import { BlockMath } from 'your-extension-path' + * import { Editor } from '@tiptap/core' + * + * const editor = new Editor({ + * extensions: [ + * BlockMath.configure({ + * onClick: (node, pos) => { + * console.log('Block math clicked:', node.attrs.latex, 'at position:', pos) + * }, + * }), + * ], + * }) + */ +export const BlockMath = Node.create({ + name: 'blockMath', + + group: 'block', + + atom: true, + + addOptions() { + return { + onClick: undefined, + } + }, + + addAttributes() { + return { + latex: { + default: '', + parseHTML: element => element.getAttribute('data-latex'), + renderHTML: attributes => { + return { + 'data-latex': attributes.latex, + } + }, + }, + } + }, + + addCommands() { + return { + setBlockMath: + options => + ({ commands, editor }) => { + const { latex, pos } = options + return commands.insertContentAt(pos ?? editor.state.selection.from, { + type: this.name, + attrs: { latex }, + }) + }, + + unsetBlockMath: + options => + ({ editor, tr }) => { + const pos = options?.pos ?? editor.state.selection.$from.pos + const node = editor.state.doc.nodeAt(pos) + + if (!node || node.type.name !== this.name) { + return false + } + + tr.delete(pos, pos + node.nodeSize) + return true + }, + + updateBlockMath: + options => + ({ editor, tr }) => { + const latex = options?.latex + let pos = options?.pos + + if (pos === undefined) { + pos = editor.state.selection.$from.pos + } + + const node = editor.state.doc.nodeAt(pos) + + if (!node || node.type.name !== this.name) { + return false + } + + tr.setNodeMarkup(pos, this.type, { + ...node.attrs, + latex: latex || node.attrs.latex, + }) + + return true + }, + } + }, + + parseHTML() { + return [ + { + tag: 'div[data-type="block-math"]', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['div', mergeAttributes(HTMLAttributes, { 'data-type': 'block-math' })] + }, + + addInputRules() { + return [ + new InputRule({ + find: /^\$\$\$([^$]+)\$\$\$$/, + handler: ({ state, range, match }) => { + const [, latex] = match + const { tr } = state + const start = range.from + const end = range.to + + tr.replaceWith(start, end, this.type.create({ latex })) + }, + }), + ] + }, + + addNodeView() { + return ({ node, getPos }) => { + const wrapper = document.createElement('div') + const innerWrapper = document.createElement('div') + wrapper.className = 'Tiptap-mathematics-render Tiptap-mathematics-render--editable' + innerWrapper.className = 'block-math-inner' + wrapper.dataset.type = 'block-math' + wrapper.setAttribute('data-latex', node.attrs.latex) + wrapper.appendChild(innerWrapper) + + function renderMath() { + try { + katex.render(node.attrs.latex, innerWrapper) + wrapper.classList.remove('block-math-error') + } catch { + wrapper.textContent = node.attrs.latex + wrapper.classList.add('block-math-error') + } + } + + const handleClick = (event: MouseEvent) => { + event.preventDefault() + event.stopPropagation() + const pos = getPos() + + if (pos == null) { + return + } + + if (this.options.onClick) { + this.options.onClick(node, pos) + } + } + + if (this.options.onClick) { + wrapper.addEventListener('click', handleClick) + } + + renderMath() + + return { + dom: wrapper, + destroy() { + wrapper.removeEventListener('click', handleClick) + }, + } + } + }, +}) diff --git a/packages/extension-mathematics/src/extensions/InlineMath.ts b/packages/extension-mathematics/src/extensions/InlineMath.ts new file mode 100644 index 0000000000..2f82821f77 --- /dev/null +++ b/packages/extension-mathematics/src/extensions/InlineMath.ts @@ -0,0 +1,210 @@ +import { InputRule, mergeAttributes, Node } from '@tiptap/core' +import type { Node as PMNode } from '@tiptap/pm/model' +import katex from 'katex' + +export type InlineMathOptions = { + onClick?: (node: PMNode, pos: number) => void +} + +declare module '@tiptap/core' { + interface Commands { + inlineMath: { + /** + * Set inline math node with LaTeX string. + * @param options - Options for setting inline math. + * @returns ReturnType + */ + setInlineMath: (options: { latex: string; pos?: number }) => ReturnType + + /** + * Unset inline math node. + * @returns ReturnType + */ + unsetInlineMath: (options?: { pos?: number }) => ReturnType + + /** + * Update inline math node with optional LaTeX string. + * @param options - Options for updating inline math. + * @returns ReturnType + */ + updateInlineMath: (options?: { latex?: string; pos?: number }) => ReturnType + } + } +} + +/** + * InlineMath is a Tiptap extension for rendering inline mathematical expressions using KaTeX. + * It allows users to insert LaTeX formatted math expressions inline within text. + * It supports rendering, input rules for LaTeX syntax, and click handling for interaction. + * + * @example + * ```javascript + * import { InlineMath } from 'your-extension-path' + * import { Editor } from '@tiptap/core' + * + * const editor = new Editor({ + * extensions: [ + * InlineMath.configure({ + * onClick: (node, pos) => { + * console.log('Inline math clicked:', node.attrs.latex, 'at position:', pos) + * }, + * }), + * ], + * }) + */ +export const InlineMath = Node.create({ + name: 'inlineMath', + + group: 'inline', + + inline: true, + + atom: true, + + addOptions() { + return { + onClick: undefined, + } + }, + + addAttributes() { + return { + latex: { + default: '', + parseHTML: element => element.getAttribute('data-latex'), + renderHTML: attributes => { + return { + 'data-latex': attributes.latex, + } + }, + }, + } + }, + + addCommands() { + return { + setInlineMath: + options => + ({ editor, tr }) => { + const latex = options?.latex + const pos = options?.pos ?? editor.state.selection.$from.pos + + if (!latex) { + return false + } + + tr.replaceWith(pos, pos, this.type.create({ latex })) + return true + }, + + unsetInlineMath: + options => + ({ editor, tr }) => { + const pos = options?.pos ?? editor.state.selection.$from.pos + const node = editor.state.doc.nodeAt(pos) + + if (!node || node.type.name !== this.name) { + return false + } + + tr.delete(pos, pos + node.nodeSize) + return true + }, + + updateInlineMath: + options => + ({ editor, tr }) => { + const latex = options?.latex + let pos = options?.pos + + if (pos === undefined) { + pos = editor.state.selection.$from.pos + } + + const node = editor.state.doc.nodeAt(pos) + + if (!node || node.type.name !== this.name) { + return false + } + + tr.setNodeMarkup(pos, this.type, { ...node.attrs, latex }) + + return true + }, + } + }, + + parseHTML() { + return [ + { + tag: 'span[data-type="inline-math"]', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['span', mergeAttributes(HTMLAttributes, { 'data-type': 'inline-math' })] + }, + + addInputRules() { + return [ + new InputRule({ + find: /(? { + const [, latex] = match + const { tr } = state + const start = range.from + const end = range.to + + tr.replaceWith(start, end, this.type.create({ latex })) + }, + }), + ] + }, + + addNodeView() { + return ({ node, getPos }) => { + const wrapper = document.createElement('span') + wrapper.className = 'Tiptap-mathematics-render Tiptap-mathematics-render--editable' + wrapper.dataset.type = 'inline-math' + wrapper.setAttribute('data-latex', node.attrs.latex) + + function renderMath() { + try { + katex.render(node.attrs.latex, wrapper) + wrapper.classList.remove('inline-math-error') + } catch { + wrapper.textContent = node.attrs.latex + wrapper.classList.add('inline-math-error') + } + } + + const handleClick = (event: MouseEvent) => { + event.preventDefault() + event.stopPropagation() + const pos = getPos() + + if (pos == null) { + return + } + + if (this.options.onClick) { + this.options.onClick(node, pos) + } + } + + if (this.options.onClick) { + wrapper.addEventListener('click', handleClick) + } + + renderMath() + + return { + dom: wrapper, + destroy() { + wrapper.removeEventListener('click', handleClick) + }, + } + } + }, +}) diff --git a/packages/extension-mathematics/src/extensions/index.ts b/packages/extension-mathematics/src/extensions/index.ts new file mode 100644 index 0000000000..5d60f424c8 --- /dev/null +++ b/packages/extension-mathematics/src/extensions/index.ts @@ -0,0 +1,2 @@ +export * from './BlockMath.js' +export * from './InlineMath.js' diff --git a/packages/extension-mathematics/src/index.ts b/packages/extension-mathematics/src/index.ts index d143d41d38..ff15ce8eb0 100644 --- a/packages/extension-mathematics/src/index.ts +++ b/packages/extension-mathematics/src/index.ts @@ -1,7 +1,7 @@ -import { Mathematics } from './mathematics.js' +import { Math } from './mathematics.js' +export * from './extensions/index.js' export * from './mathematics.js' -export * from './MathematicsPlugin.js' export * from './types.js' -export default Mathematics +export default Math diff --git a/packages/extension-mathematics/src/mathematics.ts b/packages/extension-mathematics/src/mathematics.ts index e07b8e8930..372f10e9e6 100644 --- a/packages/extension-mathematics/src/mathematics.ts +++ b/packages/extension-mathematics/src/mathematics.ts @@ -1,31 +1,24 @@ import { Extension } from '@tiptap/core' -import type { EditorState } from '@tiptap/pm/state' -import { MathematicsPlugin } from './MathematicsPlugin.js' +import { BlockMath, InlineMath } from './extensions/index.js' import type { MathematicsOptions } from './types.js' -export const defaultShouldRender = (state: EditorState, pos: number) => { - const $pos = state.doc.resolve(pos) - const isInCodeBlock = $pos.parent.type.name === 'codeBlock' - - return !isInCodeBlock -} - -export const Mathematics = Extension.create({ +export const Math = Extension.create({ name: 'Mathematics', addOptions() { return { - // eslint-disable-next-line no-useless-escape - regex: /\$([^\$]*)\$/gi, + inlineOptions: undefined, + blockOptions: undefined, katexOptions: undefined, - shouldRender: defaultShouldRender, } }, - addProseMirrorPlugins() { - return [MathematicsPlugin({ ...this.options, editor: this.editor })] + addExtensions() { + return [BlockMath.configure(this.options.blockOptions), InlineMath.configure(this.options.inlineOptions)] }, }) -export default Mathematics +export const Mathematics = Math + +export default Math diff --git a/packages/extension-mathematics/src/types.ts b/packages/extension-mathematics/src/types.ts index bc97172d47..65da89d9b7 100644 --- a/packages/extension-mathematics/src/types.ts +++ b/packages/extension-mathematics/src/types.ts @@ -1,12 +1,12 @@ import type { Editor } from '@tiptap/core' -import type { Node } from '@tiptap/pm/model' -import type { EditorState } from '@tiptap/pm/state' import type { KatexOptions } from 'katex' +import type { BlockMathOptions, InlineMathOptions } from './extensions' + export type MathematicsOptions = { - regex: RegExp + inlineOptions?: InlineMathOptions + blockOptions?: BlockMathOptions katexOptions?: KatexOptions - shouldRender: (state: EditorState, pos: number, node: Node) => boolean } export type MathematicsOptionsWithEditor = MathematicsOptions & { editor: Editor } From 8b37afbd448ab4dec8ba538d51da132c5189f61e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 27 Jun 2025 01:04:16 +0200 Subject: [PATCH 218/629] chore(release): publish a new pre-release version (beta) (#6498) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 3 ++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 33 +++++++++++++++++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 9 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 140 files changed, 625 insertions(+), 72 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index bb26517739..a884c59362 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -97,6 +97,7 @@ "fair-jars-shout", "fast-foxes-mate", "fresh-ads-nail", + "fresh-geckos-exercise", "gold-ads-own", "good-trainers-train", "great-terms-jam", @@ -126,11 +127,13 @@ "seven-llamas-love", "shiny-days-rhyme", "shiny-impalas-remember", + "shiny-rats-wash", "silly-plants-sin", "silver-roses-joke", "sixty-news-ring", "small-otters-bake", "smooth-carrots-beam", + "spicy-horses-smoke", "spotty-cobras-shake", "swift-dolphins-think", "tame-worms-applaud", diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index ef207e70c7..9720e9ad0f 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 5963e94b45..9d38a7472c 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 7d5cc1b8bd..0e58909dc1 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 3027d7325d..a284c9fd64 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 0849201f46..8da1fc5a20 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 715fcb8d5c..f07fd98fe5 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.16" + "@tiptap/extensions": "3.0.0-beta.17" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.16" + "@tiptap/extensions": "3.0.0-beta.17" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index a90fc43e36..dc84bc8389 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 19ebae5b5e..532b9b7f92 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 68e21491c2..8c9a3bc370 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index c3b9bd237e..7eda2ca35d 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index b7a789e49e..003b4508fd 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index bc2568b115..78a3759855 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index ecf14a1b8f..fd6d465c4a 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index f5453d21cb..5a83dbc352 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 161d2cf0e7..6deedcbd31 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 7b8827aacf..7c5501169a 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 8546ffef77..ac8c977a24 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index a1c9b43d14..734be0418f 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 787a70a702..e3848e0088 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 2e0066679e..520ed4eea5 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 040b0fa4da..8d28cedf25 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index d59f98710b..58e6657ea5 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 30fcb8bdf9..94db7936f0 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 999f6804e0..f8ae84008d 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index aedb3d02cc..c17e384213 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 10323e1292..5fa0afacce 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index d39284b9e5..d4136d0f35 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- e20006b: Fix: Prevent content deletion from non-editable Tiptap source editors during drag and drop. + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 507ae486a2..86c7f640e3 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 0fa23f0f26..742e2a279d 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index d40828a961..77a737c37d 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 35bbdde44e..450a72d65c 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index dd20c1007d..631efa0b43 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index b094bfd5e4..b7d8e7dbfe 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 1397d6a13c..52ff157d71 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 07101388e3..56e62aed99 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 24a517eb28..93b811f0f5 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 154ce46b4b..27049a6f44 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/extension-code-block@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index c9371f8451..3831bdef5e 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index f45045a3db..1461271354 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 2323872369..604f88457a 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index ba87475c04..83bcef06c8 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 9971b3971f..68f3ab968e 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 1d7bb7fc82..b8aad98fbb 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 232440c10f..e65d5771fd 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 2b08e3c8cc..e52cf5f9d3 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 2dc2c7f405..73554be06d 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 931e48d8e2..55e43e0e2a 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 29fd6786bf..4812661788 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 7e561f4c04..83a4498a7e 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/extension-text-style@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 7eea58ad72..c5f6afca86 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index ab2076afb2..5a3d0cf4bb 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 9e4892308f..6078a96812 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 9691c29601..9b4a21f1c8 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.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.17 +- @tiptap/react@3.0.0-beta.17 +- @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 1cfb0ab96b..2c0bc392de 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index bb09db47a5..f575a6bf05 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.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.17 +- @tiptap/vue-2@3.0.0-beta.17 +- @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index d8679800d6..d8de656b76 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index c0b0480d88..6ca4e05ed5 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.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.17 +- @tiptap/vue-3@3.0.0-beta.17 +- @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index d4d712cb24..bf2a05bb9e 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 35a45c4e38..4aa332023f 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/extension-collaboration@3.0.0-beta.17 + - @tiptap/extension-node-range@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index bd970c0e04..bb6fff49c3 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index e07d0c1359..c936e97925 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/suggestion@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 27d498ba9e..88f82a7fa0 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 1bc355ee96..99a97ce12f 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/extension-text-style@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index f4763d060f..350e35c0b3 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 21d3bb2eaa..d74ae80073 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index fc67cc3911..221f77176d 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 4b3140f5be..7ec02aba91 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 590258b08e..6bdf592f46 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 765944bdca..f1f083f268 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 0723395e85..668e7265af 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 3268b49212..5e2eabca99 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 8849390b75..3bb4bf5e85 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 386dce2ac1..9f70b12345 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index daa2ce51d1..5697225084 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index bba9b3f2b0..3da1468e92 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index ca5133f1aa..04e90a4289 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 6a805b0585..426d8a3980 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 17f529d626..4a5c978a1c 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 984f080692..66d6418d82 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/extension-text-style@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 95316f4a56..d6a4ddc5d0 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index a2594b51f6..41017a2018 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index ffcdb60a76..71e013ae66 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index ea7b25e33a..d0c8a4393c 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 552de59e4d..ec262f85ce 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 1cf10ccf93..d0a77795c0 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.17 + +### Patch Changes + +- Updated dependencies [e20006b] + - @tiptap/core@3.0.0-beta.17 + - @tiptap/pm@3.0.0-beta.17 + ## 3.0.0-beta.16 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 7c69db1f22..cae3c2b7d2 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.16", + "version": "3.0.0-beta.17", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 4fbced3db9..10cf5b59f9 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,38 @@ # @tiptap/extension-mathematics +## 3.0.0-beta.17 + +### Major Changes + +- ab8bc2f: The Math extension now uses **nodes** to render mathematic content in the editor. This should improve the performance when an editor renders many math equations at the same time. + + This change is not backwards compatible, so you will need to update your code to use the new node-based API. + + At the same time, the `Mathematics` extension has been renamed to `Math` to better align with the naming conventions of other extensions - but the old name is still available for backwards compatibility. + + This extension includes two new nodes: + + - `MathInline` for inline math equations + - `MathBlock` for block math equations + + The regex patterns for the input rules were also updated to be less conflicting with text including dollar signs. The new patterns are: + + - Inline: `/(? Date: Fri, 27 Jun 2025 13:01:05 +0200 Subject: [PATCH 219/629] fix: show mention indicator when converting mention to html --- packages/extension-mention/src/mention.ts | 104 ++++++++++------------ 1 file changed, 47 insertions(+), 57 deletions(-) diff --git a/packages/extension-mention/src/mention.ts b/packages/extension-mention/src/mention.ts index b684121f33..02d3a297fe 100644 --- a/packages/extension-mention/src/mention.ts +++ b/packages/extension-mention/src/mention.ts @@ -1,4 +1,4 @@ -import { mergeAttributes, Node } from '@tiptap/core' +import { Editor, mergeAttributes, Node } from '@tiptap/core' import type { DOMOutputSpec } from '@tiptap/pm/model' import { Node as ProseMirrorNode } from '@tiptap/pm/model' import type { SuggestionOptions } from '@tiptap/suggestion' @@ -97,41 +97,62 @@ export interface MentionOptions, 'editor'> } +interface GetSuggestionsOptions { + editor?: Editor + options: MentionOptions + name: string +} + /** - * Storage properties or the Mention extension + * Returns the suggestions for the mention extension. + * + * @param options The extension options + * @returns the suggestions */ -export interface MentionStorage = MentionNodeAttrs> { - /** - * The list of suggestions that will trigger the mention. - */ - suggestions: Array> +function getSuggestions(options: GetSuggestionsOptions) { + return (options.options.suggestions.length ? options.options.suggestions : [options.options.suggestion]).map( + suggestion => + getSuggestionOptions({ + editor: options.editor ?? new Editor(), + overrideSuggestionOptions: suggestion, + extensionName: options.name, + char: suggestion.char, + }), + ) +} - /** - * Returns the suggestion options of the mention that has a given character trigger. If not - * found, it returns the first suggestion. - * - * @param char The character that triggers the mention - * @returns The suggestion options - */ - getSuggestionFromChar: (char: string) => SuggestionOptions | null +/** + * Returns the suggestion options of the mention that has a given character trigger. If not + * found, it returns the first suggestion. + * + * @param options The extension options + * @param char The character that triggers the mention + * @returns The suggestion options + */ +function getSuggestionFromChar(options: GetSuggestionsOptions, char: string) { + const suggestions = getSuggestions(options) + + const suggestion = suggestions.find(s => s.char === char) + if (suggestion) { + return suggestion + } + + if (suggestions.length) { + return suggestions[0] + } + + return null } /** * This extension allows you to insert mentions into the editor. * @see https://www.tiptap.dev/api/extensions/mention */ -export const Mention = Node.create({ +export const Mention = Node.create({ name: 'mention', priority: 101, - addStorage() { - return { - suggestions: [], - getSuggestionFromChar: () => null, - } - }, - addOptions() { return { HTMLAttributes: {}, @@ -211,11 +232,7 @@ export const Mention = Node.create({ }, renderHTML({ node, HTMLAttributes }) { - // We cannot use the `this.storage` property here because, when accessed this method, - // it returns the initial value of the extension storage - const suggestion = (this.editor?.extensionStorage as unknown as Record)?.[ - this.name - ]?.getSuggestionFromChar(node.attrs.mentionSuggestionChar) + const suggestion = getSuggestionFromChar(this, node.attrs.mentionSuggestionChar) if (this.options.renderLabel !== undefined) { console.warn('renderLabel is deprecated use renderText and renderHTML instead') @@ -253,9 +270,7 @@ export const Mention = Node.create({ const args = { options: this.options, node, - suggestion: (this.editor?.extensionStorage as unknown as Record)?.[ - this.name - ]?.getSuggestionFromChar(node.attrs.mentionSuggestionChar), + suggestion: getSuggestionFromChar(this, node.attrs.mentionSuggestionChar), } if (this.options.renderLabel !== undefined) { console.warn('renderLabel is deprecated use renderText and renderHTML instead') @@ -305,31 +320,6 @@ export const Mention = Node.create({ addProseMirrorPlugins() { // Create a plugin for each suggestion configuration - return this.storage.suggestions.map(Suggestion) - }, - - onBeforeCreate() { - this.storage.suggestions = ( - this.options.suggestions.length ? this.options.suggestions : [this.options.suggestion] - ).map(suggestion => - getSuggestionOptions({ - editor: this.editor, - overrideSuggestionOptions: suggestion, - extensionName: this.name, - char: suggestion.char, - }), - ) - - this.storage.getSuggestionFromChar = char => { - const suggestion = this.storage.suggestions.find(s => s.char === char) - if (suggestion) { - return suggestion - } - if (this.storage.suggestions.length) { - return this.storage.suggestions[0] - } - - return null - } + return getSuggestions(this).map(Suggestion) }, }) From b3afd1e197d8acee44f8b285290684491af0727a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Fri, 27 Jun 2025 13:05:06 +0200 Subject: [PATCH 220/629] chore: changeset --- .changeset/moody-insects-guess.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/moody-insects-guess.md diff --git a/.changeset/moody-insects-guess.md b/.changeset/moody-insects-guess.md new file mode 100644 index 0000000000..4223f32d19 --- /dev/null +++ b/.changeset/moody-insects-guess.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-mention': patch +--- + +Show mention indicator when converting document to HTML From 338b06516fc3eb8f174502266e866aa8516f155d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Fri, 27 Jun 2025 13:15:16 +0200 Subject: [PATCH 221/629] fix: do not instantiate editor --- packages/extension-mention/src/mention.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/extension-mention/src/mention.ts b/packages/extension-mention/src/mention.ts index 02d3a297fe..a6cf8be621 100644 --- a/packages/extension-mention/src/mention.ts +++ b/packages/extension-mention/src/mention.ts @@ -1,4 +1,5 @@ -import { Editor, mergeAttributes, Node } from '@tiptap/core' +import type { Editor } from '@tiptap/core' +import { mergeAttributes, Node } from '@tiptap/core' import type { DOMOutputSpec } from '@tiptap/pm/model' import { Node as ProseMirrorNode } from '@tiptap/pm/model' import type { SuggestionOptions } from '@tiptap/suggestion' @@ -113,7 +114,7 @@ function getSuggestions(options: GetSuggestionsOptions) { return (options.options.suggestions.length ? options.options.suggestions : [options.options.suggestion]).map( suggestion => getSuggestionOptions({ - editor: options.editor ?? new Editor(), + editor: options.editor ?? (null as any), overrideSuggestionOptions: suggestion, extensionName: options.name, char: suggestion.char, From 8eb2968355e92f7b9dee38a27dd3134991c13fb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Fri, 27 Jun 2025 13:18:32 +0200 Subject: [PATCH 222/629] fix: do not render text of html as undefined if suggestion of mention is not found --- packages/extension-mention/src/mention.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/extension-mention/src/mention.ts b/packages/extension-mention/src/mention.ts index a6cf8be621..d4fb08ddd9 100644 --- a/packages/extension-mention/src/mention.ts +++ b/packages/extension-mention/src/mention.ts @@ -158,14 +158,14 @@ export const Mention = Node.create({ return { HTMLAttributes: {}, renderText({ node, suggestion }) { - return `${suggestion?.char}${node.attrs.label ?? node.attrs.id}` + return `${suggestion?.char ?? '@'}${node.attrs.label ?? node.attrs.id}` }, deleteTriggerWithBackspace: false, renderHTML({ options, node, suggestion }) { return [ 'span', mergeAttributes(this.HTMLAttributes, options.HTMLAttributes), - `${suggestion?.char}${node.attrs.label ?? node.attrs.id}`, + `${suggestion?.char ?? '@'}${node.attrs.label ?? node.attrs.id}`, ] }, suggestions: [], From 4a719fc5d24263256c0b84abe1983a2803d47e5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Fri, 27 Jun 2025 13:24:00 +0200 Subject: [PATCH 223/629] fix: explain why we suppress the typescript error --- packages/extension-mention/src/mention.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/extension-mention/src/mention.ts b/packages/extension-mention/src/mention.ts index d4fb08ddd9..0e5dadf1bb 100644 --- a/packages/extension-mention/src/mention.ts +++ b/packages/extension-mention/src/mention.ts @@ -114,7 +114,8 @@ function getSuggestions(options: GetSuggestionsOptions) { return (options.options.suggestions.length ? options.options.suggestions : [options.options.suggestion]).map( suggestion => getSuggestionOptions({ - editor: options.editor ?? (null as any), + // @ts-expect-error `editor` can be `undefined` when converting the document to HTML with the HTML utility + editor: options.editor, overrideSuggestionOptions: suggestion, extensionName: options.name, char: suggestion.char, From 1aabcb3f275e11d95d0b685eb4ae1b4d568ee3f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Fri, 27 Jun 2025 13:54:29 +0200 Subject: [PATCH 224/629] fix: do not use ts-expect-error as it crashes cypress test run --- packages/extension-mention/src/mention.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/extension-mention/src/mention.ts b/packages/extension-mention/src/mention.ts index 0e5dadf1bb..c3beb58c3d 100644 --- a/packages/extension-mention/src/mention.ts +++ b/packages/extension-mention/src/mention.ts @@ -114,7 +114,7 @@ function getSuggestions(options: GetSuggestionsOptions) { return (options.options.suggestions.length ? options.options.suggestions : [options.options.suggestion]).map( suggestion => getSuggestionOptions({ - // @ts-expect-error `editor` can be `undefined` when converting the document to HTML with the HTML utility + // @ts-ignore `editor` can be `undefined` when converting the document to HTML with the HTML utility editor: options.editor, overrideSuggestionOptions: suggestion, extensionName: options.name, From 4a421bff7c7dcff40a17121773c29a2befda6230 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Mon, 30 Jun 2025 16:46:02 +0200 Subject: [PATCH 225/629] Math extension adjustments (#6516) * fix JSdocs * update class names for invisible and math extensions * use different class name for tests * use current selection for inserting nodes * Update packages/extension-mathematics/src/extensions/InlineMath.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update packages/extension-mathematics/src/extensions/BlockMath.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * use separated comments for set and insert * update vue demo * rename default export to mathematics * WIP: migration extension * add new utilities for migration of existing content and better JSdocs * added jsdocs for mathematics extensions * fix build and jsdoc * added jsdoc for math regex * added jsdoc for math regex * added changeset * fix build for vue demo * fix tests * add katexOptions passing to node extensions * add editable class only when editor is editable * add editable class only when editor is editable * remove set commands * update demos, docs and allow custom regex on migration * fix tests, styles --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/dirty-deers-sip.md | 5 + .changeset/purple-boxes-switch.md | 5 + .changeset/real-pianos-vanish.md | 6 ++ .changeset/wise-suns-dress.md | 5 + .../InvisibleCharacters/React/index.spec.js | 2 +- .../InvisibleCharacters/Vue/index.spec.js | 2 +- .../Extensions/Mathematics/React/index.jsx | 38 ++++--- .../Mathematics/React/index.spec.js | 10 +- .../Extensions/Mathematics/React/styles.scss | 4 +- .../Extensions/Mathematics/Vue/index.spec.js | 10 +- .../src/Extensions/Mathematics/Vue/index.vue | 73 ++++++++----- .../src/plugin/style.ts | 14 +-- .../plugin/utils/create-decoration-widget.ts | 8 +- .../src/extensions/BlockMath.ts | 69 +++++++++--- .../src/extensions/InlineMath.ts | 70 +++++++++--- packages/extension-mathematics/src/index.ts | 5 +- .../extension-mathematics/src/mathematics.ts | 57 +++++++++- packages/extension-mathematics/src/types.ts | 16 ++- packages/extension-mathematics/src/utils.ts | 101 ++++++++++++++++++ 19 files changed, 397 insertions(+), 103 deletions(-) create mode 100644 .changeset/dirty-deers-sip.md create mode 100644 .changeset/purple-boxes-switch.md create mode 100644 .changeset/real-pianos-vanish.md create mode 100644 .changeset/wise-suns-dress.md create mode 100644 packages/extension-mathematics/src/utils.ts diff --git a/.changeset/dirty-deers-sip.md b/.changeset/dirty-deers-sip.md new file mode 100644 index 0000000000..2ee9634877 --- /dev/null +++ b/.changeset/dirty-deers-sip.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-mathematics': major +--- + +Change the way inserting math nodes work – now if no LaTeX string is used for both inline and block math nodes, the current text selection will be used and replaced. This should bring the extension more in line with how other extensions work. diff --git a/.changeset/purple-boxes-switch.md b/.changeset/purple-boxes-switch.md new file mode 100644 index 0000000000..6c405a7d80 --- /dev/null +++ b/.changeset/purple-boxes-switch.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-mathematics': patch +--- + +Improved JSDoc documentation and comments diff --git a/.changeset/real-pianos-vanish.md b/.changeset/real-pianos-vanish.md new file mode 100644 index 0000000000..d250505e11 --- /dev/null +++ b/.changeset/real-pianos-vanish.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-invisible-characters': major +'@tiptap/extension-mathematics': major +--- + +Updated the default class names of the invisible and mathematics plugins diff --git a/.changeset/wise-suns-dress.md b/.changeset/wise-suns-dress.md new file mode 100644 index 0000000000..65f138491d --- /dev/null +++ b/.changeset/wise-suns-dress.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-mathematics': minor +--- + +Added a new `migrateMathStrings` utility that can be used to migrate existing LaTeX math strings on an existing document into the inline math nodes` diff --git a/demos/src/Extensions/InvisibleCharacters/React/index.spec.js b/demos/src/Extensions/InvisibleCharacters/React/index.spec.js index 90283aedcc..5679a023b4 100644 --- a/demos/src/Extensions/InvisibleCharacters/React/index.spec.js +++ b/demos/src/Extensions/InvisibleCharacters/React/index.spec.js @@ -4,6 +4,6 @@ context('/src/Extensions/InvisibleCharacters/React/', () => { }) it('should have invisible characters', () => { - cy.get('[class*="Tiptap-invisible-character"]').should('exist') + cy.get('[class*="tiptap-invisible-character"]').should('exist') }) }) diff --git a/demos/src/Extensions/InvisibleCharacters/Vue/index.spec.js b/demos/src/Extensions/InvisibleCharacters/Vue/index.spec.js index 110f7b7c72..62fd21d80b 100644 --- a/demos/src/Extensions/InvisibleCharacters/Vue/index.spec.js +++ b/demos/src/Extensions/InvisibleCharacters/Vue/index.spec.js @@ -4,6 +4,6 @@ context('/src/Extensions/InvisibleCharacters/Vue/', () => { }) it('should have invisible characters', () => { - cy.get('[class*="Tiptap-invisible-character"]').should('exist') + cy.get('[class*="tiptap-invisible-character"]').should('exist') }) }) diff --git a/demos/src/Extensions/Mathematics/React/index.jsx b/demos/src/Extensions/Mathematics/React/index.jsx index 11c664a8c7..e51ce95904 100644 --- a/demos/src/Extensions/Mathematics/React/index.jsx +++ b/demos/src/Extensions/Mathematics/React/index.jsx @@ -1,7 +1,7 @@ import 'katex/dist/katex.min.css' import './styles.scss' -import Math from '@tiptap/extension-mathematics' +import Math, { migrateMathStrings } from '@tiptap/extension-mathematics' import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React, { useCallback } from 'react' @@ -13,10 +13,10 @@ export default () => { StarterKit, Math.configure({ blockOptions: { - onClick: node => { + onClick: (node, pos) => { const newCalculation = prompt('Enter new calculation:', node.attrs.latex) if (newCalculation) { - editor.chain().updateBlockMath({ latex: newCalculation }).run() + editor.chain().setNodeSelection(pos).updateBlockMath({ latex: newCalculation }).focus().run() } }, }, @@ -24,16 +24,20 @@ export default () => { onClick: node => { const newCalculation = prompt('Enter new calculation:', node.attrs.latex) if (newCalculation) { - editor.chain().updateInlineMath({ latex: newCalculation }).run() + editor.chain().setNodeSelection(node.pos).updateInlineMath({ latex: newCalculation }).focus().run() } }, }, }), ], + onCreate: ({ editor: currentEditor }) => { + migrateMathStrings(currentEditor) + }, content: `

- This editor supports math expressions. + This editor supports math expressions. And it even supports converting old $\\sub(3*5=15)$ calculations.

+

This is a old $\\LaTeX$ calculation string with $3*5=15$ calculations.

Did you know that ? Isn't that crazy? Also Pythagoras' theorem is .
Also the square root of 2 is . If you want to know more about visit katex.org. @@ -79,25 +83,33 @@ export default () => { ) const onInsertInlineMath = useCallback(() => { - const latex = prompt('Enter inline math expression:', '') - if (latex) { - editor.chain().setInlineMath({ latex }).focus().run() + const hasSelection = !editor.state.selection.empty + + if (hasSelection) { + return editor.chain().setInlineMath().focus().run() } + + const latex = prompt('Enter inline math expression:', '') + return editor.chain().insertInlineMath({ latex }).focus().run() }, [editor]) const onRemoveInlineMath = useCallback(() => { - editor.chain().unsetInlineMath().focus().run() + editor.chain().deleteInlineMath().focus().run() }, [editor]) const onInsertBlockMath = useCallback(() => { - const latex = prompt('Enter block math expression:', '') - if (latex) { - editor.chain().setBlockMath({ latex }).focus().run() + const hasSelection = !editor.state.selection.empty + + if (hasSelection) { + return editor.chain().setBlockMath().focus().run() } + + const latex = prompt('Enter block math expression:', '') + return editor.chain().insertBlockMath({ latex }).focus().run() }, [editor]) const onRemoveBlockMath = useCallback(() => { - editor.chain().unsetBlockMath().focus().run() + editor.chain().deleteBlockMath().focus().run() }, [editor]) if (!editor) { diff --git a/demos/src/Extensions/Mathematics/React/index.spec.js b/demos/src/Extensions/Mathematics/React/index.spec.js index 6e8418554f..62e2e27d95 100644 --- a/demos/src/Extensions/Mathematics/React/index.spec.js +++ b/demos/src/Extensions/Mathematics/React/index.spec.js @@ -4,12 +4,12 @@ context('/src/Extensions/Mathematics/React/', () => { }) it('should include katex-rendered inline and block nodes', () => { - cy.get('.ProseMirror').then(() => { - cy.get('.ProseMirror span[data-type="inline-math"]').should('have.length', 18) - cy.get('.ProseMirror div[data-type="block-math"]').should('have.length', 1) + cy.get('.tiptap').then(() => { + cy.get('.tiptap span[data-type="inline-math"]').should('have.length', 21) + cy.get('.tiptap div[data-type="block-math"]').should('have.length', 1) - cy.get('.ProseMirror span[data-type="inline-math"] .katex').should('have.length', 18) - cy.get('.ProseMirror div[data-type="block-math"] .katex').should('have.length', 1) + cy.get('.tiptap span[data-type="inline-math"] .katex').should('have.length', 21) + cy.get('.tiptap div[data-type="block-math"] .katex').should('have.length', 1) }) }) }) diff --git a/demos/src/Extensions/Mathematics/React/styles.scss b/demos/src/Extensions/Mathematics/React/styles.scss index d40ab3c8df..90fd4e7fab 100644 --- a/demos/src/Extensions/Mathematics/React/styles.scss +++ b/demos/src/Extensions/Mathematics/React/styles.scss @@ -5,7 +5,7 @@ } // Mathematics extension styles - .Tiptap-mathematics-render { + .tiptap-mathematics-render { padding: 0 0.25rem; &--editable { @@ -18,7 +18,7 @@ } } - .Tiptap-mathematics-render { + .tiptap-mathematics-render { border-radius: 0.25rem; &[data-type='inline-math'] { diff --git a/demos/src/Extensions/Mathematics/Vue/index.spec.js b/demos/src/Extensions/Mathematics/Vue/index.spec.js index a665166c9f..547b634943 100644 --- a/demos/src/Extensions/Mathematics/Vue/index.spec.js +++ b/demos/src/Extensions/Mathematics/Vue/index.spec.js @@ -4,12 +4,12 @@ context('/src/Extensions/Mathematics/Vue/', () => { }) it('should include katex-rendered inline and block nodes', () => { - cy.get('.ProseMirror').then(() => { - cy.get('.ProseMirror span[data-type="inline-math"]').should('have.length', 18) - cy.get('.ProseMirror div[data-type="block-math"]').should('have.length', 1) + cy.get('.tiptap').then(() => { + cy.get('.tiptap span[data-type="inline-math"]').should('have.length', 21) + cy.get('.tiptap div[data-type="block-math"]').should('have.length', 1) - cy.get('.ProseMirror span[data-type="inline-math"] .katex').should('have.length', 18) - cy.get('.ProseMirror div[data-type="block-math"] .katex').should('have.length', 1) + cy.get('.tiptap span[data-type="inline-math"] .katex').should('have.length', 21) + cy.get('.tiptap div[data-type="block-math"] .katex').should('have.length', 1) }) }) }) diff --git a/demos/src/Extensions/Mathematics/Vue/index.vue b/demos/src/Extensions/Mathematics/Vue/index.vue index 0d75809364..ecf6cec874 100644 --- a/demos/src/Extensions/Mathematics/Vue/index.vue +++ b/demos/src/Extensions/Mathematics/Vue/index.vue @@ -21,7 +21,7 @@ diff --git a/demos/src/GuideMarkViews/VueComponent/Vue/Extension.ts b/demos/src/GuideMarkViews/VueComponent/Vue/Extension.ts index ca67fcc975..210b743f1f 100644 --- a/demos/src/GuideMarkViews/VueComponent/Vue/Extension.ts +++ b/demos/src/GuideMarkViews/VueComponent/Vue/Extension.ts @@ -6,6 +6,12 @@ import Component from './Component.vue' export default Mark.create({ name: 'vueComponent', + addAttributes() { + return { + 'data-count': { default: 0 }, + } + }, + parseHTML() { return [ { diff --git a/demos/src/GuideMarkViews/VueComponent/Vue/index.spec.js b/demos/src/GuideMarkViews/VueComponent/Vue/index.spec.js index 7e129e897d..40760a1025 100644 --- a/demos/src/GuideMarkViews/VueComponent/Vue/index.spec.js +++ b/demos/src/GuideMarkViews/VueComponent/Vue/index.spec.js @@ -1,11 +1,8 @@ /// context('/src/GuideMarkViews/VueComponent/Vue/', () => { - before(() => { - cy.visit('/src/GuideMarkViews/VueComponent/Vue/') - }) - beforeEach(() => { + cy.visit('/src/GuideMarkViews/VueComponent/Vue/') cy.get('.tiptap').then(([{ editor }]) => { editor.commands.setContent('

Example Text

Mark View Text') }) @@ -17,16 +14,28 @@ context('/src/GuideMarkViews/VueComponent/Vue/', () => { }) it('should allow clicking the button', () => { + cy.get('.tiptap').find('[data-test-id="count-button"]').should('contain', 'This button has been clicked 0 times.') cy.get('.tiptap') - .find('[data-test-id="mark-view"] button') - .should('contain', 'This button has been clicked 0 times.') - cy.get('.tiptap') - .find('[data-test-id="mark-view"] button') + .find('[data-test-id="count-button"]') .click() .then(() => { cy.get('.tiptap') - .find('[data-test-id="mark-view"] button') + .find('[data-test-id="count-button"]') .should('contain', 'This button has been clicked 1 times.') }) }) + + it('should update the attributes of the mark on button click', () => { + cy.get('.tiptap').find('[data-test-id="mark-view').should('have.attr', 'data-count', '0') + + // click on the button + cy.get('.tiptap') + .find('[data-test-id="update-attributes-button"]') + .click() + .then(() => { + requestAnimationFrame(() => { + cy.get('.tiptap').find('[data-test-id="mark-view"]').should('have.attr', 'data-count', '1') + }) + }) + }) }) diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts index 25a1d958e0..0810c7b62d 100644 --- a/packages/core/src/ExtensionManager.ts +++ b/packages/core/src/ExtensionManager.ts @@ -17,7 +17,7 @@ import { sortExtensions, splitExtensions, } from './helpers/index.js' -import { type MarkConfig, type NodeConfig, type Storage, getMarkType } from './index.js' +import { type MarkConfig, type NodeConfig, type Storage, getMarkType, updateMarkViewAttributes } from './index.js' import type { InputRule } from './InputRule.js' import { inputRulesPlugin } from './InputRule.js' import { Mark } from './Mark.js' @@ -262,6 +262,9 @@ export class ExtensionManager { editor, extension, HTMLAttributes, + updateAttributes: (attrs: Record) => { + updateMarkViewAttributes(mark, editor, attrs) + }, }) } diff --git a/packages/core/src/MarkView.ts b/packages/core/src/MarkView.ts index 0ded3e027f..64f52d9311 100644 --- a/packages/core/src/MarkView.ts +++ b/packages/core/src/MarkView.ts @@ -1,9 +1,57 @@ +import type { Mark } from '@tiptap/pm/model' import type { ViewMutationRecord } from '@tiptap/pm/view' import type { Editor } from './Editor.js' import type { MarkViewProps, MarkViewRendererOptions } from './types.js' import { isAndroid, isiOS } from './utilities/index.js' +export function updateMarkViewAttributes(checkMark: Mark, editor: Editor, attrs: Record = {}): void { + const { state } = editor + const { doc, tr } = state + const thisMark = checkMark + + doc.descendants((node, pos) => { + const from = tr.mapping.map(pos) + const to = tr.mapping.map(pos) + node.nodeSize + let foundMark: Mark | null = null + + // find the mark on the current node + node.marks.forEach(mark => { + if (mark !== thisMark) { + return false + } + + foundMark = mark + }) + + if (!foundMark) { + return + } + + // check if we need to update given the attributes + let needsUpdate = false + Object.keys(attrs).forEach(k => { + if (attrs[k] !== foundMark!.attrs[k]) { + needsUpdate = true + } + }) + + if (needsUpdate) { + const updatedMark = checkMark.type.create({ + ...checkMark.attrs, + ...attrs, + }) + + tr.removeMark(from, to, checkMark.type) + tr.addMark(from, to, updatedMark) + } + }) + + if (tr.docChanged) { + editor.view.dispatch(tr) + } +} + export class MarkView { component: Component editor: Editor @@ -27,6 +75,14 @@ export class MarkView, checkMark?: Mark): void { + updateMarkViewAttributes(checkMark || this.mark, this.editor, attrs) + } + ignoreMutation(mutation: ViewMutationRecord): boolean { if (!this.dom || !this.contentDOM) { return true diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 14602c3315..be474ea4f2 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -674,9 +674,11 @@ export interface MarkViewRendererProps { * The HTML attributes that should be added to the mark's DOM element. */ HTMLAttributes: Record + + updateAttributes: (attrs: Record) => void } -export type MarkViewRenderer = (props: MarkViewRendererProps) => MarkView +export type MarkViewRenderer = (props: Props) => MarkView export interface MarkViewRendererOptions { ignoreMutation: ((props: { mutation: ViewMutationRecord }) => boolean) | null diff --git a/packages/react/src/ReactMarkViewRenderer.tsx b/packages/react/src/ReactMarkViewRenderer.tsx index ed76a0d429..75e43d26d2 100644 --- a/packages/react/src/ReactMarkViewRenderer.tsx +++ b/packages/react/src/ReactMarkViewRenderer.tsx @@ -53,7 +53,7 @@ export class ReactMarkView extends MarkView, super(component, props, options) const { as = 'span', attrs, className = '' } = options || {} - const componentProps = props satisfies MarkViewProps + const componentProps = { ...props, updateAttributes: this.updateAttributes.bind(this) } satisfies MarkViewProps this.contentDOMElement = document.createElement('span') diff --git a/packages/vue-3/src/VueMarkViewRenderer.ts b/packages/vue-3/src/VueMarkViewRenderer.ts index c07dfb2278..267a5f3e6f 100644 --- a/packages/vue-3/src/VueMarkViewRenderer.ts +++ b/packages/vue-3/src/VueMarkViewRenderer.ts @@ -2,7 +2,7 @@ import type { MarkViewProps, MarkViewRenderer, MarkViewRendererOptions } from '@tiptap/core' import { MarkView } from '@tiptap/core' import type { Component, PropType } from 'vue' -import { defineComponent, h } from 'vue' +import { defineComponent, h, toRaw } from 'vue' import type { Editor } from './Editor.js' import { VueRenderer } from './VueRenderer.js' @@ -34,6 +34,14 @@ export const markViewProps = { type: Object as PropType, required: true as const, }, + updateAttributes: { + type: Function as PropType, + required: true as const, + }, + HTMLAttributes: { + type: Object as PropType, + required: true as const, + }, } export const MarkViewContent = defineComponent({ @@ -62,10 +70,12 @@ export class VueMarkView extends MarkView constructor(component: Component, props: MarkViewProps, options?: Partial) { super(component, props, options) + const componentProps = { ...props, updateAttributes: this.updateAttributes.bind(this) } satisfies MarkViewProps + // Create extended component with provide const extendedComponent = defineComponent({ extends: { ...component }, - props: Object.keys(props), + props: Object.keys(componentProps), template: (this.component as any).template, setup: reactiveProps => { return (component as any).setup?.(reactiveProps, { @@ -80,7 +90,7 @@ export class VueMarkView extends MarkView }) this.renderer = new VueRenderer(extendedComponent, { editor: this.editor, - props, + props: componentProps, }) } @@ -92,6 +102,12 @@ export class VueMarkView extends MarkView return this.dom.querySelector('[data-mark-view-content]') as HTMLElement | null } + updateAttributes(attrs: Record): void { + // since this.mark is now an proxy, we need to get the actual mark from it + const unproxiedMark = toRaw(this.mark) + super.updateAttributes(attrs, unproxiedMark) + } + destroy() { this.renderer.destroy() } From baee94b126c24b6436ea332112301c90337c3ccf Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 8 Jul 2025 14:27:53 +0200 Subject: [PATCH 249/629] add full import paths for external storage shim (#6577) --- .changeset/angry-ladybugs-bow.md | 5 +++++ packages/react/src/EditorContent.tsx | 2 +- packages/react/src/useEditor.ts | 2 +- packages/react/src/useEditorState.ts | 2 +- 4 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 .changeset/angry-ladybugs-bow.md diff --git a/.changeset/angry-ladybugs-bow.md b/.changeset/angry-ladybugs-bow.md new file mode 100644 index 0000000000..55fd0b3205 --- /dev/null +++ b/.changeset/angry-ladybugs-bow.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': patch +--- + +Added full import path for external storage sync shim diff --git a/packages/react/src/EditorContent.tsx b/packages/react/src/EditorContent.tsx index 39f220b5c8..e0455a1635 100644 --- a/packages/react/src/EditorContent.tsx +++ b/packages/react/src/EditorContent.tsx @@ -2,7 +2,7 @@ import type { Editor } from '@tiptap/core' import type { ForwardedRef, HTMLProps, LegacyRef, MutableRefObject } from 'react' import React, { forwardRef } from 'react' import ReactDOM from 'react-dom' -import { useSyncExternalStore } from 'use-sync-external-store/shim' +import { useSyncExternalStore } from 'use-sync-external-store/shim/index.js' import type { ContentComponent, EditorWithContentComponent } from './Editor.js' import type { ReactRenderer } from './ReactRenderer.js' diff --git a/packages/react/src/useEditor.ts b/packages/react/src/useEditor.ts index 3ed528d2d7..00add11ffe 100644 --- a/packages/react/src/useEditor.ts +++ b/packages/react/src/useEditor.ts @@ -1,7 +1,7 @@ import { type EditorOptions, Editor } from '@tiptap/core' import type { DependencyList, MutableRefObject } from 'react' import { useDebugValue, useEffect, useRef, useState } from 'react' -import { useSyncExternalStore } from 'use-sync-external-store/shim' +import { useSyncExternalStore } from 'use-sync-external-store/shim/index.js' import { useEditorState } from './useEditorState.js' diff --git a/packages/react/src/useEditorState.ts b/packages/react/src/useEditorState.ts index 567b8286cd..d46d5cb528 100644 --- a/packages/react/src/useEditorState.ts +++ b/packages/react/src/useEditorState.ts @@ -1,7 +1,7 @@ import type { Editor } from '@tiptap/core' import deepEqual from 'fast-deep-equal/es6/react.js' import { useDebugValue, useEffect, useLayoutEffect, useState } from 'react' -import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector' +import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector.js' const useIsomorphicLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect From 27dd14bb36c22b109081aef6fee4967526097127 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 9 Jul 2025 12:07:29 +0200 Subject: [PATCH 250/629] make toggleLink attributes optional (#6539) * make toggleLink attributes optional * add changeset --- .changeset/two-carrots-leave.md | 5 +++++ packages/extension-link/src/link.ts | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .changeset/two-carrots-leave.md diff --git a/.changeset/two-carrots-leave.md b/.changeset/two-carrots-leave.md new file mode 100644 index 0000000000..1dd62d7fa3 --- /dev/null +++ b/.changeset/two-carrots-leave.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-link': patch +--- + +Made attributes for `toggleLink` optional diff --git a/packages/extension-link/src/link.ts b/packages/extension-link/src/link.ts index 4450f816bb..ed94baff6a 100644 --- a/packages/extension-link/src/link.ts +++ b/packages/extension-link/src/link.ts @@ -141,7 +141,7 @@ declare module '@tiptap/core' { * @param attributes The link attributes * @example editor.commands.toggleLink({ href: 'https://tiptap.dev' }) */ - toggleLink: (attributes: { + toggleLink: (attributes?: { href: string target?: string | null rel?: string | null @@ -318,9 +318,10 @@ export const Link = Mark.create({ toggleLink: attributes => ({ chain }) => { - const { href } = attributes + const { href } = attributes || {} if ( + href && !this.options.isAllowedUri(href, { defaultValidate: url => !!isAllowedUri(url, this.options.protocols), protocols: this.options.protocols, From 1a88826e71297fbd54af37ba3f445aaaf12c2360 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 9 Jul 2025 12:28:52 +0200 Subject: [PATCH 251/629] require happy-dom in html and remove async behavior for server imports (#6587) * require happy-dom in html and remove async behavior for server imports * improve grammar * remove unnecessary comment --- .changeset/eighty-cats-dream.md | 5 +++ packages/html/package.json | 3 +- packages/html/src/server/generateHTML.ts | 2 +- packages/html/src/server/generateJSON.ts | 38 +++++++------------ .../html/src/server/getHTMLFromFragment.ts | 36 +++++++----------- 5 files changed, 35 insertions(+), 49 deletions(-) create mode 100644 .changeset/eighty-cats-dream.md diff --git a/.changeset/eighty-cats-dream.md b/.changeset/eighty-cats-dream.md new file mode 100644 index 0000000000..21f1fa1130 --- /dev/null +++ b/.changeset/eighty-cats-dream.md @@ -0,0 +1,5 @@ +--- +'@tiptap/html': major +--- + +The server-import for `@tiptap/html` will now require `happy-dom` to be installed so it can avoid asynchronous behavior diff --git a/packages/html/package.json b/packages/html/package.json index e31d19879c..a008d87293 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -45,7 +45,8 @@ }, "peerDependencies": { "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/pm": "workspace:*", + "happy-dom": "^18.0.1" }, "repository": { "type": "git", diff --git a/packages/html/src/server/generateHTML.ts b/packages/html/src/server/generateHTML.ts index 7912a56895..90655ad667 100644 --- a/packages/html/src/server/generateHTML.ts +++ b/packages/html/src/server/generateHTML.ts @@ -16,7 +16,7 @@ import { getHTMLFromFragment } from './getHTMLFromFragment.js' * console.log(html) * ``` */ -export async function generateHTML(doc: JSONContent, extensions: Extensions): Promise { +export function generateHTML(doc: JSONContent, extensions: Extensions): string { if (typeof window !== 'undefined') { throw new Error( 'generateHTML can only be used in a Node environment\nIf you want to use this in a browser environment, use the `@tiptap/html` import instead.', diff --git a/packages/html/src/server/generateJSON.ts b/packages/html/src/server/generateJSON.ts index 88d83b4acc..8f0fc58ff7 100644 --- a/packages/html/src/server/generateJSON.ts +++ b/packages/html/src/server/generateJSON.ts @@ -1,6 +1,7 @@ import type { Extensions } from '@tiptap/core' import { getSchema } from '@tiptap/core' import { type ParseOptions, DOMParser as PMDOMParser } from '@tiptap/pm/model' +import { Window } from 'happy-dom' /** * Generates a JSON object from the given HTML string and converts it into a Prosemirror node with content. @@ -15,38 +16,27 @@ import { type ParseOptions, DOMParser as PMDOMParser } from '@tiptap/pm/model' * const json = generateJSON(html, extensions) * console.log(json) // { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, world!' }] }] } */ -export async function generateJSON( - html: string, - extensions: Extensions, - options?: ParseOptions, -): Promise> { +export function generateJSON(html: string, extensions: Extensions, options?: ParseOptions): Record { if (typeof window !== 'undefined') { throw new Error( 'generateJSON can only be used in a Node environment\nIf you want to use this in a browser environment, use the `@tiptap/html` import instead.', ) } - try { - const { Window } = await import('happy-dom') + const localWindow = new Window() + const localDOMParser = new localWindow.DOMParser() - const localWindow = new Window() - const localDOMParser = new localWindow.DOMParser() + const schema = getSchema(extensions) + let doc: ReturnType | null = null - const schema = getSchema(extensions) - let doc: ReturnType | null = null + const htmlString = `${html}` + doc = localDOMParser.parseFromString(htmlString, 'text/html') - const htmlString = `${html}` - doc = localDOMParser.parseFromString(htmlString, 'text/html') - - if (!doc) { - throw new Error('Failed to parse HTML string') - } - - return PMDOMParser.fromSchema(schema) - .parse(doc.body as unknown as Node, options) - .toJSON() - } catch (e) { - console.error(e) - throw new Error('[generateJSON]: Could not import happy-dom. Please ensure it is installed.') + if (!doc) { + throw new Error('Failed to parse HTML string') } + + return PMDOMParser.fromSchema(schema) + .parse(doc.body as unknown as Node, options) + .toJSON() } diff --git a/packages/html/src/server/getHTMLFromFragment.ts b/packages/html/src/server/getHTMLFromFragment.ts index 40b12997f2..5c320c0ec5 100644 --- a/packages/html/src/server/getHTMLFromFragment.ts +++ b/packages/html/src/server/getHTMLFromFragment.ts @@ -1,5 +1,6 @@ import type { Node, Schema } from '@tiptap/pm/model' import { DOMSerializer } from '@tiptap/pm/model' +import { Window } from 'happy-dom' /** * Returns the HTML string representation of a given document node. @@ -14,32 +15,21 @@ import { DOMSerializer } from '@tiptap/pm/model' * const html = getHTMLFromFragment(doc, schema) * ``` */ -export async function getHTMLFromFragment( - doc: Node, - schema: Schema, - options?: { document?: Document }, -): Promise { - try { - const { Window } = await import('happy-dom') +export function getHTMLFromFragment(doc: Node, schema: Schema, options?: { document?: Document }): string { + if (options?.document) { + const wrap = options.document.createElement('div') - if (options?.document) { - const wrap = options.document.createElement('div') - - DOMSerializer.fromSchema(schema).serializeFragment(doc.content, { document: options.document }, wrap) - return wrap.innerHTML - } + DOMSerializer.fromSchema(schema).serializeFragment(doc.content, { document: options.document }, wrap) + return wrap.innerHTML + } - // Use happy-dom-without-node for serialization. - const localWindow = new Window() + const localWindow = new Window() - const fragment = DOMSerializer.fromSchema(schema).serializeFragment(doc.content, { - document: localWindow.document as unknown as Document, - }) + const fragment = DOMSerializer.fromSchema(schema).serializeFragment(doc.content, { + document: localWindow.document as unknown as Document, + }) - const serializer = new localWindow.XMLSerializer() + const serializer = new localWindow.XMLSerializer() - return serializer.serializeToString(fragment as any) - } catch { - throw new Error('[getHTMLFromFragment]: Could not import happy-dom. Please ensure it is installed.') - } + return serializer.serializeToString(fragment as any) } From d78bfe0dc78738b15557dd32845df0bf98651859 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 9 Jul 2025 12:36:54 +0200 Subject: [PATCH 252/629] chore(release): publish a new pre-release version (beta) (#6579) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 4 +++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 +++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 10 ++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 9 ++++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 12 +++++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 10 ++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 9 ++++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 140 files changed, 612 insertions(+), 72 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 66d1520410..947f4571cf 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -77,6 +77,7 @@ "@tiptap/extension-unique-id": "3.0.0-beta.7" }, "changesets": [ + "angry-ladybugs-bow", "beige-llamas-shout", "big-wolves-design", "blue-shrimps-rush", @@ -94,6 +95,7 @@ "dirty-deers-sip", "dry-monkeys-learn", "early-guests-melt", + "eighty-cats-dream", "eighty-gifts-matter", "fair-jars-shout", "fast-foxes-mate", @@ -147,6 +149,7 @@ "stale-ties-press", "swift-dolphins-think", "tall-needles-fail", + "tall-singers-peel", "tame-worms-applaud", "thick-buckets-cross", "thirty-rockets-act", @@ -154,6 +157,7 @@ "tiny-tomatoes-hope", "twelve-peas-smile", "twenty-moose-invent", + "two-carrots-leave", "weak-books-eat", "wet-rice-suffer", "wise-berries-hide", diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index bc0d789453..d56fe02d83 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index b1aaa981ac..5994d984cf 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 875f27b5ac..acbe520d48 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index e3bb3e44d5..1b99ff966f 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index f0a490e613..f504cdb130 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index ca641389a2..a189d451f9 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.25" + "@tiptap/extensions": "3.0.0-beta.26" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.25" + "@tiptap/extensions": "3.0.0-beta.26" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 8cbc6512f6..212ef7cc8e 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index e1b92625a9..50bfb0e813 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index a0e38a6a19..f33a758d3d 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 9c36703b16..d36a8e0d15 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 451c275d3d..d12b3aa749 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 43d460875d..0cd6578f91 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index d55465ac0f..aa2fd07704 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 33ea4c0644..f6aa338283 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 9985e0b8f9..2a0e89c47c 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index ce87273bc1..3534475c96 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index acd6627a89..60a7f94ae4 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 9bb50dfe5a..428c8b07b9 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 940037be13..889a6dc32b 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index f85445d0f0..47cc560233 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index ad12692bf3..1a1237db5e 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 89cbacb359..737e9f8dfb 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 2e9f9ddc65..3d2721bdf7 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index fd6f6a28b9..548fbafd2d 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index bddcd3d5b4..2849072f1b 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 6d6eb9e580..6fb60f6b87 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index cfb2644e9e..b6bb4131b6 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- 5ba480b: Added `updateAttributes` to MarkView and its renderers to allow updating MarkView attributes + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index d749eb13dc..e224d6f4c6 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 909e264804..532aa2c11b 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index db5ec9d0db..f9103e12e6 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 1054348fb1..54122c936e 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index b1a374d721..d0e38be207 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 4a2c52fc9b..7b17adfcc7 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index f5a339e03a..9d60030c5a 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 34106c5201..9c618a8063 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 91b944a594..07b2380a39 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index a70d1f9f4d..54faf34353 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/extension-code-block@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index e5db283f40..ff16156216 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index a99d232703..a1d3011049 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 2970cc4dd6..5b766e9581 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index bada982676..09b563380e 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index a5a959c44d..41dd42af41 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 51125a7b2b..9c4da67709 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index aa492e6a36..de4fa94427 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index fd3f8e466c..7b4f3d0748 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index add7653e47..59260c0021 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 46ee9aa97c..b08b5ded66 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index d71e2d09c4..2d528874c3 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 786e3080a2..44928779f8 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/extension-text-style@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 8a5378efb0..00c9f42930 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 27b1028626..9b904e422f 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index dae15ad9dd..06af98a3c6 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index cb7786858a..029f6a6097 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-react +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [baee94b] +- Updated dependencies [5ba480b] + - @tiptap/react@3.0.0-beta.26 + - @tiptap/extension-drag-handle@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 3c4d0e2b9e..9308c45b52 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 56b57eeade..7d0f93895c 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.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.26 +- @tiptap/vue-2@3.0.0-beta.26 +- @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 96376e1f71..bd5deef2a9 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 5d0aec7cfb..3101611dd5 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/vue-3@3.0.0-beta.26 + - @tiptap/extension-drag-handle@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index a808b1ed25..be481f5cc1 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 0962211c78..098328e011 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/extension-collaboration@3.0.0-beta.26 + - @tiptap/extension-node-range@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 52ee8f5697..9f2f6f2a05 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 944e9428fa..bf102fe4e7 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/suggestion@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 7e2545e446..b77ec81676 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 5442492f7b..56bcf60acc 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/extension-text-style@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 4c5d18fb5e..f7068b415c 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 115b38dcd4..074ebb0851 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 708783b169..9ef46a9891 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index ab75528894..1f1050a797 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index e714f5d725..9eeabe5348 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 98b2a62e58..00f1f71cad 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index e666268825..02a5214266 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 286beaf373..33f352b4a0 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 90504a5e68..2c16c56593 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 3431c42a36..1326cf9e25 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 425baa0370..9abb8a3592 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 30c5bc5f18..55823297f9 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 754ec02534..8517c764d8 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index b592653c11..22939cd7aa 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index f71e928e2b..82eb7091f1 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 13b481176d..6325413882 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/extension-text-style@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 00ac74d3aa..0285441ccb 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 09ffb55b80..8b09062734 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index c24c681ab0..08b24fa1aa 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 04037ed74b..c291764ddb 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- 27dd14b: Made attributes for `toggleLink` optional +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 1c62ce2935..08453a91a1 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 348fcae39a..4b949bba78 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 715923b2ed..ddba198322 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 3258c52dc4..983337019c 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 4b0074c2e1..0f47f42c6a 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 845a4a2e77..aece769e62 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/suggestion@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index a3776ee5be..62bd9759a1 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index f4467753ef..63fa553dc5 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index bb259120a0..d62ae17df2 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 2bbe6bd862..c15c6269df 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 5ffe7bbb6e..dd1db37ed3 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 18f335f7af..07440c47fb 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index a84f11e1ca..e1972f054d 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 9bb73685f5..be9d81d5d9 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 1418b4403a..38ebd07139 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index d62b8c670d..87c4866743 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index e63c9905e9..ca0e0a0cbb 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index e50da0a103..033bbb02db 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index f544f1f016..e6ecf02535 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index a190138664..963516d27d 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.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index fab1c920c1..08d8b8be7a 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 1983dd1f7e..fcde6c3454 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 9119d457c1..f7f1f69712 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index f4ab36f7d4..7b376f8011 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 3195912ecf..ba37e84d95 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 93398f4d46..ac2b47aab0 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 4ce428d849..0ca83e9863 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index c1fe8b3baa..b96b2db23d 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 964a0fcfa1..98571aeb2d 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 81596e477d..fda5d7e44d 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 063b2ca21a..452a158e52 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 3d43026b3c..71c8cea2cd 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 23fa83d3e2..6adfb1d232 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index fac1216018..86c9615266 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 31f3d0d815..d6f396c2de 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 59af7cffb0..66bc42db9e 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 086c67fdc7..90cdaa3b98 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 785f7be114..fa44454a64 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 6b74eafd13..02f3fbc026 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 20cdbb07f2..6486986083 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.0.0-beta.26 + +### Major Changes + +- 1a88826: The server-import for `@tiptap/html` will now require `happy-dom` to be installed so it can avoid asynchronous behavior + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index a008d87293..1b2e830898 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index d4ecf8bcf3..8b41984b47 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-beta.26 + ## 3.0.0-beta.25 ## 3.0.0-beta.24 diff --git a/packages/pm/package.json b/packages/pm/package.json index c7ba26c9e4..e9d1e2ec0a 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 99d8cf1c33..0146f15a20 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- baee94b: Added full import path for external storage sync shim +- 5ba480b: Added `updateAttributes` to MarkView and its renderers to allow updating MarkView attributes +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 7b55c034fa..034fe763ae 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 942363e065..213709ed2b 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] +- Updated dependencies [27dd14b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/extension-link@3.0.0-beta.26 + - @tiptap/extension-blockquote@3.0.0-beta.26 + - @tiptap/extension-bold@3.0.0-beta.26 + - @tiptap/extension-code@3.0.0-beta.26 + - @tiptap/extension-code-block@3.0.0-beta.26 + - @tiptap/extension-document@3.0.0-beta.26 + - @tiptap/extension-hard-break@3.0.0-beta.26 + - @tiptap/extension-heading@3.0.0-beta.26 + - @tiptap/extension-horizontal-rule@3.0.0-beta.26 + - @tiptap/extension-italic@3.0.0-beta.26 + - @tiptap/extension-list@3.0.0-beta.26 + - @tiptap/extension-paragraph@3.0.0-beta.26 + - @tiptap/extension-strike@3.0.0-beta.26 + - @tiptap/extension-text@3.0.0-beta.26 + - @tiptap/extension-underline@3.0.0-beta.26 + - @tiptap/extensions@3.0.0-beta.26 + - @tiptap/extension-list-item@3.0.0-beta.26 + - @tiptap/extension-list-keymap@3.0.0-beta.26 + - @tiptap/extension-bullet-list@3.0.0-beta.26 + - @tiptap/extension-ordered-list@3.0.0-beta.26 + - @tiptap/extension-dropcursor@3.0.0-beta.26 + - @tiptap/extension-gapcursor@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 6f88f095e3..9edbd194aa 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index ca92479b6c..ddbb208708 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 3edad089c1..711195ffdd 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 4d6c5c22d9..27dec3a8bf 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index b9c2bfa93a..245908c299 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 7ceb880799..9aac1acd53 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index c7483d00d3..966a8394de 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 7c59312143..c88c8e0fd6 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.26 + +### Patch Changes + +- 5ba480b: Added `updateAttributes` to MarkView and its renderers to allow updating MarkView attributes +- Updated dependencies [5ba480b] + - @tiptap/core@3.0.0-beta.26 + - @tiptap/pm@3.0.0-beta.26 + ## 3.0.0-beta.25 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 10b23aad7d..8a3741e24d 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.25", + "version": "3.0.0-beta.26", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a30d3d2272..d7dcb7356d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -340,7 +340,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.25 + specifier: 3.0.0-beta.26 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From 275b58686cfdfdce1bf84878b371d18996b978d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Thu, 10 Jul 2025 16:37:52 +0200 Subject: [PATCH 253/629] Mark prosemirror-dev-toolkit library as an external module (#6596) * fix: mark prosemirror-dev-toolkit as an external module * chore: changeset --- .changeset/gorgeous-buses-fly.md | 5 +++++ packages/core/tsup.config.ts | 1 + 2 files changed, 6 insertions(+) create mode 100644 .changeset/gorgeous-buses-fly.md diff --git a/.changeset/gorgeous-buses-fly.md b/.changeset/gorgeous-buses-fly.md new file mode 100644 index 0000000000..94758cf4ac --- /dev/null +++ b/.changeset/gorgeous-buses-fly.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Mark prosemirror-dev-toolkit dependency as an external module because otherwise the minified code is not compatible with turbopack diff --git a/packages/core/tsup.config.ts b/packages/core/tsup.config.ts index 820659d52e..3624ff79dd 100644 --- a/packages/core/tsup.config.ts +++ b/packages/core/tsup.config.ts @@ -9,6 +9,7 @@ export default defineConfig([ clean: true, sourcemap: true, format: ['esm', 'cjs'], + external: ['prosemirror-dev-toolkit'], }, { entry: ['src/jsx-runtime.ts'], From ce47182f5296295ee64402cb0487ef990a879c47 Mon Sep 17 00:00:00 2001 From: Aslam Date: Thu, 10 Jul 2025 17:45:27 +0200 Subject: [PATCH 254/629] chore: remove decoration on dragging (#6590) * chore: remove decoration on dragging * Update .changeset/floppy-hotels-itch.md Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/floppy-hotels-itch.md | 5 +++++ packages/extensions/src/selection/selection.ts | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 .changeset/floppy-hotels-itch.md diff --git a/.changeset/floppy-hotels-itch.md b/.changeset/floppy-hotels-itch.md new file mode 100644 index 0000000000..2fcb9c58f1 --- /dev/null +++ b/.changeset/floppy-hotels-itch.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extensions': major +--- + +Remove selection decoration when editor is on dragging mode diff --git a/packages/extensions/src/selection/selection.ts b/packages/extensions/src/selection/selection.ts index 376971729a..dfe6473f86 100644 --- a/packages/extensions/src/selection/selection.ts +++ b/packages/extensions/src/selection/selection.ts @@ -32,7 +32,13 @@ export const Selection = Extension.create({ key: new PluginKey('selection'), props: { decorations(state) { - if (state.selection.empty || editor.isFocused || !editor.isEditable || isNodeSelection(state.selection)) { + if ( + state.selection.empty || + editor.isFocused || + !editor.isEditable || + isNodeSelection(state.selection) || + editor.view.dragging + ) { return null } From 412e1bdd6cf7f435e01e529db3935cd6d427bffc Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 10 Jul 2025 17:45:41 +0200 Subject: [PATCH 255/629] Drop Devtools Support (#6599) * Revert "Mark prosemirror-dev-toolkit library as an external module (#6596)" This reverts commit 275b58686cfdfdce1bf84878b371d18996b978d1. * remove enableDevTools option --- .changeset/gorgeous-buses-fly.md | 5 --- .changeset/many-trainers-yawn.md | 5 +++ .changeset/silly-hats-doubt.md | 5 --- packages/core/package.json | 3 +- packages/core/src/Editor.ts | 43 ------------------ packages/core/src/types.ts | 12 ----- packages/core/tsup.config.ts | 1 - pnpm-lock.yaml | 77 -------------------------------- 8 files changed, 6 insertions(+), 145 deletions(-) delete mode 100644 .changeset/gorgeous-buses-fly.md create mode 100644 .changeset/many-trainers-yawn.md delete mode 100644 .changeset/silly-hats-doubt.md diff --git a/.changeset/gorgeous-buses-fly.md b/.changeset/gorgeous-buses-fly.md deleted file mode 100644 index 94758cf4ac..0000000000 --- a/.changeset/gorgeous-buses-fly.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Mark prosemirror-dev-toolkit dependency as an external module because otherwise the minified code is not compatible with turbopack diff --git a/.changeset/many-trainers-yawn.md b/.changeset/many-trainers-yawn.md new file mode 100644 index 0000000000..db6a1b34da --- /dev/null +++ b/.changeset/many-trainers-yawn.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': minor +--- + +Remove enableDevTools option diff --git a/.changeset/silly-hats-doubt.md b/.changeset/silly-hats-doubt.md deleted file mode 100644 index c7d155ebd8..0000000000 --- a/.changeset/silly-hats-doubt.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': minor ---- - -Added lazy-loaded ProseMirror Devtools integration which can be enabled via the new editor option `enableDevTools: true` diff --git a/packages/core/package.json b/packages/core/package.json index e224d6f4c6..630c81d480 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -52,8 +52,7 @@ "jsx-dev-runtime" ], "devDependencies": { - "@tiptap/pm": "workspace:*", - "prosemirror-dev-toolkit": "^1.1.8" + "@tiptap/pm": "workspace:*" }, "peerDependencies": { "@tiptap/pm": "workspace:*" diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 7599792111..592b4858d9 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -92,7 +92,6 @@ export class Editor extends EventEmitter { enablePasteRules: true, enableCoreExtensions: true, enableContentCheck: false, - enableDevTools: false, emitContentError: false, onBeforeCreate: () => null, onCreate: () => null, @@ -187,43 +186,6 @@ export class Editor extends EventEmitter { this.css = null } - /** - * - * @returns - */ - /** - * Applies ProseMirror dev tools to the editor instance if enabled and running in a browser environment. - * - * This method dynamically imports the `prosemirror-dev-toolkit` package and applies it to the current - * editor view. If the dev tools are not installed, a warning is logged to the console. - * - * @private - * @remarks - * - Dev tools are only applied if `this.options.enableDevTools` is `true` and the code is running in a browser. - * - If the editor view is not available, the dev tools are not applied. - * - If the `prosemirror-dev-toolkit` package is missing, a warning is shown in the console. - * - * @returns {void} - */ - private applyDevTools(): void { - if (typeof window === 'undefined' || !this.options.enableDevTools) { - return - } - - import('prosemirror-dev-toolkit') - .then(({ applyDevTools }) => { - if (!this.editorView) { - return - } - - applyDevTools(this.editorView) - }) - .catch(() => { - console.warn('[Tiptap warning]: Devtools are enabled but `prosemirror-dev-toolkit` is not installed.') - console.warn("Install 'prosemirror-dev-toolkit' as a dev dependency to use the dev tools.") - }) - } - /** * Returns the editor storage. */ @@ -527,11 +489,6 @@ export class Editor extends EventEmitter { state: this.editorState, }) - // Apply dev tools if enabled - if (this.options.enableDevTools) { - this.applyDevTools() - } - // `editor.view` is not yet available at this time. // Therefore we will add all plugins and node views directly afterwards. const newState = this.state.reconfigure({ diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index be474ea4f2..d63181b48c 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -363,18 +363,6 @@ export interface EditorOptions { * @default false */ emitContentError: boolean - /** - * Enable a lazy-loaded Prosemirror DevTools integration. - * - * Requires having the `prosemirror-dev-toolkit` npm package installed. - * @type boolean - * @default false - * @example - * ```js - * enableDevTools: true - * ``` - */ - enableDevTools: boolean /** * Called before the editor is constructed. */ diff --git a/packages/core/tsup.config.ts b/packages/core/tsup.config.ts index 3624ff79dd..820659d52e 100644 --- a/packages/core/tsup.config.ts +++ b/packages/core/tsup.config.ts @@ -9,7 +9,6 @@ export default defineConfig([ clean: true, sourcemap: true, format: ['esm', 'cjs'], - external: ['prosemirror-dev-toolkit'], }, { entry: ['src/jsx-runtime.ts'], diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d7dcb7356d..0c2c09e324 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -408,9 +408,6 @@ importers: '@tiptap/pm': specifier: workspace:* version: link:../pm - prosemirror-dev-toolkit: - specifier: ^1.1.8 - version: 1.1.8(svelte@4.2.19) packages/extension-blockquote: devDependencies: @@ -3773,10 +3770,6 @@ packages: concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - concat-stream@1.6.2: - resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} - engines: {'0': node >= 0.8} - confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} @@ -4886,10 +4879,6 @@ packages: html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} - html@1.0.0: - resolution: {integrity: sha512-lw/7YsdKiP3kk5PnR1INY17iJuzdAtJewxr14ozKJWbbR97znovZ0mh+WEMZ8rjc3lgTK+ID/htTjuyGKB52Kw==} - hasBin: true - htmlparser2@7.2.0: resolution: {integrity: sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==} @@ -5160,9 +5149,6 @@ packages: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} - isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} @@ -5968,9 +5954,6 @@ packages: resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} engines: {node: '>=6'} - process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - process@0.11.10: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} engines: {node: '>= 0.6.0'} @@ -5987,9 +5970,6 @@ packages: prosemirror-commands@1.6.2: resolution: {integrity: sha512-0nDHH++qcf/BuPLYvmqZTUUsPJUCPBUXt0J1ErTcDIS369CTp773itzLGIgIXG4LJXOlwYCr44+Mh4ii6MP1QA==} - prosemirror-dev-toolkit@1.1.8: - resolution: {integrity: sha512-Qi549XA+DqU5cCkn/xv+M53gy1sQbyOTjiOfiG7Gjq5gm6ZxLilGN04UITWTAYx9kzLBi7Y9RJmvmWB4xiRauA==} - prosemirror-dropcursor@1.8.1: resolution: {integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==} @@ -6123,9 +6103,6 @@ packages: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} - readable-stream@2.3.8: - resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} - readable-stream@3.6.2: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} engines: {node: '>= 6'} @@ -6476,9 +6453,6 @@ packages: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} engines: {node: '>= 0.4'} - string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} @@ -6543,11 +6517,6 @@ packages: peerDependencies: svelte: ^3.19.0 || ^4.0.0 - svelte-tree-view@1.4.2: - resolution: {integrity: sha512-z3yQq+/4CceyefVj03t9BG9AiZ7syovmRRo96aj8V65d1FsRS/BL2AxzcD4vl5GJg7o9qbz2mWWJzyFWENISCQ==} - peerDependencies: - svelte: '>=3' - svelte@4.2.19: resolution: {integrity: sha512-IY1rnGr6izd10B0A8LqsBfmlT5OILVuZ7XsI0vdGPEvuonFV7NYEUK4dAkm9Zg2q0Um92kYjTpS1CAP3Nh/KWw==} engines: {node: '>=16'} @@ -6786,9 +6755,6 @@ packages: resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} engines: {node: '>= 0.4'} - typedarray@0.0.6: - resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - typescript@5.7.3: resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} engines: {node: '>=14.17'} @@ -10175,13 +10141,6 @@ snapshots: concat-map@0.0.1: {} - concat-stream@1.6.2: - dependencies: - buffer-from: 1.1.2 - inherits: 2.0.4 - readable-stream: 2.3.8 - typedarray: 0.0.6 - confbox@0.1.8: {} confusing-browser-globals@1.0.11: {} @@ -11500,10 +11459,6 @@ snapshots: html-void-elements@3.0.0: {} - html@1.0.0: - dependencies: - concat-stream: 1.6.2 - htmlparser2@7.2.0: dependencies: domelementtype: 2.3.0 @@ -11777,8 +11732,6 @@ snapshots: is-windows@1.0.2: {} - isarray@1.0.0: {} - isarray@2.0.5: {} isbinaryfile@5.0.4: {} @@ -12559,8 +12512,6 @@ snapshots: prismjs@1.29.0: {} - process-nextick-args@2.0.1: {} - process@0.11.10: {} property-information@6.5.0: {} @@ -12579,14 +12530,6 @@ snapshots: prosemirror-state: 1.4.3 prosemirror-transform: 1.10.2 - prosemirror-dev-toolkit@1.1.8(svelte@4.2.19): - dependencies: - html: 1.0.0 - prosemirror-model: 1.24.1 - svelte-tree-view: 1.4.2(svelte@4.2.19) - transitivePeerDependencies: - - svelte - prosemirror-dropcursor@1.8.1: dependencies: prosemirror-state: 1.4.3 @@ -12765,16 +12708,6 @@ snapshots: pify: 4.0.1 strip-bom: 3.0.0 - readable-stream@2.3.8: - dependencies: - core-util-is: 1.0.2 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 - readable-stream@3.6.2: dependencies: inherits: 2.0.4 @@ -13212,10 +13145,6 @@ snapshots: define-properties: 1.2.1 es-object-atoms: 1.1.1 - string_decoder@1.1.1: - dependencies: - safe-buffer: 5.1.2 - string_decoder@1.3.0: dependencies: safe-buffer: 5.2.1 @@ -13275,10 +13204,6 @@ snapshots: dependencies: svelte: 4.2.19 - svelte-tree-view@1.4.2(svelte@4.2.19): - dependencies: - svelte: 4.2.19 - svelte@4.2.19: dependencies: '@ampproject/remapping': 2.3.0 @@ -13544,8 +13469,6 @@ snapshots: possible-typed-array-names: 1.0.0 reflect.getprototypeof: 1.0.10 - typedarray@0.0.6: {} - typescript@5.7.3: {} uc.micro@2.1.0: {} From b54c59457e2232aad2f8a2d71e5297d84b164bfd Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 10 Jul 2025 17:52:01 +0200 Subject: [PATCH 256/629] chore(release): publish a new pre-release version (beta) (#6597) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 3 +- .../extension-character-count/CHANGELOG.md | 7 +++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 7 +++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 7 +++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 7 +++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 7 +++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 7 +++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 10 ++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 12 +++++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 140 files changed, 612 insertions(+), 73 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 947f4571cf..8166eda993 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -100,6 +100,7 @@ "fair-jars-shout", "fast-foxes-mate", "five-rules-pull", + "floppy-hotels-itch", "fresh-ads-nail", "fresh-geckos-exercise", "gold-ads-own", @@ -114,6 +115,7 @@ "lazy-needles-train", "lucky-bears-exercise", "many-laws-vanish", + "many-trainers-yawn", "modern-kangaroos-teach", "moody-geckos-sort", "moody-insects-guess", @@ -137,7 +139,6 @@ "shiny-days-rhyme", "shiny-impalas-remember", "shiny-rats-wash", - "silly-hats-doubt", "silly-plants-sin", "silver-roses-joke", "sixty-news-ring", diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index d56fe02d83..66ef4e4a9f 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [ce47182] + - @tiptap/extensions@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 5994d984cf..072a14126c 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index acbe520d48..9666fe8a93 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [ce47182] + - @tiptap/extensions@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 1b99ff966f..46315485ca 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index f504cdb130..4dad6d826e 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [ce47182] + - @tiptap/extensions@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index a189d451f9..374ffa1ed0 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.26" + "@tiptap/extensions": "3.0.0-beta.27" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.26" + "@tiptap/extensions": "3.0.0-beta.27" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 212ef7cc8e..5639c0a50f 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [ce47182] + - @tiptap/extensions@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 50bfb0e813..a0e274c339 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index f33a758d3d..82e1e077da 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [ce47182] + - @tiptap/extensions@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index d36a8e0d15..934ef1e282 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index d12b3aa749..bfecb15471 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 0cd6578f91..de23453c6d 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index aa2fd07704..4a90c5998c 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index f6aa338283..12680f7a14 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 2a0e89c47c..6e74c89fff 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [ce47182] + - @tiptap/extensions@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 3534475c96..e6f2989c41 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 60a7f94ae4..29e1a2b790 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 428c8b07b9..0d2765f1c9 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 889a6dc32b..0a16ed2ba5 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 47cc560233..37cf2218a3 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 1a1237db5e..1e2cf9fee1 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 737e9f8dfb..ed580e5232 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 3d2721bdf7..eabc00ba92 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 548fbafd2d..664daad083 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 2849072f1b..1562429a4e 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 6fb60f6b87..834fe7cf6b 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index b6bb4131b6..a20dfc0697 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.0.0-beta.27 + +### Minor Changes + +- 412e1bd: Remove enableDevTools option + +### Patch Changes + +- @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 630c81d480..4858a29add 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 532aa2c11b..e1b53c5978 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index f9103e12e6..b671b92b8f 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 54122c936e..1289e2085f 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index d0e38be207..9da2220eb1 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 7b17adfcc7..b2ae0921b1 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 9d60030c5a..2c4fccbb37 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 9c618a8063..7437f1d230 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 07b2380a39..3bfc6bef6b 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 54faf34353..d89780f5b1 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/extension-code-block@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index ff16156216..42aa0c3a0c 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index a1d3011049..eebb74939f 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 5b766e9581..8ea9253181 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 09b563380e..117ac4f299 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 41dd42af41..2343f01086 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 9c4da67709..ebbec098c8 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index de4fa94427..7f06ad68b7 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 7b4f3d0748..47a6a55b90 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 59260c0021..a3d717cab8 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index b08b5ded66..80f1ffa642 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 2d528874c3..bf638dd061 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 44928779f8..9ec0d8cf7e 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/extension-text-style@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 00c9f42930..4dc9754c7f 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 9b904e422f..6fa4f70fb0 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 06af98a3c6..a84cda215f 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 029f6a6097..f4a3a34bda 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.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.27 +- @tiptap/react@3.0.0-beta.27 +- @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 9308c45b52..50eaaaabbe 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 7d0f93895c..dc391ec9df 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.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.27 +- @tiptap/vue-2@3.0.0-beta.27 +- @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index bd5deef2a9..e10ec13507 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 3101611dd5..3de4c1659a 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.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.27 +- @tiptap/vue-3@3.0.0-beta.27 +- @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index be481f5cc1..5cc16299c6 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 098328e011..3e73d8ee55 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/extension-collaboration@3.0.0-beta.27 + - @tiptap/extension-node-range@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 9f2f6f2a05..22f0da0dad 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index bf102fe4e7..ed9610b1b5 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/suggestion@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index b77ec81676..7feed9dd55 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 56bcf60acc..117d578833 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/extension-text-style@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index f7068b415c..d36f78905e 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 074ebb0851..a9222daa26 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 9ef46a9891..f55be3cab7 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 1f1050a797..3a6fbc8506 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 9eeabe5348..066001d004 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 00f1f71cad..449269e6d3 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 02a5214266..b2178cbb1e 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 33f352b4a0..d238fa4e6e 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 2c16c56593..23f45f1866 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 1326cf9e25..b8c03f6101 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 9abb8a3592..5b007dde94 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 55823297f9..41da70007f 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 8517c764d8..ec0bd0aacf 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 22939cd7aa..38f95450e3 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 82eb7091f1..f15c5e7708 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 6325413882..4adf3fec01 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/extension-text-style@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 0285441ccb..4ba14587bd 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 8b09062734..1a07825dff 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 08b24fa1aa..f524091b6e 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index c291764ddb..4d552af4a4 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 08453a91a1..1e26d7e1b3 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 4b949bba78..9f26179ff2 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index ddba198322..d89c60626b 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 983337019c..1b64d77f6b 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 0f47f42c6a..92e40e55fd 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index aece769e62..c4c9db5733 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/suggestion@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 62bd9759a1..094ddb4b27 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 63fa553dc5..34513eba6b 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index d62ae17df2..473f7ccf99 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index c15c6269df..c09e43ecda 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index dd1db37ed3..d5de33c489 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 07440c47fb..da835807e5 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index e1972f054d..4a5bacc5a1 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index be9d81d5d9..a359e28219 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 38ebd07139..eccc228203 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 87c4866743..65590bb090 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index ca0e0a0cbb..01da80d862 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 033bbb02db..7040548e4d 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index e6ecf02535..8c4bb87d91 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 963516d27d..b61dfee8da 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.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 08d8b8be7a..7b6389e6fa 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index fcde6c3454..7dea8db82a 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index f7f1f69712..4cbdd6dd92 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 7b376f8011..ead70111ad 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index ba37e84d95..1bbc8774d5 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index ac2b47aab0..9c9dc21198 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 0ca83e9863..66e1e80642 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index b96b2db23d..4949eec066 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 98571aeb2d..29f54564bf 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index fda5d7e44d..77e6b0776c 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 452a158e52..691386d5fb 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 71c8cea2cd..4f6690b15a 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 6adfb1d232..b021242739 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 86c9615266..c739e39ad1 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index d6f396c2de..cbe046df68 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 66bc42db9e..173bec4e75 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 90cdaa3b98..4f1bd15da3 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index fa44454a64..473ab9bf60 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.0.0-beta.27 + +### Major Changes + +- ce47182: Remove selection decoration when editor is on dragging mode + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 02f3fbc026..01f99b294a 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 6486986083..1df82b2d4c 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Major Changes diff --git a/packages/html/package.json b/packages/html/package.json index 1b2e830898..869fd8a548 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 8b41984b47..07daad5fe0 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-beta.27 + ## 3.0.0-beta.26 ## 3.0.0-beta.25 diff --git a/packages/pm/package.json b/packages/pm/package.json index e9d1e2ec0a..08c531aa9d 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 0146f15a20..6e426fa25b 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 034fe763ae..7faadd1438 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 213709ed2b..bb40456582 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [ce47182] +- Updated dependencies [412e1bd] + - @tiptap/extensions@3.0.0-beta.27 + - @tiptap/core@3.0.0-beta.27 + - @tiptap/extension-dropcursor@3.0.0-beta.27 + - @tiptap/extension-gapcursor@3.0.0-beta.27 + - @tiptap/extension-blockquote@3.0.0-beta.27 + - @tiptap/extension-bold@3.0.0-beta.27 + - @tiptap/extension-code@3.0.0-beta.27 + - @tiptap/extension-code-block@3.0.0-beta.27 + - @tiptap/extension-document@3.0.0-beta.27 + - @tiptap/extension-hard-break@3.0.0-beta.27 + - @tiptap/extension-heading@3.0.0-beta.27 + - @tiptap/extension-horizontal-rule@3.0.0-beta.27 + - @tiptap/extension-italic@3.0.0-beta.27 + - @tiptap/extension-link@3.0.0-beta.27 + - @tiptap/extension-list@3.0.0-beta.27 + - @tiptap/extension-paragraph@3.0.0-beta.27 + - @tiptap/extension-strike@3.0.0-beta.27 + - @tiptap/extension-text@3.0.0-beta.27 + - @tiptap/extension-underline@3.0.0-beta.27 + - @tiptap/extension-list-item@3.0.0-beta.27 + - @tiptap/extension-list-keymap@3.0.0-beta.27 + - @tiptap/extension-bullet-list@3.0.0-beta.27 + - @tiptap/extension-ordered-list@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 9edbd194aa..c44d6573b0 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index ddbb208708..98548943b4 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 711195ffdd..f7a3858bd7 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 27dec3a8bf..cccbf27e5c 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 245908c299..78bb377386 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 9aac1acd53..e783744c44 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 966a8394de..436c2fe69e 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index c88c8e0fd6..3c5d24ea9a 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.27 + +### Patch Changes + +- Updated dependencies [412e1bd] + - @tiptap/core@3.0.0-beta.27 + - @tiptap/pm@3.0.0-beta.27 + ## 3.0.0-beta.26 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 8a3741e24d..9f7b421a30 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.26", + "version": "3.0.0-beta.27", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0c2c09e324..94b1802639 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -340,7 +340,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.26 + specifier: 3.0.0-beta.27 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From de0504e404ad71ad77399653bec9a4e616c3e1f6 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 10 Jul 2025 19:04:39 +0200 Subject: [PATCH 257/629] Bdbch/fix nodeview render target (#6600) * fix the react node views render target location * changeset --- .changeset/silver-adults-fold.md | 5 +++++ packages/react/src/ReactNodeViewRenderer.tsx | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 .changeset/silver-adults-fold.md diff --git a/.changeset/silver-adults-fold.md b/.changeset/silver-adults-fold.md new file mode 100644 index 0000000000..e53f547484 --- /dev/null +++ b/.changeset/silver-adults-fold.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': patch +--- + +attach the contentDOM to the correct position inside a react node view diff --git a/packages/react/src/ReactNodeViewRenderer.tsx b/packages/react/src/ReactNodeViewRenderer.tsx index 7bea3621cc..19680575b5 100644 --- a/packages/react/src/ReactNodeViewRenderer.tsx +++ b/packages/react/src/ReactNodeViewRenderer.tsx @@ -85,7 +85,13 @@ export class ReactNodeView< // See: https://github.com/ueberdosis/tiptap/issues/1197 this.contentDOMElement.style.whiteSpace = 'inherit' - this.dom.appendChild(this.contentDOMElement) + const contentTarget = this.dom.querySelector('[data-node-view-content]') + + if (!contentTarget) { + return + } + + contentTarget.appendChild(this.contentDOMElement) } } From 38352e5ce57c9f9981aa2c54cedc8119e9fcb795 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 10 Jul 2025 19:05:43 +0200 Subject: [PATCH 258/629] chore(release): publish a new pre-release version (beta) (#6601) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 1 + .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 140 files changed, 551 insertions(+), 72 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 8166eda993..5cf1dfaae6 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -140,6 +140,7 @@ "shiny-impalas-remember", "shiny-rats-wash", "silly-plants-sin", + "silver-adults-fold", "silver-roses-joke", "sixty-news-ring", "slow-mails-vanish", diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 66ef4e4a9f..7e07b81ae1 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 072a14126c..c1361cc7ee 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 9666fe8a93..9b84c96ea2 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 46315485ca..790cc8103f 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 4dad6d826e..571e808fc4 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 374ffa1ed0..848730d824 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.27" + "@tiptap/extensions": "3.0.0-beta.28" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.27" + "@tiptap/extensions": "3.0.0-beta.28" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 5639c0a50f..6d5601aa52 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index a0e274c339..1d17f6a29f 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 82e1e077da..6bd76270a6 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 934ef1e282..d038682c2b 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index bfecb15471..6fe18d9f71 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index de23453c6d..b58641fde2 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 4a90c5998c..7c979ae3f6 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 12680f7a14..fa939e35d7 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 6e74c89fff..d5bd5f723a 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index e6f2989c41..fcea5707fc 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 29e1a2b790..d11a686211 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 0d2765f1c9..8e47a554bc 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 0a16ed2ba5..82222be9d2 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 37cf2218a3..e4f15ddd01 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 1e2cf9fee1..94202b392c 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index ed580e5232..e567786a01 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index eabc00ba92..737246ab70 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 664daad083..8d41b0899b 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 1562429a4e..38adf1c72c 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 834fe7cf6b..fbf58e8304 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index a20dfc0697..f9b5540cad 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 4858a29add..b9c9d804ae 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index e1b53c5978..84c42c38b3 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index b671b92b8f..61babca597 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 1289e2085f..8aff5089d0 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 9da2220eb1..2639409b72 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index b2ae0921b1..f7614c37cb 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 2c4fccbb37..e79bc98180 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 7437f1d230..f2a71b899c 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 3bfc6bef6b..9c07dcaab0 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index d89780f5b1..86f2f59e9b 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/extension-code-block@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 42aa0c3a0c..8403921d6e 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index eebb74939f..7bc90ba884 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 8ea9253181..d95d8d152e 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 117ac4f299..2bf0e94e4e 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 2343f01086..d94b577775 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index ebbec098c8..9906d87f64 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 7f06ad68b7..7e24a996ab 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 47a6a55b90..5a6d081b8a 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index a3d717cab8..4ed4898b77 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 80f1ffa642..e274420ddc 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index bf638dd061..e2014826f8 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 9ec0d8cf7e..f2e7ccff13 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/extension-text-style@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 4dc9754c7f..9de2f8927e 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 6fa4f70fb0..caadc91127 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index a84cda215f..21026d8cb9 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index f4a3a34bda..de1f21fa98 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.0.0-beta.28 + +### Patch Changes + +- Updated dependencies [de0504e] + - @tiptap/react@3.0.0-beta.28 + - @tiptap/extension-drag-handle@3.0.0-beta.28 + - @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 50eaaaabbe..89ef65b185 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index dc391ec9df..bb90e02714 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.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 +- @tiptap/vue-2@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index e10ec13507..46e4cbb910 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 3de4c1659a..897e29b709 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.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 +- @tiptap/vue-3@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 5cc16299c6..0f2d84dac7 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 3e73d8ee55..ded20c742b 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/extension-collaboration@3.0.0-beta.28 +- @tiptap/extension-node-range@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 22f0da0dad..11ab6c09f8 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index ed9610b1b5..9a0a009792 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 +- @tiptap/suggestion@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 7feed9dd55..a28b6587d8 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 117d578833..66e050770d 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/extension-text-style@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index d36f78905e..ab59ac5730 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index a9222daa26..9d2928fd97 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index f55be3cab7..1033222b9b 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 3a6fbc8506..9bd19cca31 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 066001d004..67d102b581 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 449269e6d3..b4fe4ed9a0 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index b2178cbb1e..d14cbbf65e 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index d238fa4e6e..dc11a4fbcf 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 23f45f1866..94f65c508e 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index b8c03f6101..6f09c76b36 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 5b007dde94..02b24d79cf 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 41da70007f..af67d76afd 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index ec0bd0aacf..b1fdd7e07c 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 38f95450e3..43868b789e 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index f15c5e7708..6c298fc45e 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 4adf3fec01..bde1225d8f 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/extension-text-style@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 4ba14587bd..e6e9afa93d 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 1a07825dff..5c4ee87192 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index f524091b6e..ffd998afdd 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 4d552af4a4..1fe62aecd6 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 1e26d7e1b3..4cf484e354 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 9f26179ff2..05ad148a3f 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index d89c60626b..3c2cf34c1d 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 1b64d77f6b..9514d450ca 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 92e40e55fd..4b1aca307f 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index c4c9db5733..82db096b29 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 +- @tiptap/suggestion@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 094ddb4b27..3fa0a7cbbb 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 34513eba6b..fa02da01ea 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 473f7ccf99..94efe3cea7 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index c09e43ecda..c2e84ddc37 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index d5de33c489..82f80ae0e3 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index da835807e5..accf8c214f 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 4a5bacc5a1..2f94041945 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index a359e28219..02679ae6f8 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index eccc228203..c18eaaf97b 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 65590bb090..58f67c39ed 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 01da80d862..3ae1a822ef 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 7040548e4d..c65ba7a356 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 8c4bb87d91..7393baf6ea 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index b61dfee8da..6d5e4c0a9e 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 7b6389e6fa..502c366add 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 7dea8db82a..b585f376d5 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 4cbdd6dd92..9208a7cf7d 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index ead70111ad..f08e447519 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 1bbc8774d5..a02172acf9 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 9c9dc21198..c30eaf9b6d 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 66e1e80642..ca356b8a3e 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 4949eec066..e93686fec0 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 29f54564bf..b00054cff7 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 77e6b0776c..ff7f50b396 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 691386d5fb..efb84158ab 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 4f6690b15a..515e99b86f 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index b021242739..6088df8307 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index c739e39ad1..9e57014757 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index cbe046df68..2f19d317a3 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 173bec4e75..ed8333ee1f 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 4f1bd15da3..dde53a6862 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 473ab9bf60..17b52c1304 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Major Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 01f99b294a..9799c1e2fb 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 1df82b2d4c..22b051355e 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 869fd8a548..715befb312 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 07daad5fe0..0e218b473a 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-beta.28 + ## 3.0.0-beta.27 ## 3.0.0-beta.26 diff --git a/packages/pm/package.json b/packages/pm/package.json index 08c531aa9d..3ef9401807 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 6e426fa25b..83f2533d8b 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- de0504e: attach the contentDOM to the correct position inside a react node view + - @tiptap/core@3.0.0-beta.28 + - @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 7faadd1438..9030931c77 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index bb40456582..e5c4b84119 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.0.0-beta.28 +- @tiptap/extension-gapcursor@3.0.0-beta.28 +- @tiptap/extension-list-item@3.0.0-beta.28 +- @tiptap/extension-list-keymap@3.0.0-beta.28 +- @tiptap/core@3.0.0-beta.28 +- @tiptap/extension-blockquote@3.0.0-beta.28 +- @tiptap/extension-bold@3.0.0-beta.28 +- @tiptap/extension-bullet-list@3.0.0-beta.28 +- @tiptap/extension-code@3.0.0-beta.28 +- @tiptap/extension-code-block@3.0.0-beta.28 +- @tiptap/extension-document@3.0.0-beta.28 +- @tiptap/extension-hard-break@3.0.0-beta.28 +- @tiptap/extension-heading@3.0.0-beta.28 +- @tiptap/extension-horizontal-rule@3.0.0-beta.28 +- @tiptap/extension-italic@3.0.0-beta.28 +- @tiptap/extension-link@3.0.0-beta.28 +- @tiptap/extension-list@3.0.0-beta.28 +- @tiptap/extension-ordered-list@3.0.0-beta.28 +- @tiptap/extension-paragraph@3.0.0-beta.28 +- @tiptap/extension-strike@3.0.0-beta.28 +- @tiptap/extension-text@3.0.0-beta.28 +- @tiptap/extension-underline@3.0.0-beta.28 +- @tiptap/extensions@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index c44d6573b0..c87a7d047d 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 98548943b4..d0461e7847 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index f7a3858bd7..a1d99dfeb2 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index cccbf27e5c..a83be95bf3 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 78bb377386..5a31f08c1d 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index e783744c44..2f4f9a1de9 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 436c2fe69e..a3cc255f3a 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 3c5d24ea9a..65c62313c5 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.28 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.28 +- @tiptap/pm@3.0.0-beta.28 + ## 3.0.0-beta.27 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 9f7b421a30..1026a98653 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.27", + "version": "3.0.0-beta.28", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 94b1802639..fcc5eca653 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -340,7 +340,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.27 + specifier: 3.0.0-beta.28 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From 952623fe2a810ac9b41575434b365b283cda5b72 Mon Sep 17 00:00:00 2001 From: Aslam Date: Fri, 11 Jul 2025 11:03:53 +0200 Subject: [PATCH 259/629] chore(drag-handle): add keyboard support dismissal popup (#6595) * chore(drag-handle): add keyboard support dismissal popup * chore: change changeset desc and only keydown if editor is focus --- .changeset/sweet-ravens-pay.md | 5 +++++ .../src/drag-handle-plugin.ts | 16 ++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 .changeset/sweet-ravens-pay.md diff --git a/.changeset/sweet-ravens-pay.md b/.changeset/sweet-ravens-pay.md new file mode 100644 index 0000000000..6788044b65 --- /dev/null +++ b/.changeset/sweet-ravens-pay.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-drag-handle': minor +--- + +Added logic to hide drag handle during typing to reduce visual clutter diff --git a/packages/extension-drag-handle/src/drag-handle-plugin.ts b/packages/extension-drag-handle/src/drag-handle-plugin.ts index 8fe09680eb..2c209e7703 100644 --- a/packages/extension-drag-handle/src/drag-handle-plugin.ts +++ b/packages/extension-drag-handle/src/drag-handle-plugin.ts @@ -287,6 +287,22 @@ export const DragHandlePlugin = ({ props: { handleDOMEvents: { + keydown(view) { + if (!element || locked) { + return false + } + + if (view.hasFocus()) { + hideHandle() + currentNode = null + currentNodePos = -1 + onNodeChange?.({ editor, node: null, pos: -1 }) + + return true + } + + return false + }, mouseleave(_view, e) { // Do not hide open popup on mouseleave. if (locked) { From 746ed3a73582b8a7e15f335c3ccedba8b0bb5847 Mon Sep 17 00:00:00 2001 From: Aslam Date: Fri, 11 Jul 2025 11:17:03 +0200 Subject: [PATCH 260/629] chore(emoji): extend Tiptap Storage with emoji state (#6593) * chore: add missing emoji type * chore: extend Tiptap Storage with emoji state * chore: change from major to patch --- .changeset/funny-teams-guess.md | 5 +++++ packages/extension-emoji/src/emoji.ts | 4 ++++ 2 files changed, 9 insertions(+) create mode 100644 .changeset/funny-teams-guess.md diff --git a/.changeset/funny-teams-guess.md b/.changeset/funny-teams-guess.md new file mode 100644 index 0000000000..1f99ea1118 --- /dev/null +++ b/.changeset/funny-teams-guess.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-emoji': patch +--- + +Added `emoji` field to Tiptap storage interface \ No newline at end of file diff --git a/packages/extension-emoji/src/emoji.ts b/packages/extension-emoji/src/emoji.ts index 6473d5ee1a..33e80e3920 100644 --- a/packages/extension-emoji/src/emoji.ts +++ b/packages/extension-emoji/src/emoji.ts @@ -30,6 +30,10 @@ declare module '@tiptap/core' { setEmoji: (shortcode: string) => ReturnType } } + + interface Storage { + emoji: EmojiStorage + } } export type EmojiItem = { From a80e62f6539b4644b35e58e7510ba78809b61b32 Mon Sep 17 00:00:00 2001 From: Aslam Date: Fri, 11 Jul 2025 11:23:18 +0200 Subject: [PATCH 261/629] feat: enhance suggestion plugin with decoration content and empty state styling (#6583) * chore(suggestion): support empty query class and content in decorations * add changeset * chore: update default note value to empty string * chore: change changeset and update decoration content desc --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/clear-poets-occur.md | 5 +++++ packages/suggestion/src/suggestion.ts | 28 +++++++++++++++++++++++++-- 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 .changeset/clear-poets-occur.md diff --git a/.changeset/clear-poets-occur.md b/.changeset/clear-poets-occur.md new file mode 100644 index 0000000000..f46d6a7a5b --- /dev/null +++ b/.changeset/clear-poets-occur.md @@ -0,0 +1,5 @@ +--- +'@tiptap/suggestion': minor +--- + +Added support for empty query messages via decorations diff --git a/packages/suggestion/src/suggestion.ts b/packages/suggestion/src/suggestion.ts index 2862b20c73..6ba5b5114d 100644 --- a/packages/suggestion/src/suggestion.ts +++ b/packages/suggestion/src/suggestion.ts @@ -68,6 +68,20 @@ export interface SuggestionOptions { */ decorationClass?: string + /** + * Creates a decoration with the provided content. + * @param decorationContent - The content to display in the decoration + * @default "" - Creates an empty decoration if no content provided + */ + decorationContent?: string + + /** + * The class name of the decoration node when it is empty. + * @default 'is-empty' + * @example 'is-empty' + */ + decorationEmptyClass?: string + /** * A function that is called when a suggestion is selected. * @param props The props object. @@ -180,6 +194,8 @@ export function Suggestion({ startOfLine = false, decorationTag = 'span', decorationClass = 'suggestion', + decorationContent = '', + decorationEmptyClass = 'is-empty', command = () => null, items = () => [], render = () => ({}), @@ -383,17 +399,25 @@ export function Suggestion({ // Setup decorator on the currently active suggestion. decorations(state) { - const { active, range, decorationId } = plugin.getState(state) + const { active, range, decorationId, query } = plugin.getState(state) if (!active) { return null } + const isEmpty = !query?.length + const classNames = [decorationClass] + + if (isEmpty) { + classNames.push(decorationEmptyClass) + } + return DecorationSet.create(state.doc, [ Decoration.inline(range.from, range.to, { nodeName: decorationTag, - class: decorationClass, + class: classNames.join(' '), 'data-decoration-id': decorationId, + 'data-decoration-content': decorationContent, }), ]) }, From ced913d61cfdfa67bf6e94e61ef5a1857c9cfe5e Mon Sep 17 00:00:00 2001 From: Aslam Date: Fri, 11 Jul 2025 11:47:00 +0200 Subject: [PATCH 262/629] feat(link): add enableClickSelection option and Escape key support for link selection (#6594) * feat(link): add enableClickSelection option and Escape key support for link selection * add changeset * chore: remove keydownhandler and use extendMarkRange instead --- .changeset/smooth-swans-exist.md | 5 +++++ packages/extension-link/src/helpers/clickHandler.ts | 7 +++++++ packages/extension-link/src/link.ts | 9 +++++++++ 3 files changed, 21 insertions(+) create mode 100644 .changeset/smooth-swans-exist.md diff --git a/.changeset/smooth-swans-exist.md b/.changeset/smooth-swans-exist.md new file mode 100644 index 0000000000..629fcab88b --- /dev/null +++ b/.changeset/smooth-swans-exist.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-link': minor +--- + +Add enableClickSelection option to clickHandler plugin to support selection link on click. Also add optional Escape key behaviour to clear selection and move the cursor to the end of the link. diff --git a/packages/extension-link/src/helpers/clickHandler.ts b/packages/extension-link/src/helpers/clickHandler.ts index d2cfd4c945..974f32801f 100644 --- a/packages/extension-link/src/helpers/clickHandler.ts +++ b/packages/extension-link/src/helpers/clickHandler.ts @@ -1,9 +1,12 @@ +import type { Editor } from '@tiptap/core' import { getAttributes } from '@tiptap/core' import type { MarkType } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' type ClickHandlerOptions = { type: MarkType + editor: Editor + enableClickSelection?: boolean } export function clickHandler(options: ClickHandlerOptions): Plugin { @@ -42,6 +45,10 @@ export function clickHandler(options: ClickHandlerOptions): Plugin { const href = link?.href ?? attrs.href const target = link?.target ?? attrs.target + if (options.enableClickSelection) { + options.editor.commands.extendMarkRange(options.type.name) + } + if (link && href) { window.open(href, target) diff --git a/packages/extension-link/src/link.ts b/packages/extension-link/src/link.ts index ed94baff6a..aa25cd4153 100644 --- a/packages/extension-link/src/link.ts +++ b/packages/extension-link/src/link.ts @@ -59,6 +59,12 @@ export interface LinkOptions { * @example false */ openOnClick: boolean | DeprecatedOpenWhenNotEditable + /** + * If enabled, the link will be selected when clicked. + * @default false + * @example true + */ + enableClickSelection: boolean /** * Adds a link to the current selection if the pasted content only contains an url. * @default true @@ -220,6 +226,7 @@ export const Link = Mark.create({ addOptions() { return { openOnClick: true, + enableClickSelection: false, linkOnPaste: true, autolink: true, protocols: [], @@ -412,6 +419,8 @@ export const Link = Mark.create({ plugins.push( clickHandler({ type: this.type, + editor: this.editor, + enableClickSelection: this.options.enableClickSelection, }), ) } From 6d2315a806f063f584e94ceddd1ae5cebe188d0b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 11 Jul 2025 11:54:15 +0200 Subject: [PATCH 263/629] chore(release): publish a new pre-release version (beta) (#6608) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 4 +++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 13 ++++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 10 +++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 11 +++++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 11 +++++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 140 files changed, 571 insertions(+), 72 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 5cf1dfaae6..9fc74c248d 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -84,6 +84,7 @@ "chilled-candles-design", "chilled-trees-agree", "chilly-lemons-remember", + "clear-poets-occur", "clever-bags-end", "cool-bananas-breathe", "cool-singers-call", @@ -103,6 +104,7 @@ "floppy-hotels-itch", "fresh-ads-nail", "fresh-geckos-exercise", + "funny-teams-guess", "gold-ads-own", "good-trainers-train", "great-terms-jam", @@ -146,9 +148,11 @@ "slow-mails-vanish", "small-otters-bake", "smooth-carrots-beam", + "smooth-swans-exist", "spicy-horses-smoke", "spotty-cobras-shake", "stale-ties-press", + "sweet-ravens-pay", "swift-dolphins-think", "tall-needles-fail", "tall-singers-peel", diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 7e07b81ae1..9f3ad78f76 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index c1361cc7ee..3ba80d82d3 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 9b84c96ea2..ffa5b81f55 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 790cc8103f..8c64c629a5 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 571e808fc4..e1fd6acdad 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 848730d824..0d3c6e0069 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.28" + "@tiptap/extensions": "3.0.0-beta.29" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.28" + "@tiptap/extensions": "3.0.0-beta.29" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 6d5601aa52..44a51547e5 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 1d17f6a29f..4cf4727005 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 6bd76270a6..01be14b184 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index d038682c2b..7fd9a20374 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 6fe18d9f71..66d4a47205 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index b58641fde2..7939155f88 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 7c979ae3f6..1127fdb935 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index fa939e35d7..1a79215ee5 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index d5bd5f723a..05b3d45f48 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index fcea5707fc..e04b41d97f 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index d11a686211..333ea8f317 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 8e47a554bc..32124348a2 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 82222be9d2..291fc25606 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index e4f15ddd01..1edc8b8251 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 94202b392c..b594f21255 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index e567786a01..0f9e4c0c1c 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 737246ab70..6c73e16b2d 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 8d41b0899b..d5a9c02686 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 38adf1c72c..2185cbc8c9 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index fbf58e8304..9acd5b8a0d 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index f9b5540cad..bb77a1eb94 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index b9c9d804ae..6bd853607f 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 84c42c38b3..940cf0f50a 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 61babca597..3ad76dd2df 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 8aff5089d0..76503f6a3d 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 2639409b72..6351124321 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index f7614c37cb..d07ad94199 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index e79bc98180..6779f1875b 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index f2a71b899c..fa1232a73a 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 9c07dcaab0..487d2b0787 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 86f2f59e9b..7eff355b2c 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/extension-code-block@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 8403921d6e..bbf8a275cf 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 7bc90ba884..b1bc17c642 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index d95d8d152e..53de22d56f 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 2bf0e94e4e..7703d9006b 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index d94b577775..dae37401db 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 9906d87f64..5edc701c63 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 7e24a996ab..be473a9197 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 5a6d081b8a..3793fad9f4 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 4ed4898b77..d127dc3605 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index e274420ddc..90d2250bd8 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index e2014826f8..669eb6ac4a 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index f2e7ccff13..c9c70285ee 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/extension-text-style@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 9de2f8927e..9ddbf993bd 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index caadc91127..ab695b7d2e 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 21026d8cb9..7a1155e95e 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index de1f21fa98..723e7318fa 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.0.0-beta.29 + +### Patch Changes + +- Updated dependencies [952623f] + - @tiptap/extension-drag-handle@3.0.0-beta.29 + - @tiptap/pm@3.0.0-beta.29 + - @tiptap/react@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 89ef65b185..d85f03a675 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index bb90e02714..a45ee8f93d 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.0.0-beta.29 + +### Patch Changes + +- Updated dependencies [952623f] + - @tiptap/extension-drag-handle@3.0.0-beta.29 + - @tiptap/pm@3.0.0-beta.29 + - @tiptap/vue-2@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 46e4cbb910..1febe88a6c 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 897e29b709..ce0b3e9f21 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.0.0-beta.29 + +### Patch Changes + +- Updated dependencies [952623f] + - @tiptap/extension-drag-handle@3.0.0-beta.29 + - @tiptap/pm@3.0.0-beta.29 + - @tiptap/vue-3@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 0f2d84dac7..88c376fd76 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index ded20c742b..54ad7582ae 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,18 @@ # @tiptap/extension-drag-handle +## 3.0.0-beta.29 + +### Minor Changes + +- 952623f: Added logic to hide drag handle during typing to reduce visual clutter + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/extension-collaboration@3.0.0-beta.29 +- @tiptap/extension-node-range@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 11ab6c09f8..281ca0b06a 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 9a0a009792..b37fb7a606 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-emoji +## 3.0.0-beta.29 + +### Patch Changes + +- 746ed3a: Added `emoji` field to Tiptap storage interface +- Updated dependencies [a80e62f] + - @tiptap/suggestion@3.0.0-beta.29 + - @tiptap/core@3.0.0-beta.29 + - @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index a28b6587d8..49e4760ca7 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 66e050770d..f52d208ac8 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/extension-text-style@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index ab59ac5730..d332c245b2 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 9d2928fd97..e3dd9c4637 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 1033222b9b..f67d015711 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 9bd19cca31..eab500ccd0 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 67d102b581..4ff84b4fa6 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index b4fe4ed9a0..3183e59ba5 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index d14cbbf65e..9d1e7a1709 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index dc11a4fbcf..2b9467a627 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 94f65c508e..26ff2b17ac 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 6f09c76b36..914f5e43b6 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 02b24d79cf..de3647e35b 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index af67d76afd..01a54542bc 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index b1fdd7e07c..3ae2c20a14 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 43868b789e..e9a0e229fa 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 6c298fc45e..5984ecc30d 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index bde1225d8f..e47f0ba35e 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/extension-text-style@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index e6e9afa93d..2c5e40d797 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 5c4ee87192..a712b94753 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index ffd998afdd..49e0074683 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 1fe62aecd6..6c2a67316d 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.0.0-beta.29 + +### Minor Changes + +- ced913d: Add enableClickSelection option to clickHandler plugin to support selection link on click. Also add optional Escape key behaviour to clear selection and move the cursor to the end of the link. + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 4cf484e354..240a80bd41 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 05ad148a3f..f550b77ebb 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 3c2cf34c1d..3e197d5308 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 9514d450ca..564841835c 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 4b1aca307f..d691281bbd 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 82db096b29..41cb9bfd58 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- Updated dependencies [a80e62f] + - @tiptap/suggestion@3.0.0-beta.29 + - @tiptap/core@3.0.0-beta.29 + - @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 3fa0a7cbbb..082ddbece7 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index fa02da01ea..a73e14c8eb 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 94efe3cea7..6207ad91e2 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index c2e84ddc37..ff2fbe4dda 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 82f80ae0e3..1af0a4483c 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index accf8c214f..9ccd28b253 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 2f94041945..340ee8d848 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 02679ae6f8..fef715892b 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index c18eaaf97b..b1fa586b4a 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 58f67c39ed..704fe58da2 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 3ae1a822ef..41abe8861c 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index c65ba7a356..8272b163fd 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 7393baf6ea..0c44b2bda1 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 6d5e4c0a9e..87fb379780 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 502c366add..8b9f0bed51 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index b585f376d5..1c454c13b0 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 9208a7cf7d..2ae100c972 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index f08e447519..7eaea03146 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index a02172acf9..71ee8cf586 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index c30eaf9b6d..2acf9e459f 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index ca356b8a3e..8488702f0d 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index e93686fec0..6ea55a3f11 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index b00054cff7..4e5982a22f 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index ff7f50b396..d3c294833c 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index efb84158ab..d2f0889599 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 515e99b86f..d2a8e9981c 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 6088df8307..c7254dec65 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 9e57014757..d14a189a20 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 2f19d317a3..c0ce68ef1b 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index ed8333ee1f..f411fc81e0 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index dde53a6862..b84fdf543e 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 17b52c1304..a149c44d8e 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 9799c1e2fb..74219f2b96 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 22b051355e..61dbd4c172 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 715befb312..def9591572 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 0e218b473a..0b59caa618 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-beta.29 + ## 3.0.0-beta.28 ## 3.0.0-beta.27 diff --git a/packages/pm/package.json b/packages/pm/package.json index 3ef9401807..20cc36987c 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 83f2533d8b..69cc2bbde9 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 9030931c77..e4723387f0 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index e5c4b84119..77c3fa4718 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- Updated dependencies [ced913d] + - @tiptap/extension-link@3.0.0-beta.29 + - @tiptap/extension-dropcursor@3.0.0-beta.29 + - @tiptap/extension-gapcursor@3.0.0-beta.29 + - @tiptap/extension-list-item@3.0.0-beta.29 + - @tiptap/extension-list-keymap@3.0.0-beta.29 + - @tiptap/core@3.0.0-beta.29 + - @tiptap/extension-blockquote@3.0.0-beta.29 + - @tiptap/extension-bold@3.0.0-beta.29 + - @tiptap/extension-bullet-list@3.0.0-beta.29 + - @tiptap/extension-code@3.0.0-beta.29 + - @tiptap/extension-code-block@3.0.0-beta.29 + - @tiptap/extension-document@3.0.0-beta.29 + - @tiptap/extension-hard-break@3.0.0-beta.29 + - @tiptap/extension-heading@3.0.0-beta.29 + - @tiptap/extension-horizontal-rule@3.0.0-beta.29 + - @tiptap/extension-italic@3.0.0-beta.29 + - @tiptap/extension-list@3.0.0-beta.29 + - @tiptap/extension-ordered-list@3.0.0-beta.29 + - @tiptap/extension-paragraph@3.0.0-beta.29 + - @tiptap/extension-strike@3.0.0-beta.29 + - @tiptap/extension-text@3.0.0-beta.29 + - @tiptap/extension-underline@3.0.0-beta.29 + - @tiptap/extensions@3.0.0-beta.29 + - @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index c87a7d047d..2f3bbcb740 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index d0461e7847..2379b666c7 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index a1d99dfeb2..dde77bc9f8 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index a83be95bf3..359c6d6f44 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.0.0-beta.29 + +### Minor Changes + +- a80e62f: Added support for empty query messages via decorations + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 5a31f08c1d..d7fcd1ad8f 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 2f4f9a1de9..eacc66f508 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index a3cc255f3a..3f5ce8a67e 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 65c62313c5..08b2feed36 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.29 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.29 +- @tiptap/pm@3.0.0-beta.29 + ## 3.0.0-beta.28 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 1026a98653..d7b14b8abf 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.28", + "version": "3.0.0-beta.29", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fcc5eca653..7884909ae7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -340,7 +340,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.28 + specifier: 3.0.0-beta.29 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From b1b489405688fc519c087e66826ea631d3e92e77 Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Fri, 11 Jul 2025 12:12:22 +0200 Subject: [PATCH 264/629] update package.json --- codemods/tiptap-2-migrate-imports/package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/codemods/tiptap-2-migrate-imports/package.json b/codemods/tiptap-2-migrate-imports/package.json index c9f2510346..c52c763caf 100644 --- a/codemods/tiptap-2-migrate-imports/package.json +++ b/codemods/tiptap-2-migrate-imports/package.json @@ -19,6 +19,5 @@ ".codemodrc.json", "/dist/index.cjs" ], - "type": "module", - "author": "nperez0111" + "type": "module" } From 1c5f1efedefd462d229fe6c6a4916f4306fac1b9 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 11 Jul 2025 14:48:31 +0200 Subject: [PATCH 265/629] update codemods for history (#6610) * update codemods for history * update codemorc * rename codemod * rename codemod * remove codemods --- .../tiptap-2-migrate-imports/.codemodrc.json | 12 - codemods/tiptap-2-migrate-imports/.gitignore | 4 - codemods/tiptap-2-migrate-imports/.prettierrc | 7 - .../tiptap-2-migrate-imports/CHANGELOG.md | 19 - codemods/tiptap-2-migrate-imports/README.md | 109 --- .../__testfixtures__/fixture1.input | 4 - .../__testfixtures__/fixture1.output | 1 - .../__testfixtures__/fixture2.input | 4 - .../__testfixtures__/fixture2.output | 1 - .../__testfixtures__/fixture3.input | 4 - .../__testfixtures__/fixture3.output | 6 - .../__testfixtures__/fixture4.input | 3 - .../__testfixtures__/fixture4.output | 1 - .../__testfixtures__/fixture5.input | 2 - .../__testfixtures__/fixture5.output | 1 - .../__testfixtures__/fixture6.input | 2 - .../__testfixtures__/fixture6.output | 1 - .../__testfixtures__/fixture7.input | 1 - .../__testfixtures__/fixture7.output | 2 - .../__testfixtures__/fixture8.input | 1 - .../__testfixtures__/fixture8.output | 2 - .../__testfixtures__/fixture9.input | 1 - .../__testfixtures__/fixture9.output | 2 - .../tiptap-2-migrate-imports/package.json | 23 - .../tiptap-2-migrate-imports/src/index.ts | 142 ---- .../tiptap-2-migrate-imports/test/test.ts | 165 ---- .../tiptap-2-migrate-imports/tsconfig.json | 30 - .../tiptap-2-migrate-imports/vitest.config.ts | 7 - pnpm-lock.yaml | 770 ------------------ pnpm-workspace.yaml | 1 - 30 files changed, 1328 deletions(-) delete mode 100644 codemods/tiptap-2-migrate-imports/.codemodrc.json delete mode 100644 codemods/tiptap-2-migrate-imports/.gitignore delete mode 100644 codemods/tiptap-2-migrate-imports/.prettierrc delete mode 100644 codemods/tiptap-2-migrate-imports/CHANGELOG.md delete mode 100644 codemods/tiptap-2-migrate-imports/README.md delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.output delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.output delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.output delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.output delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.output delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.output delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.output delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.input delete mode 100644 codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.output delete mode 100644 codemods/tiptap-2-migrate-imports/package.json delete mode 100644 codemods/tiptap-2-migrate-imports/src/index.ts delete mode 100644 codemods/tiptap-2-migrate-imports/test/test.ts delete mode 100644 codemods/tiptap-2-migrate-imports/tsconfig.json delete mode 100644 codemods/tiptap-2-migrate-imports/vitest.config.ts diff --git a/codemods/tiptap-2-migrate-imports/.codemodrc.json b/codemods/tiptap-2-migrate-imports/.codemodrc.json deleted file mode 100644 index 0ae3384f02..0000000000 --- a/codemods/tiptap-2-migrate-imports/.codemodrc.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "$schema": "https://codemod-utils.s3.us-west-1.amazonaws.com/configuration_schema.json", - "name": "tiptap-2-migrate-imports", - "version": "1.0.1", - "engine": "jscodeshift", - "private": false, - "arguments": [], - "meta": { - "tags": ["tiptap"], - "git": "https://github.com/ueberdosis/tiptap.git" - } -} diff --git a/codemods/tiptap-2-migrate-imports/.gitignore b/codemods/tiptap-2-migrate-imports/.gitignore deleted file mode 100644 index 6e5c59b0a1..0000000000 --- a/codemods/tiptap-2-migrate-imports/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -node_modules -cdmd_dist -pnpm-lock.yaml -package-lock.json \ No newline at end of file diff --git a/codemods/tiptap-2-migrate-imports/.prettierrc b/codemods/tiptap-2-migrate-imports/.prettierrc deleted file mode 100644 index d8175bd721..0000000000 --- a/codemods/tiptap-2-migrate-imports/.prettierrc +++ /dev/null @@ -1,7 +0,0 @@ -{ - "tabWidth": 2, - "semi": true, - "singleQuote": false, - "arrowParens": "avoid", - "printWidth": 120 -} diff --git a/codemods/tiptap-2-migrate-imports/CHANGELOG.md b/codemods/tiptap-2-migrate-imports/CHANGELOG.md deleted file mode 100644 index 63ca02bde1..0000000000 --- a/codemods/tiptap-2-migrate-imports/CHANGELOG.md +++ /dev/null @@ -1,19 +0,0 @@ -# tiptap-2-migrate-imports - -## 1.0.1-beta.2 - -### Patch Changes - -- 8c69002: Synced beta with stable features - -## 1.0.1-beta.1 - -### Patch Changes - -- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository - -## 1.0.1-next.0 - -### Patch Changes - -- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory diff --git a/codemods/tiptap-2-migrate-imports/README.md b/codemods/tiptap-2-migrate-imports/README.md deleted file mode 100644 index ecd8f849e2..0000000000 --- a/codemods/tiptap-2-migrate-imports/README.md +++ /dev/null @@ -1,109 +0,0 @@ -This is a [codemod](https://codemod.com) created with [`codemod init`](https://docs.codemod.com/deploying-codemods/cli#codemod-init). - -## Using this codemod - -You can run this codemod with the following command: - -```bash -npx codemod tiptap-2-migrate-imports -``` - -### Before - -```ts -import Table from "@tiptap/extension-table"; -import TableRow from "@tiptap/extension-table-row"; -import TableCell from "@tiptap/extension-table-cell"; -import TableHeader from "@tiptap/extension-table-header"; -``` - -### After - -```ts -import { Table, TableRow, TableCell, TableHeader } from "@tiptap/extension-table"; -``` - -, - -### Before - -```ts -import { Table } from "@tiptap/extension-table"; -import { TableRow } from "@tiptap/extension-table-row"; -import { TableCell } from "@tiptap/extension-table-cell"; -import { TableHeader } from "@tiptap/extension-table-header"; -``` - -### After - -```ts -import { Table, TableRow, TableCell, TableHeader } from "@tiptap/extension-table"; -``` - -, - -### Before - -```ts -import Table1 from "@tiptap/extension-table"; -import TableR from "@tiptap/extension-table-row"; -import TableCel from "@tiptap/extension-table-cell"; -import TableHead from "@tiptap/extension-table-header"; -``` - -### After - -```ts -import { - Table as Table1, - TableRow as TableR, - TableCell as TableCel, - TableHeader as TableHead, -} from "@tiptap/extension-table"; -``` - -, - -### Before - -```ts -import BulletList from "@tiptap/extension-bullet-list"; -import OrderedList from "@tiptap/extension-ordered-list"; -import ListItem from "@tiptap/extension-list-item"; -``` - -### After - -```ts -import { BulletList, OrderedList, ListItem } from "@tiptap/extension-list"; -``` - -, - -### Before - -```ts -import TextStyle from "@tiptap/extension-text-style"; -import { Color } from "@tiptap/extension-color"; -``` - -### After - -```ts -import { TextStyle, Color } from "@tiptap/extension-text-style"; -``` - -, - -### Before - -```ts -import { PlaceHolder } from "@tiptap/extension-placeholder"; -import UndoRedo from "@tiptap/extension-history"; -``` - -### After - -```ts -import { PlaceHolder, UndoRedo } from "@tiptap/extensions"; -``` diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.input deleted file mode 100644 index d832c4151e..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.input +++ /dev/null @@ -1,4 +0,0 @@ -import Table from "@tiptap/extension-table"; -import TableCell from "@tiptap/extension-table-cell"; -import TableHeader from "@tiptap/extension-table-header"; -import TableRow from "@tiptap/extension-table-row"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.output deleted file mode 100644 index 160b18dcf7..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture1.output +++ /dev/null @@ -1 +0,0 @@ -import { Table, TableCell, TableHeader, TableRow } from "@tiptap/extension-table"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.input deleted file mode 100644 index 41161815bc..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.input +++ /dev/null @@ -1,4 +0,0 @@ -import { Table } from "@tiptap/extension-table"; -import { TableCell } from "@tiptap/extension-table-cell"; -import { TableHeader } from "@tiptap/extension-table-header"; -import { TableRow } from "@tiptap/extension-table-row"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.output deleted file mode 100644 index 160b18dcf7..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture2.output +++ /dev/null @@ -1 +0,0 @@ -import { Table, TableCell, TableHeader, TableRow } from "@tiptap/extension-table"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.input deleted file mode 100644 index f70153979c..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.input +++ /dev/null @@ -1,4 +0,0 @@ -import Table1 from "@tiptap/extension-table"; -import TableCel from "@tiptap/extension-table-cell"; -import TableHead from "@tiptap/extension-table-header"; -import TableR from "@tiptap/extension-table-row"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.output deleted file mode 100644 index 991c6c7d5f..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture3.output +++ /dev/null @@ -1,6 +0,0 @@ -import { - Table as Table1, - TableCell as TableCel, - TableHeader as TableHead, - TableRow as TableR, -} from "@tiptap/extension-table"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.input deleted file mode 100644 index 9e5d063270..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.input +++ /dev/null @@ -1,3 +0,0 @@ -import BulletList from "@tiptap/extension-bullet-list"; -import ListItem from "@tiptap/extension-list-item"; -import OrderedList from "@tiptap/extension-ordered-list"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.output deleted file mode 100644 index 55e4c70421..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture4.output +++ /dev/null @@ -1 +0,0 @@ -import { BulletList, ListItem, OrderedList } from "@tiptap/extension-list"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.input deleted file mode 100644 index a929fde2ad..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.input +++ /dev/null @@ -1,2 +0,0 @@ -import { Color } from "@tiptap/extension-color"; -import TextStyle from "@tiptap/extension-text-style"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.output deleted file mode 100644 index 31d05c4b4e..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture5.output +++ /dev/null @@ -1 +0,0 @@ -import { Color, TextStyle } from "@tiptap/extension-text-style"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input deleted file mode 100644 index 987bbe9609..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.input +++ /dev/null @@ -1,2 +0,0 @@ -import UndoRedo from "@tiptap/extension-history"; -import { Placeholder } from "@tiptap/extension-placeholder"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output deleted file mode 100644 index b972782ace..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture6.output +++ /dev/null @@ -1 +0,0 @@ -import { UndoRedo, Placeholder } from "@tiptap/extensions"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.input deleted file mode 100644 index 2670c2c954..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.input +++ /dev/null @@ -1 +0,0 @@ -import { FloatingMenu, BubbleMenu, useEditor } from "@tiptap/react"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.output deleted file mode 100644 index 0f88144244..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture7.output +++ /dev/null @@ -1,2 +0,0 @@ -import { useEditor } from "@tiptap/react"; -import { FloatingMenu, BubbleMenu } from "@tiptap/react/menus"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.input deleted file mode 100644 index bade9f330b..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.input +++ /dev/null @@ -1 +0,0 @@ -import { FloatingMenu, BubbleMenu, useEditor } from "@tiptap/vue-3"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.output deleted file mode 100644 index 1eacf663f4..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture8.output +++ /dev/null @@ -1,2 +0,0 @@ -import { useEditor } from "@tiptap/vue-3"; -import { FloatingMenu, BubbleMenu } from "@tiptap/vue-3/menus"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.input b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.input deleted file mode 100644 index 5af77773d4..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.input +++ /dev/null @@ -1 +0,0 @@ -import { FloatingMenu, BubbleMenu, useEditor } from "@tiptap/vue-2"; diff --git a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.output b/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.output deleted file mode 100644 index b86c3d7dd8..0000000000 --- a/codemods/tiptap-2-migrate-imports/__testfixtures__/fixture9.output +++ /dev/null @@ -1,2 +0,0 @@ -import { useEditor } from "@tiptap/vue-2"; -import { FloatingMenu, BubbleMenu } from "@tiptap/vue-2/menus"; diff --git a/codemods/tiptap-2-migrate-imports/package.json b/codemods/tiptap-2-migrate-imports/package.json deleted file mode 100644 index c52c763caf..0000000000 --- a/codemods/tiptap-2-migrate-imports/package.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "tiptap-2-migrate-imports", - "version": "1.0.1-beta.2", - "private": true, - "devDependencies": { - "@types/node": "20.9.0", - "typescript": "^5.2.2", - "vitest": "^1.0.1", - "@codemod.com/codemod-utils": "*", - "jscodeshift": "^0.15.1", - "@types/jscodeshift": "^0.11.10" - }, - "scripts": { - "test": "vitest run", - "test:watch": "vitest watch" - }, - "files": [ - "README.md", - ".codemodrc.json", - "/dist/index.cjs" - ], - "type": "module" -} diff --git a/codemods/tiptap-2-migrate-imports/src/index.ts b/codemods/tiptap-2-migrate-imports/src/index.ts deleted file mode 100644 index e1a52f893b..0000000000 --- a/codemods/tiptap-2-migrate-imports/src/index.ts +++ /dev/null @@ -1,142 +0,0 @@ -/* eslint-disable semi */ -export default function transform(file: any, api: any) { - const j = api.jscodeshift as typeof import("jscodeshift"); - const root = j(file.source); - let dirtyFlag = false; - - // Define the mapping of old module paths to the new consolidated module path - const moduleMapping = { - // extension-table - "@tiptap/extension-table": "Table", - "@tiptap/extension-table-row": "TableRow", - "@tiptap/extension-table-cell": "TableCell", - "@tiptap/extension-table-header": "TableHeader", - // extension-list - "@tiptap/extension-list-item": "ListItem", - "@tiptap/extension-bullet-list": "BulletList", - "@tiptap/extension-ordered-list": "OrderedList", - "@tiptap/extension-task-item": "TaskItem", - "@tiptap/extension-task-list": "TaskList", - "@tiptap/extension-list-keymap": "ListKeymap", - // extension-text-style - "@tiptap/extension-text-style": "TextStyle", - "@tiptap/extension-color": "Color", - "@tiptap/extension-font-family": "FontFamily", - // extensions - "@tiptap/extension-character-count": "CharacterCount", - "@tiptap/extension-dropcursor": "Dropcursor", - "@tiptap/extension-gapcursor": "Gapcursor", - "@tiptap/extension-focus": "Focus", - "@tiptap/extension-history": "History", - "@tiptap/extension-placeholder": "Placeholder", - }; - - const importMapping = { - // extension-table - "@tiptap/extension-table": "@tiptap/extension-table", - "@tiptap/extension-table-row": "@tiptap/extension-table", - "@tiptap/extension-table-cell": "@tiptap/extension-table", - "@tiptap/extension-table-header": "@tiptap/extension-table", - // extension-list - "@tiptap/extension-list-item": "@tiptap/extension-list", - "@tiptap/extension-bullet-list": "@tiptap/extension-list", - "@tiptap/extension-ordered-list": "@tiptap/extension-list", - "@tiptap/extension-task-item": "@tiptap/extension-list", - "@tiptap/extension-task-list": "@tiptap/extension-list", - "@tiptap/extension-list-keymap": "@tiptap/extension-list", - // extension-text-style - "@tiptap/extension-text-style": "@tiptap/extension-text-style", - "@tiptap/extension-color": "@tiptap/extension-text-style", - "@tiptap/extension-font-family": "@tiptap/extension-text-style", - // extensions - "@tiptap/extension-character-count": "@tiptap/extensions", - "@tiptap/extension-dropcursor": "@tiptap/extensions", - "@tiptap/extension-gapcursor": "@tiptap/extensions", - "@tiptap/extension-focus": "@tiptap/extensions", - "@tiptap/extension-history": "@tiptap/extensions", - "@tiptap/extension-placeholder": "@tiptap/extensions", - }; - - // Collect all import specifiers that need to be consolidated - const importSpecifiers = {} as Record<(typeof importMapping)[keyof typeof importMapping], Array | undefined>; - - // Find all relevant import declarations - root.find(j.ImportDeclaration).forEach(path => { - const sourceValue = path.node.source.value as keyof typeof moduleMapping; - if (moduleMapping[sourceValue]) { - path.node.specifiers?.forEach(specifier => { - if (j.ImportDefaultSpecifier.check(specifier) || j.ImportSpecifier.check(specifier)) { - const importedName = j.ImportDefaultSpecifier.check(specifier) - ? moduleMapping[sourceValue] - : specifier.imported.name; - const localName = specifier.local?.name; - if (!localName) { - return; - } - if (!importSpecifiers[importMapping[sourceValue]]) { - importSpecifiers[importMapping[sourceValue]] = []; - } - importSpecifiers[importMapping[sourceValue]]?.push( - j.importSpecifier(j.identifier(importedName), localName !== importedName ? j.identifier(localName) : null), - ); - } - }); - j(path).remove(); - dirtyFlag = true; - } - }); - - // If there are import specifiers to consolidate, create a new import declaration - Object.entries(importSpecifiers).forEach(([destinationModule, specifiers]) => { - if (Array.isArray(specifiers) && specifiers.length > 0) { - const newImportDeclaration = j.importDeclaration(specifiers, j.literal(destinationModule)); - root.get().node.program.body.unshift(newImportDeclaration); - } - }); - - // Find all import declarations from '@tiptap/react' - root - .find( - j.ImportDeclaration, - ({ source: { value } }) => value === "@tiptap/react" || value === "@tiptap/vue-3" || value === "@tiptap/vue-2", - ) - .forEach(path => { - const specifiers = path.node.specifiers; - const newSpecifiers: any[] = []; - const menusSpecifiers: any[] = []; - - if (!specifiers) { - return; - } - - // Separate specifiers into those that stay and those that move to '@tiptap/react/menus' - specifiers.forEach(specifier => { - if ( - j.ImportSpecifier.check(specifier) && - (specifier.imported.name === "FloatingMenu" || specifier.imported.name === "BubbleMenu") - ) { - menusSpecifiers.push(specifier); - } else { - newSpecifiers.push(specifier); - } - }); - - // If there are specifiers to move, create a new import declaration - if (menusSpecifiers.length > 0) { - dirtyFlag = true; - const menusImport = j.importDeclaration(menusSpecifiers, j.literal(`${path.value.source.value}/menus`)); - j(path).insertAfter(menusImport); - } - - // Update the original import declaration or remove it if empty - if (newSpecifiers.length > 0) { - path.node.specifiers = newSpecifiers; - } else { - j(path).remove(); - } - }); - - return dirtyFlag ? root.toSource() : undefined; -} - -export const parser = "tsx"; diff --git a/codemods/tiptap-2-migrate-imports/test/test.ts b/codemods/tiptap-2-migrate-imports/test/test.ts deleted file mode 100644 index 0c5500dbbc..0000000000 --- a/codemods/tiptap-2-migrate-imports/test/test.ts +++ /dev/null @@ -1,165 +0,0 @@ -/* eslint-disable semi */ -import jscodeshift, { type API } from "jscodeshift"; -import assert from "node:assert"; -import { readFile } from "node:fs/promises"; -import { join } from "node:path"; -import { describe, it } from "vitest"; - -import transform from "../src/index.js"; - -const buildApi = (parser: string | undefined): API => ({ - j: parser ? jscodeshift.withParser(parser) : jscodeshift, - jscodeshift: parser ? jscodeshift.withParser(parser) : jscodeshift, - stats: () => { - console.error("The stats function was called, which is not supported on purpose"); - }, - report: () => { - console.error("The report function was called, which is not supported on purpose"); - }, -}); - -describe("tiptap/2/consolidate-extensions", () => { - it("test #1", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture1.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture1.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); - - it("test #2", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture2.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture2.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); - - it("test #3", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture3.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture3.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); - - it("test #4", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture4.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture4.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); - - it("test #5", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture5.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture5.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), - // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); - - it("test #6", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture6.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture6.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); - - it("test #7", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture7.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture7.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); - - it("test #8", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture8.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture8.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); - it("test #9", async () => { - const INPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture9.input"), "utf-8"); - const OUTPUT = await readFile(join(__dirname, "..", "__testfixtures__/fixture9.output"), "utf-8"); - - const actualOutput = transform( - { - path: "index.js", - source: INPUT, - }, - buildApi("tsx"), // @ts-expect-error - {}, - ); - - assert.deepEqual(actualOutput?.replace(/W/gm, ""), OUTPUT.replace(/W/gm, "")); - }); -}); diff --git a/codemods/tiptap-2-migrate-imports/tsconfig.json b/codemods/tiptap-2-migrate-imports/tsconfig.json deleted file mode 100644 index d6c5773fb5..0000000000 --- a/codemods/tiptap-2-migrate-imports/tsconfig.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "compilerOptions": { - "module": "NodeNext", - "target": "ESNext", - "moduleResolution": "NodeNext", - "lib": ["ESNext", "DOM"], - "skipLibCheck": true, - "esModuleInterop": true, - "resolveJsonModule": true, - "allowSyntheticDefaultImports": true, - "isolatedModules": true, - "jsx": "react-jsx", - "useDefineForClassFields": true, - "noFallthroughCasesInSwitch": true, - "noUnusedLocals": false, - "noUnusedParameters": false, - "preserveWatchOutput": true, - "strict": true, - "strictNullChecks": true, - "incremental": true, - "noUncheckedIndexedAccess": true, - "noPropertyAccessFromIndexSignature": false, - "allowJs": true - }, - "include": ["./src/**/*.ts", "./src/**/*.js", "./test/**/*.ts", "./test/**/*.js"], - "exclude": ["node_modules", "./dist/**/*"], - "ts-node": { - "transpileOnly": true - } -} diff --git a/codemods/tiptap-2-migrate-imports/vitest.config.ts b/codemods/tiptap-2-migrate-imports/vitest.config.ts deleted file mode 100644 index e55b8cc4d0..0000000000 --- a/codemods/tiptap-2-migrate-imports/vitest.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { configDefaults, defineConfig } from "vitest/config" - -export default defineConfig({ - test: { - include: [...configDefaults.include, "**/test/*.ts"], - }, -}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7884909ae7..88a511432b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -129,27 +129,6 @@ importers: specifier: ^5.97.1 version: 5.97.1(esbuild@0.24.2) - codemods/tiptap-2-migrate-imports: - devDependencies: - '@codemod.com/codemod-utils': - specifier: '*' - version: 1.0.0(@babel/preset-env@7.26.0(@babel/core@7.26.0)) - '@types/jscodeshift': - specifier: ^0.11.10 - version: 0.11.11 - '@types/node': - specifier: 20.9.0 - version: 20.9.0 - jscodeshift: - specifier: ^0.15.1 - version: 0.15.2(@babel/preset-env@7.26.0(@babel/core@7.26.0)) - typescript: - specifier: ^5.2.2 - version: 5.7.3 - vitest: - specifier: ^1.0.1 - version: 1.6.0(@types/node@20.9.0)(happy-dom@18.0.1)(sass@1.83.4)(terser@5.37.0) - demos: dependencies: '@floating-ui/dom': @@ -1320,12 +1299,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-flow@7.26.0': - resolution: {integrity: sha512-B+O2DnPc0iG+YXFqOxv2WNuNU97ToWjOomUQ78DouOENWUaM5sVrmet9mcomUGQFwpJd//gvUagXBSdzO1fRKg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-assertions@7.26.0': resolution: {integrity: sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==} engines: {node: '>=6.9.0'} @@ -1354,12 +1327,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-typescript@7.25.9': - resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6': resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} engines: {node: '>=6.9.0'} @@ -1462,12 +1429,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-flow-strip-types@7.26.5': - resolution: {integrity: sha512-eGK26RsbIkYUns3Y8qKl362juDDYK+wEdPGHGrhzUl6CewZFo55VZ7hg+CyMFU4dd5QQakBN86nBMpRsFpRvbQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-for-of@7.25.9': resolution: {integrity: sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A==} engines: {node: '>=6.9.0'} @@ -1684,12 +1645,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.26.7': - resolution: {integrity: sha512-5cJurntg+AT+cgelGP9Bt788DKiAw9gIMSMU2NJrLAilnj0m8WZWUNZPSLOmadYsujHutpgElO+50foX+ib/Wg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-escapes@7.25.9': resolution: {integrity: sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==} engines: {node: '>=6.9.0'} @@ -1720,12 +1675,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/preset-flow@7.25.9': - resolution: {integrity: sha512-EASHsAhE+SSlEzJ4bzfusnXSHiU+JfAYzj+jbw2vgQKgq5HrUr8qs+vgtiEL5dOH6sEweI+PNt2D7AqrDSHyqQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/preset-modules@0.1.6-no-external-plugins': resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} peerDependencies: @@ -1737,18 +1686,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/preset-typescript@7.26.0': - resolution: {integrity: sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/register@7.25.9': - resolution: {integrity: sha512-8D43jXtGsYmEeDvm4MWHYUpWf8iiXgWYx3fW7E7Wb7Oe6FWqJPl5K6TuFW0dOwNZzEE5rjlaSJYH9JjrUKJszA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/runtime@7.26.0': resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==} engines: {node: '>=6.9.0'} @@ -1820,9 +1757,6 @@ packages: '@changesets/write@0.3.2': resolution: {integrity: sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==} - '@codemod.com/codemod-utils@1.0.0': - resolution: {integrity: sha512-Uo7oA2kgpfRJS5LFL9ARdsaeenRyEsRHINoTcIsHeBFBce+imLhrkYlEhXcrNYuTLVXmlGx2Mdn6NeUio4wpfw==} - '@colors/colors@1.5.0': resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} @@ -2422,10 +2356,6 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} - '@jest/schemas@29.6.3': - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jridgewell/gen-mapping@0.3.8': resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} @@ -2852,9 +2782,6 @@ packages: '@shikijs/vscode-textmate@10.0.1': resolution: {integrity: sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==} - '@sinclair/typebox@0.27.8': - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - '@sveltejs/vite-plugin-svelte-inspector@2.1.0': resolution: {integrity: sha512-9QX28IymvBlSCqsCll5t0kQVxipsfhFFL+L2t3nTWfXnddYwxBuAEtTtlaVQpRz9c37BhJjltSeY4AJSC03SSg==} engines: {node: ^18.0.0 || >=20} @@ -3028,9 +2955,6 @@ packages: '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} - '@types/jscodeshift@0.11.11': - resolution: {integrity: sha512-d7CAfFGOupj5qCDqMODXxNz2/NwCv/Lha78ZFbnr6qpk3K98iSB8I+ig9ERE2+EeYML352VMRsjPyOpeA+04eQ==} - '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -3165,21 +3089,6 @@ packages: vite: ^5.0.0 || ^6.0.0 vue: ^3.2.25 - '@vitest/expect@1.6.0': - resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} - - '@vitest/runner@1.6.0': - resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} - - '@vitest/snapshot@1.6.0': - resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} - - '@vitest/spy@1.6.0': - resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} - - '@vitest/utils@1.6.0': - resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} - '@vue/compiler-core@3.5.13': resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} @@ -3275,10 +3184,6 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn-walk@8.3.4: - resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} - engines: {node: '>=0.4.0'} - acorn@8.14.0: resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} @@ -3412,17 +3317,6 @@ packages: resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} engines: {node: '>=0.8'} - assertion-error@1.1.0: - resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} - - ast-types@0.14.2: - resolution: {integrity: sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==} - engines: {node: '>=4'} - - ast-types@0.16.1: - resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} - engines: {node: '>=4'} - astral-regex@2.0.0: resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} engines: {node: '>=8'} @@ -3461,11 +3355,6 @@ packages: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} engines: {node: '>= 0.4'} - babel-core@7.0.0-bridge.0: - resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - babel-loader@9.2.1: resolution: {integrity: sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==} engines: {node: '>= 14.15.0'} @@ -3604,10 +3493,6 @@ packages: ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - chai@4.5.0: - resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} - engines: {node: '>=4'} - chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -3629,9 +3514,6 @@ packages: chardet@0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} - check-error@1.0.3: - resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} - check-more-types@2.24.0: resolution: {integrity: sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==} engines: {node: '>= 0.8.0'} @@ -3692,10 +3574,6 @@ packages: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} - clone-deep@4.0.1: - resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} - engines: {node: '>=6'} - clone@1.0.4: resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} engines: {node: '>=0.8'} @@ -3761,9 +3639,6 @@ packages: resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} engines: {node: '>=4.0.0'} - commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - compare-func@2.0.0: resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} @@ -4028,10 +3903,6 @@ packages: dedent@0.7.0: resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} - deep-eql@4.1.4: - resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} - engines: {node: '>=6'} - deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} @@ -4083,10 +3954,6 @@ packages: didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - diff-sequences@29.6.3: - resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -4600,10 +4467,6 @@ packages: resolution: {integrity: sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==} engines: {node: '>=14.16'} - find-cache-dir@2.1.0: - resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} - engines: {node: '>=6'} - find-cache-dir@4.0.0: resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==} engines: {node: '>=14.16'} @@ -4614,10 +4477,6 @@ packages: find-root@1.1.0: resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} - find-up@3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -4645,10 +4504,6 @@ packages: flatted@3.3.2: resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} - flow-parser@0.259.1: - resolution: {integrity: sha512-xiXLmMH2Z7OmdE9Q+MjljUMr/rbemFqZIRxaeZieVScG4HzQrKKhNcCYZbWTGpoN7ZPi7z8ClQbeVPq6t5AszQ==} - engines: {node: '>=0.4.0'} - follow-redirects@1.15.9: resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} engines: {node: '>=4.0'} @@ -4724,9 +4579,6 @@ packages: resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} engines: {node: '>=18'} - get-func-name@2.0.2: - resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} - get-intrinsic@1.2.7: resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} engines: {node: '>= 0.4'} @@ -5076,10 +4928,6 @@ packages: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} engines: {node: '>=8'} - is-plain-object@2.0.4: - resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} - engines: {node: '>=0.10.0'} - is-reference@3.0.3: resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} @@ -5159,10 +5007,6 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - isobject@3.0.1: - resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} - engines: {node: '>=0.10.0'} - isomorphic.js@0.2.5: resolution: {integrity: sha512-PIeMbHqMt4DnUP3MA/Flc0HElYjMXArsw1qwJZcm9sqR8mq3l8NYizFMty0pWwE/tzIGH3EKK5+jes5mAr85yw==} @@ -5191,9 +5035,6 @@ packages: js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-tokens@9.0.1: - resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} - js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true @@ -5205,24 +5046,6 @@ packages: jsbn@0.1.1: resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} - jscodeshift@0.15.2: - resolution: {integrity: sha512-FquR7Okgmc4Sd0aEDwqho3rEiKR3BdvuG9jfdHjLJ6JQoWSMpavug3AoIfnfWhxFlf+5pzQh8qjqz0DWFrNQzA==} - hasBin: true - peerDependencies: - '@babel/preset-env': ^7.1.6 - peerDependenciesMeta: - '@babel/preset-env': - optional: true - - jscodeshift@0.16.1: - resolution: {integrity: sha512-oMQXySazy63awNBzMpXbbVv73u3irdxTeX2L5ueRyFRxi32qb9uzdZdOY5fTBYADBG19l5M/wnGknZSV1dzCdA==} - hasBin: true - peerDependencies: - '@babel/preset-env': ^7.1.6 - peerDependenciesMeta: - '@babel/preset-env': - optional: true - jsesc@3.0.2: resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} engines: {node: '>=6'} @@ -5284,10 +5107,6 @@ packages: keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - kind-of@6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} - kleur@4.1.5: resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} @@ -5352,17 +5171,9 @@ packages: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} - local-pkg@0.5.1: - resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} - engines: {node: '>=14'} - locate-character@3.0.0: resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} - locate-path@3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -5437,9 +5248,6 @@ packages: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true - loupe@2.3.7: - resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} - lowlight@3.3.0: resolution: {integrity: sha512-0JNhgFoPvP6U6lE/UdVsSq99tn6DhjjpAj5MxG49ewd2mOBVtwWYIT8ClyABhq198aXXODMU6Ox8DrGy/CpTZQ==} @@ -5456,10 +5264,6 @@ packages: magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} - make-dir@2.1.0: - resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} - engines: {node: '>=6'} - markdown-it@14.1.0: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true @@ -5586,10 +5390,6 @@ packages: node-addon-api@7.1.1: resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} - node-dir@0.1.17: - resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} - engines: {node: '>= 0.10.5'} - node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} @@ -5711,14 +5511,6 @@ packages: resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - p-limit@5.0.0: - resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} - engines: {node: '>=18'} - - p-locate@3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} - p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -5761,10 +5553,6 @@ packages: resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==} engines: {node: '>=0.10.0'} - path-exists@3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} - path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -5796,15 +5584,9 @@ packages: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - pathe@2.0.2: resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==} - pathval@1.1.1: - resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} - pend@1.2.0: resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} @@ -5842,10 +5624,6 @@ packages: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} - pkg-dir@3.0.0: - resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} - engines: {node: '>=6'} - pkg-dir@7.0.0: resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} engines: {node: '>=14.16'} @@ -5946,10 +5724,6 @@ packages: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - pretty-format@29.7.0: - resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - prismjs@1.29.0: resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} engines: {node: '>=6'} @@ -6081,9 +5855,6 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - react-is@18.3.1: - resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - react-refresh@0.13.0: resolution: {integrity: sha512-XP8A9BT0CpRBD+NYLLeIhld/RqG9+gktUjW1FkE+Vm7OCinbG1SshcK5tb9ls4kzvjZr9mOQc7HYgBngEyPAXg==} engines: {node: '>=0.10.0'} @@ -6115,14 +5886,6 @@ packages: resolution: {integrity: sha512-h80JrZu/MHUZCyHu5ciuoI0+WxsCxzxJTILn6Fs8rxSnFPh+UVHYfeIxK1nVGugMqkfC4vJcBOYbkfkwYK0+gw==} engines: {node: '>= 14.18.0'} - recast@0.20.5: - resolution: {integrity: sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==} - engines: {node: '>= 4'} - - recast@0.23.9: - resolution: {integrity: sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==} - engines: {node: '>= 4'} - reflect.getprototypeof@1.0.10: resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} engines: {node: '>= 0.4'} @@ -6213,11 +5976,6 @@ packages: rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} - rimraf@2.6.3: - resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} - deprecated: Rimraf versions prior to v4 are no longer supported - hasBin: true - rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} deprecated: Rimraf versions prior to v4 are no longer supported @@ -6290,10 +6048,6 @@ packages: secure-compare@3.0.1: resolution: {integrity: sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw==} - semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} - hasBin: true - semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -6318,10 +6072,6 @@ packages: resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} engines: {node: '>= 0.4'} - shallow-clone@3.0.1: - resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} - engines: {node: '>=8'} - shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -6349,9 +6099,6 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} - siginfo@2.0.0: - resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} - signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -6419,12 +6166,6 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - stackback@0.0.2: - resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - - std-env@3.8.0: - resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} - string-argv@0.3.2: resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} engines: {node: '>=0.6.19'} @@ -6487,9 +6228,6 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} - strip-literal@2.1.1: - resolution: {integrity: sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==} - sucrase@3.35.0: resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} engines: {node: '>=16 || 14 >=14.17'} @@ -6530,14 +6268,6 @@ packages: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - temp@0.8.4: - resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} - engines: {node: '>=6.0.0'} - - temp@0.9.4: - resolution: {integrity: sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==} - engines: {node: '>=6.0.0'} - term-size@2.2.1: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} engines: {node: '>=8'} @@ -6586,9 +6316,6 @@ packages: tiny-invariant@1.3.3: resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} - tinybench@2.9.0: - resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} - tinyexec@0.3.2: resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} @@ -6596,14 +6323,6 @@ packages: resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} engines: {node: '>=12.0.0'} - tinypool@0.8.4: - resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} - engines: {node: '>=14.0.0'} - - tinyspy@2.2.1: - resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} - engines: {node: '>=14.0.0'} - tldts-core@6.1.73: resolution: {integrity: sha512-k1g5eX87vxu3g//6XMn62y4qjayu4cYby/PF7Ksnh4F4uUK1Z1ze/mJ4a+y5OjdJ+cXRp+YTInZhH+FGdUWy1w==} @@ -6880,11 +6599,6 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite-node@1.6.0: - resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - vite-plugin-checker@0.6.4: resolution: {integrity: sha512-2zKHH5oxr+ye43nReRbC2fny1nyARwhxdm0uNYp/ERy4YvU9iZpNOsueoi/luXw5gnpqRSvjcEPxXbS153O2wA==} engines: {node: '>=14.16'} @@ -6916,37 +6630,6 @@ packages: vue-tsc: optional: true - vite@5.4.13: - resolution: {integrity: sha512-7zp3N4YSjXOSAFfdBe9pPD3FrO398QlJ/5QpFGm3L8xDP1IxDn1XRxArPw4ZKk5394MM8rcTVPY4y1Hvo62bog==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - vite@5.4.18: resolution: {integrity: sha512-1oDcnEp3lVyHCuQ2YFelM4Alm2o91xNoMncRm1U7S+JdYfYOvbiGZ3/CxGttrOu2M/KcGz7cRC2DoNUA6urmMA==} engines: {node: ^18.0.0 || >=20.0.0} @@ -6986,31 +6669,6 @@ packages: vite: optional: true - vitest@1.6.0: - resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 1.6.0 - '@vitest/ui': 1.6.0 - happy-dom: '*' - jsdom: '*' - peerDependenciesMeta: - '@edge-runtime/vm': - optional: true - '@types/node': - optional: true - '@vitest/browser': - optional: true - '@vitest/ui': - optional: true - happy-dom: - optional: true - jsdom: - optional: true - vscode-jsonrpc@6.0.0: resolution: {integrity: sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==} engines: {node: '>=8.0.0 || >=10.0.0'} @@ -7126,11 +6784,6 @@ packages: engines: {node: '>= 8'} hasBin: true - why-is-node-running@2.3.0: - resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} - engines: {node: '>=8'} - hasBin: true - word-wrap@1.2.5: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} @@ -7154,13 +6807,6 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - write-file-atomic@2.4.3: - resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==} - - write-file-atomic@5.0.1: - resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - ws@8.18.0: resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} engines: {node: '>=10.0.0'} @@ -7469,11 +7115,6 @@ snapshots: dependencies: '@babel/core': 7.26.0 - '@babel/plugin-syntax-flow@7.26.0(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-syntax-import-assertions@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -7499,11 +7140,6 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -7614,12 +7250,6 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-flow-strip-types@7.26.5(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-syntax-flow': 7.26.0(@babel/core@7.26.0) - '@babel/plugin-transform-for-of@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -7851,17 +7481,6 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-typescript@7.26.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.26.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-unicode-escapes@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -7960,13 +7579,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/preset-flow@7.25.9(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.26.5 - '@babel/helper-validator-option': 7.25.9 - '@babel/plugin-transform-flow-strip-types': 7.26.5(@babel/core@7.26.0) - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -7986,26 +7598,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/preset-typescript@7.26.0(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.26.5 - '@babel/helper-validator-option': 7.25.9 - '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) - '@babel/plugin-transform-typescript': 7.26.7(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - - '@babel/register@7.25.9(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - clone-deep: 4.0.1 - find-cache-dir: 2.1.0 - make-dir: 2.1.0 - pirates: 4.0.6 - source-map-support: 0.5.21 - '@babel/runtime@7.26.0': dependencies: regenerator-runtime: 0.14.1 @@ -8175,15 +7767,6 @@ snapshots: human-id: 1.0.2 prettier: 2.8.8 - '@codemod.com/codemod-utils@1.0.0(@babel/preset-env@7.26.0(@babel/core@7.26.0))': - dependencies: - '@babel/parser': 7.26.5 - '@types/jscodeshift': 0.11.11 - jscodeshift: 0.16.1(@babel/preset-env@7.26.0(@babel/core@7.26.0)) - transitivePeerDependencies: - - '@babel/preset-env' - - supports-color - '@colors/colors@1.5.0': optional: true @@ -8641,10 +8224,6 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 - '@jest/schemas@29.6.3': - dependencies: - '@sinclair/typebox': 0.27.8 - '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 @@ -9080,8 +8659,6 @@ snapshots: '@shikijs/vscode-textmate@10.0.1': {} - '@sinclair/typebox@0.27.8': {} - '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))': dependencies: '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) @@ -9287,11 +8864,6 @@ snapshots: dependencies: '@types/unist': 3.0.3 - '@types/jscodeshift@0.11.11': - dependencies: - ast-types: 0.14.2 - recast: 0.20.5 - '@types/json-schema@7.0.15': {} '@types/json5@0.0.29': {} @@ -9456,35 +9028,6 @@ snapshots: vite: 5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) vue: 3.5.13(typescript@5.7.3) - '@vitest/expect@1.6.0': - dependencies: - '@vitest/spy': 1.6.0 - '@vitest/utils': 1.6.0 - chai: 4.5.0 - - '@vitest/runner@1.6.0': - dependencies: - '@vitest/utils': 1.6.0 - p-limit: 5.0.0 - pathe: 1.1.2 - - '@vitest/snapshot@1.6.0': - dependencies: - magic-string: 0.30.17 - pathe: 1.1.2 - pretty-format: 29.7.0 - - '@vitest/spy@1.6.0': - dependencies: - tinyspy: 2.2.1 - - '@vitest/utils@1.6.0': - dependencies: - diff-sequences: 29.6.3 - estree-walker: 3.0.3 - loupe: 2.3.7 - pretty-format: 29.7.0 - '@vue/compiler-core@3.5.13': dependencies: '@babel/parser': 7.26.5 @@ -9638,10 +9181,6 @@ snapshots: dependencies: acorn: 8.14.0 - acorn-walk@8.3.4: - dependencies: - acorn: 8.14.0 - acorn@8.14.0: {} aggregate-error@3.1.0: @@ -9782,16 +9321,6 @@ snapshots: assert-plus@1.0.0: {} - assertion-error@1.1.0: {} - - ast-types@0.14.2: - dependencies: - tslib: 2.8.1 - - ast-types@0.16.1: - dependencies: - tslib: 2.8.1 - astral-regex@2.0.0: {} async@2.6.4: @@ -9824,10 +9353,6 @@ snapshots: axobject-query@4.1.0: {} - babel-core@7.0.0-bridge.0(@babel/core@7.26.0): - dependencies: - '@babel/core': 7.26.0 - babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.97.1(esbuild@0.24.2)): dependencies: '@babel/core': 7.26.0 @@ -9967,16 +9492,6 @@ snapshots: ccount@2.0.1: {} - chai@4.5.0: - dependencies: - assertion-error: 1.1.0 - check-error: 1.0.3 - deep-eql: 4.1.4 - get-func-name: 2.0.2 - loupe: 2.3.7 - pathval: 1.1.1 - type-detect: 4.1.0 - chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -9996,10 +9511,6 @@ snapshots: chardet@0.7.0: {} - check-error@1.0.3: - dependencies: - get-func-name: 2.0.2 - check-more-types@2.24.0: {} chokidar@3.6.0: @@ -10060,12 +9571,6 @@ snapshots: strip-ansi: 6.0.1 wrap-ansi: 7.0.0 - clone-deep@4.0.1: - dependencies: - is-plain-object: 2.0.4 - kind-of: 6.0.3 - shallow-clone: 3.0.1 - clone@1.0.4: {} code-red@1.0.4: @@ -10132,8 +9637,6 @@ snapshots: common-tags@1.8.2: {} - commondir@1.0.1: {} - compare-func@2.0.0: dependencies: array-ify: 1.0.0 @@ -10461,10 +9964,6 @@ snapshots: dedent@0.7.0: {} - deep-eql@4.1.4: - dependencies: - type-detect: 4.1.0 - deep-is@0.1.4: {} deepmerge@4.3.1: {} @@ -10508,8 +10007,6 @@ snapshots: didyoumean@1.2.2: {} - diff-sequences@29.6.3: {} - dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -11143,12 +10640,6 @@ snapshots: filter-obj@5.1.0: {} - find-cache-dir@2.1.0: - dependencies: - commondir: 1.0.1 - make-dir: 2.1.0 - pkg-dir: 3.0.0 - find-cache-dir@4.0.0: dependencies: common-path-prefix: 3.0.0 @@ -11161,10 +10652,6 @@ snapshots: find-root@1.1.0: {} - find-up@3.0.0: - dependencies: - locate-path: 3.0.0 - find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -11201,8 +10688,6 @@ snapshots: flatted@3.3.2: {} - flow-parser@0.259.1: {} - follow-redirects@1.15.9: {} for-each@0.3.3: @@ -11275,8 +10760,6 @@ snapshots: get-east-asian-width@1.3.0: {} - get-func-name@2.0.2: {} - get-intrinsic@1.2.7: dependencies: call-bind-apply-helpers: 1.0.1 @@ -11665,10 +11148,6 @@ snapshots: is-path-inside@3.0.3: {} - is-plain-object@2.0.4: - dependencies: - isobject: 3.0.1 - is-reference@3.0.3: dependencies: '@types/estree': 1.0.6 @@ -11738,8 +11217,6 @@ snapshots: isexe@2.0.0: {} - isobject@3.0.1: {} - isomorphic.js@0.2.5: {} isstream@0.1.2: {} @@ -11764,8 +11241,6 @@ snapshots: js-tokens@4.0.0: {} - js-tokens@9.0.1: {} - js-yaml@3.14.1: dependencies: argparse: 1.0.10 @@ -11777,59 +11252,6 @@ snapshots: jsbn@0.1.1: {} - jscodeshift@0.15.2(@babel/preset-env@7.26.0(@babel/core@7.26.0)): - dependencies: - '@babel/core': 7.26.0 - '@babel/parser': 7.26.5 - '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) - '@babel/plugin-transform-nullish-coalescing-operator': 7.26.6(@babel/core@7.26.0) - '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.26.0) - '@babel/preset-flow': 7.25.9(@babel/core@7.26.0) - '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) - '@babel/register': 7.25.9(@babel/core@7.26.0) - babel-core: 7.0.0-bridge.0(@babel/core@7.26.0) - chalk: 4.1.2 - flow-parser: 0.259.1 - graceful-fs: 4.2.11 - micromatch: 4.0.8 - neo-async: 2.6.2 - node-dir: 0.1.17 - recast: 0.23.9 - temp: 0.8.4 - write-file-atomic: 2.4.3 - optionalDependencies: - '@babel/preset-env': 7.26.0(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - - jscodeshift@0.16.1(@babel/preset-env@7.26.0(@babel/core@7.26.0)): - dependencies: - '@babel/core': 7.26.0 - '@babel/parser': 7.26.5 - '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) - '@babel/plugin-transform-nullish-coalescing-operator': 7.26.6(@babel/core@7.26.0) - '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.26.0) - '@babel/preset-flow': 7.25.9(@babel/core@7.26.0) - '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) - '@babel/register': 7.25.9(@babel/core@7.26.0) - chalk: 4.1.2 - flow-parser: 0.259.1 - graceful-fs: 4.2.11 - micromatch: 4.0.8 - neo-async: 2.6.2 - node-dir: 0.1.17 - recast: 0.23.9 - temp: 0.9.4 - write-file-atomic: 5.0.1 - optionalDependencies: - '@babel/preset-env': 7.26.0(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - jsesc@3.0.2: {} jsesc@3.1.0: {} @@ -11881,8 +11303,6 @@ snapshots: dependencies: json-buffer: 3.0.1 - kind-of@6.0.3: {} - kleur@4.1.5: {} lazy-ass@1.6.0: {} @@ -11953,18 +11373,8 @@ snapshots: loader-runner@4.3.0: {} - local-pkg@0.5.1: - dependencies: - mlly: 1.7.4 - pkg-types: 1.3.1 - locate-character@3.0.0: {} - locate-path@3.0.0: - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - locate-path@5.0.0: dependencies: p-locate: 4.1.0 @@ -12031,10 +11441,6 @@ snapshots: dependencies: js-tokens: 4.0.0 - loupe@2.3.7: - dependencies: - get-func-name: 2.0.2 - lowlight@3.3.0: dependencies: '@types/hast': 3.0.4 @@ -12053,11 +11459,6 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 - make-dir@2.1.0: - dependencies: - pify: 4.0.1 - semver: 5.7.2 - markdown-it@14.1.0: dependencies: argparse: 2.0.1 @@ -12175,10 +11576,6 @@ snapshots: node-addon-api@7.1.1: optional: true - node-dir@0.1.17: - dependencies: - minimatch: 3.1.2 - node-releases@2.0.19: {} normalize-path@3.0.0: {} @@ -12315,14 +11712,6 @@ snapshots: dependencies: yocto-queue: 1.1.1 - p-limit@5.0.0: - dependencies: - yocto-queue: 1.1.1 - - p-locate@3.0.0: - dependencies: - p-limit: 2.3.0 - p-locate@4.1.0: dependencies: p-limit: 2.3.0 @@ -12360,8 +11749,6 @@ snapshots: parse-passwd@1.0.0: {} - path-exists@3.0.0: {} - path-exists@4.0.0: {} path-exists@5.0.0: {} @@ -12381,12 +11768,8 @@ snapshots: path-type@4.0.0: {} - pathe@1.1.2: {} - pathe@2.0.2: {} - pathval@1.1.1: {} - pend@1.2.0: {} performance-now@2.1.0: {} @@ -12411,10 +11794,6 @@ snapshots: pirates@4.0.6: {} - pkg-dir@3.0.0: - dependencies: - find-up: 3.0.0 - pkg-dir@7.0.0: dependencies: find-up: 6.3.0 @@ -12504,12 +11883,6 @@ snapshots: ansi-styles: 5.2.0 react-is: 17.0.2 - pretty-format@29.7.0: - dependencies: - '@jest/schemas': 29.6.3 - ansi-styles: 5.2.0 - react-is: 18.3.1 - prismjs@1.29.0: {} process@0.11.10: {} @@ -12687,8 +12060,6 @@ snapshots: react-is@17.0.2: {} - react-is@18.3.1: {} - react-refresh@0.13.0: {} react@18.3.1: @@ -12720,21 +12091,6 @@ snapshots: readdirp@4.1.1: {} - recast@0.20.5: - dependencies: - ast-types: 0.14.2 - esprima: 4.0.1 - source-map: 0.6.1 - tslib: 2.8.1 - - recast@0.23.9: - dependencies: - ast-types: 0.16.1 - esprima: 4.0.1 - source-map: 0.6.1 - tiny-invariant: 1.3.3 - tslib: 2.8.1 - reflect.getprototypeof@1.0.10: dependencies: call-bind: 1.0.8 @@ -12834,10 +12190,6 @@ snapshots: rfdc@1.4.1: {} - rimraf@2.6.3: - dependencies: - glob: 7.2.3 - rimraf@3.0.2: dependencies: glob: 7.2.3 @@ -12937,8 +12289,6 @@ snapshots: secure-compare@3.0.1: {} - semver@5.7.2: {} - semver@6.3.1: {} semver@7.6.3: {} @@ -12969,10 +12319,6 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.1.1 - shallow-clone@3.0.1: - dependencies: - kind-of: 6.0.3 - shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 @@ -13018,8 +12364,6 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 - siginfo@2.0.0: {} - signal-exit@3.0.7: {} signal-exit@4.1.0: {} @@ -13098,10 +12442,6 @@ snapshots: safer-buffer: 2.1.2 tweetnacl: 0.14.5 - stackback@0.0.2: {} - - std-env@3.8.0: {} - string-argv@0.3.2: {} string-width@4.2.3: @@ -13172,10 +12512,6 @@ snapshots: strip-json-comments@3.1.1: {} - strip-literal@2.1.1: - dependencies: - js-tokens: 9.0.1 - sucrase@3.35.0: dependencies: '@jridgewell/gen-mapping': 0.3.8 @@ -13250,15 +12586,6 @@ snapshots: tapable@2.2.1: {} - temp@0.8.4: - dependencies: - rimraf: 2.6.3 - - temp@0.9.4: - dependencies: - mkdirp: 0.5.6 - rimraf: 2.6.3 - term-size@2.2.1: {} terser-webpack-plugin@5.3.11(esbuild@0.24.2)(webpack@5.97.1(esbuild@0.24.2)): @@ -13297,8 +12624,6 @@ snapshots: tiny-invariant@1.3.3: {} - tinybench@2.9.0: {} - tinyexec@0.3.2: {} tinyglobby@0.2.10: @@ -13306,10 +12631,6 @@ snapshots: fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 - tinypool@0.8.4: {} - - tinyspy@2.2.1: {} - tldts-core@6.1.73: {} tldts@6.1.73: @@ -13578,24 +12899,6 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-node@1.6.0(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0): - dependencies: - cac: 6.7.14 - debug: 4.4.0(supports-color@8.1.1) - pathe: 1.1.2 - picocolors: 1.1.1 - vite: 5.4.18(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0) - transitivePeerDependencies: - - '@types/node' - - less - - lightningcss - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - - terser - vite-plugin-checker@0.6.4(eslint@8.57.1)(optionator@0.9.4)(typescript@5.7.3)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)): dependencies: '@babel/code-frame': 7.26.2 @@ -13619,28 +12922,6 @@ snapshots: optionator: 0.9.4 typescript: 5.7.3 - vite@5.4.13(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0): - dependencies: - esbuild: 0.21.5 - postcss: 8.5.1 - rollup: 4.31.0 - optionalDependencies: - '@types/node': 20.9.0 - fsevents: 2.3.3 - sass: 1.83.4 - terser: 5.37.0 - - vite@5.4.18(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0): - dependencies: - esbuild: 0.21.5 - postcss: 8.5.1 - rollup: 4.31.0 - optionalDependencies: - '@types/node': 20.9.0 - fsevents: 2.3.3 - sass: 1.83.4 - terser: 5.37.0 - vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0): dependencies: esbuild: 0.21.5 @@ -13656,41 +12937,6 @@ snapshots: optionalDependencies: vite: 5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) - vitest@1.6.0(@types/node@20.9.0)(happy-dom@18.0.1)(sass@1.83.4)(terser@5.37.0): - dependencies: - '@vitest/expect': 1.6.0 - '@vitest/runner': 1.6.0 - '@vitest/snapshot': 1.6.0 - '@vitest/spy': 1.6.0 - '@vitest/utils': 1.6.0 - acorn-walk: 8.3.4 - chai: 4.5.0 - debug: 4.4.0(supports-color@8.1.1) - execa: 8.0.1 - local-pkg: 0.5.1 - magic-string: 0.30.17 - pathe: 1.1.2 - picocolors: 1.1.1 - std-env: 3.8.0 - strip-literal: 2.1.1 - tinybench: 2.9.0 - tinypool: 0.8.4 - vite: 5.4.13(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0) - vite-node: 1.6.0(@types/node@20.9.0)(sass@1.83.4)(terser@5.37.0) - why-is-node-running: 2.3.0 - optionalDependencies: - '@types/node': 20.9.0 - happy-dom: 18.0.1 - transitivePeerDependencies: - - less - - lightningcss - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - - terser - vscode-jsonrpc@6.0.0: {} vscode-languageclient@7.0.0: @@ -13856,11 +13102,6 @@ snapshots: dependencies: isexe: 2.0.0 - why-is-node-running@2.3.0: - dependencies: - siginfo: 2.0.0 - stackback: 0.0.2 - word-wrap@1.2.5: {} wrap-ansi@6.2.0: @@ -13889,17 +13130,6 @@ snapshots: wrappy@1.0.2: {} - write-file-atomic@2.4.3: - dependencies: - graceful-fs: 4.2.11 - imurmurhash: 0.1.4 - signal-exit: 3.0.7 - - write-file-atomic@5.0.1: - dependencies: - imurmurhash: 0.1.4 - signal-exit: 4.1.0 - ws@8.18.0: {} xml-name-validator@4.0.0: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 2a9556145e..3e2f2f38af 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -2,4 +2,3 @@ packages: - 'packages/*' - 'packages-deprecated/*' - 'demos' - - 'codemods/*' From 6137cdc1f7e92701aa04dbd5d01812db0120255a Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 11 Jul 2025 19:54:14 +0200 Subject: [PATCH 266/629] fix problems with keydown events being blocked by drag handle plugin (#6613) * fix problems with keydown events being blocked by drag handle plugin * add comment --- .changeset/tidy-humans-join.md | 5 +++++ packages/extension-drag-handle/src/drag-handle-plugin.ts | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 .changeset/tidy-humans-join.md diff --git a/.changeset/tidy-humans-join.md b/.changeset/tidy-humans-join.md new file mode 100644 index 0000000000..e68a1660ff --- /dev/null +++ b/.changeset/tidy-humans-join.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-drag-handle': patch +--- + +Fix a bug where new keydown event handling would prevent other events diff --git a/packages/extension-drag-handle/src/drag-handle-plugin.ts b/packages/extension-drag-handle/src/drag-handle-plugin.ts index 2c209e7703..af9f32566b 100644 --- a/packages/extension-drag-handle/src/drag-handle-plugin.ts +++ b/packages/extension-drag-handle/src/drag-handle-plugin.ts @@ -298,7 +298,8 @@ export const DragHandlePlugin = ({ currentNodePos = -1 onNodeChange?.({ editor, node: null, pos: -1 }) - return true + // We want to still continue with other keydown events. + return false } return false From a85973605cf0314bbfa4c7528d2b30f942accf17 Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Fri, 11 Jul 2025 20:14:01 +0200 Subject: [PATCH 267/629] remove codemods from changesets --- .changeset/beige-llamas-shout.md | 1 - .changeset/cuddly-impalas-heal.md | 1 - .changeset/pre.json | 1 - .changeset/rude-ads-battle.md | 1 - 4 files changed, 4 deletions(-) diff --git a/.changeset/beige-llamas-shout.md b/.changeset/beige-llamas-shout.md index 9e324286d8..16a0787e67 100644 --- a/.changeset/beige-llamas-shout.md +++ b/.changeset/beige-llamas-shout.md @@ -15,7 +15,6 @@ '@tiptap/extension-history': patch '@tiptap/extension-focus': patch '@tiptap/extension-horizontal-rule': patch -'tiptap-2-migrate-imports': patch '@tiptap/extension-collaboration': patch '@tiptap/extension-floating-menu': patch '@tiptap/extension-ordered-list': patch diff --git a/.changeset/cuddly-impalas-heal.md b/.changeset/cuddly-impalas-heal.md index 7855af1099..e02ad0544d 100644 --- a/.changeset/cuddly-impalas-heal.md +++ b/.changeset/cuddly-impalas-heal.md @@ -1,5 +1,4 @@ --- -'tiptap-2-migrate-imports': patch 'tiptap-demos': patch '@tiptap/core': patch '@tiptap/extension-blockquote': patch diff --git a/.changeset/pre.json b/.changeset/pre.json index 9fc74c248d..07c9e9d0de 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -2,7 +2,6 @@ "mode": "pre", "tag": "beta", "initialVersions": { - "tiptap-2-migrate-imports": "1.0.1-beta.0", "tiptap-demos": "3.0.0-beta.0", "@tiptap/extension-character-count": "3.0.0-beta.0", "@tiptap/extension-dropcursor": "3.0.0-beta.0", diff --git a/.changeset/rude-ads-battle.md b/.changeset/rude-ads-battle.md index 2684949abf..4497fea01f 100644 --- a/.changeset/rude-ads-battle.md +++ b/.changeset/rude-ads-battle.md @@ -15,7 +15,6 @@ '@tiptap/extension-history': patch '@tiptap/extension-focus': patch '@tiptap/extension-horizontal-rule': patch -'tiptap-2-migrate-imports': patch '@tiptap/extension-collaboration': patch '@tiptap/extension-floating-menu': patch '@tiptap/extension-ordered-list': patch From 669075efd0859c573eb3c01a71815ff3c69ff929 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 11 Jul 2025 22:13:57 +0200 Subject: [PATCH 268/629] chore(release): publish a new pre-release version (beta) (#6614) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/pre.json | 1 + .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 6 ++-- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- pnpm-lock.yaml | 2 +- 140 files changed, 553 insertions(+), 72 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 07c9e9d0de..b2b54ca873 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -159,6 +159,7 @@ "thick-buckets-cross", "thirty-rockets-act", "tidy-fireants-hang", + "tidy-humans-join", "tiny-tomatoes-hope", "twelve-peas-smile", "twenty-moose-invent", diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 9f3ad78f76..cb5e889d82 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 3ba80d82d3..cb813d4e94 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index ffa5b81f55..127a4cf8e7 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 8c64c629a5..6177804937 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index e1fd6acdad..ca851a688c 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 0d3c6e0069..aef4a2d65a 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extensions": "3.0.0-beta.29" + "@tiptap/extensions": "3.0.0-beta.30" }, "peerDependencies": { - "@tiptap/extensions": "3.0.0-beta.29" + "@tiptap/extensions": "3.0.0-beta.30" }, "repository": { "type": "git", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 44a51547e5..a375e827e6 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 4cf4727005..107e0ca570 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 01be14b184..c2d24e077d 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 7fd9a20374..85493afc1c 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 66d4a47205..cfbfcb20f2 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 7939155f88..4ed944538e 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 1127fdb935..380801ba18 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 1a79215ee5..8667e2c1c0 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 05b3d45f48..3b0d25d537 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extensions@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index e04b41d97f..959c9c4309 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 333ea8f317..992b807ace 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 32124348a2..49f143bd37 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 291fc25606..439abbe5c6 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 1edc8b8251..6f2aebbc04 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index b594f21255..0c2087f7ce 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-table@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 0f9e4c0c1c..0af874743a 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 6c73e16b2d..38d1470d78 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index d5a9c02686..06d2c0b399 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 2185cbc8c9..1eef92ddee 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 9acd5b8a0d..7d087dd494 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index bb77a1eb94..2d44a41ce7 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 6bd853607f..1f4471701a 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 940cf0f50a..cfa9feeb00 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 3ad76dd2df..dad57a969d 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 76503f6a3d..45dcbbb2d2 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 6351124321..b0ef0c94b9 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index d07ad94199..f1185e68b4 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 6779f1875b..9be04cd0df 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index fa1232a73a..54a5eb971a 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 487d2b0787..a924d0d847 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 7eff355b2c..28944e3868 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/extension-code-block@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index bbf8a275cf..ddbe47a4fe 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index b1bc17c642..28ca1b86d2 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 53de22d56f..b98e36384c 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 7703d9006b..e8d27c595c 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index dae37401db..7a2867f830 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 5edc701c63..d8e7fe5477 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index be473a9197..738ea3afea 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 3793fad9f4..465b99df68 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index d127dc3605..3e481fbc1b 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 90d2250bd8..24e4100528 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 669eb6ac4a..941403edfd 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index c9c70285ee..ae866f0dd3 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/extension-text-style@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 9ddbf993bd..8d9d00a045 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index ab695b7d2e..fb1b7ea75d 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 7a1155e95e..7d12bc6f68 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 723e7318fa..112c5b3a13 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.0.0-beta.30 + +### Patch Changes + +- Updated dependencies [6137cdc] + - @tiptap/extension-drag-handle@3.0.0-beta.30 + - @tiptap/pm@3.0.0-beta.30 + - @tiptap/react@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index d85f03a675..d1081fc8b1 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index a45ee8f93d..a367fe5f08 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.0.0-beta.30 + +### Patch Changes + +- Updated dependencies [6137cdc] + - @tiptap/extension-drag-handle@3.0.0-beta.30 + - @tiptap/pm@3.0.0-beta.30 + - @tiptap/vue-2@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 1febe88a6c..386ec8125a 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index ce0b3e9f21..d90599a17e 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.0.0-beta.30 + +### Patch Changes + +- Updated dependencies [6137cdc] + - @tiptap/extension-drag-handle@3.0.0-beta.30 + - @tiptap/pm@3.0.0-beta.30 + - @tiptap/vue-3@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 88c376fd76..9a0e9a0026 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 54ad7582ae..e6844350dd 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.0.0-beta.30 + +### Patch Changes + +- 6137cdc: Fix a bug where new keydown event handling would prevent other events + - @tiptap/core@3.0.0-beta.30 + - @tiptap/extension-collaboration@3.0.0-beta.30 + - @tiptap/extension-node-range@3.0.0-beta.30 + - @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Minor Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 281ca0b06a..2637f5cbe8 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index b37fb7a606..e60c4d1768 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 +- @tiptap/suggestion@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 49e4760ca7..2cbd6a0676 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index f52d208ac8..11ff2727ee 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/extension-text-style@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index d332c245b2..54bb6908d8 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index e3dd9c4637..60fe8f0e96 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index f67d015711..5abf632cb4 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index eab500ccd0..8d3ee1cbc8 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 4ff84b4fa6..5fc19ca4b6 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 3183e59ba5..65bf43cc5f 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 9d1e7a1709..8b72e60da1 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 2b9467a627..fb37560baf 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 26ff2b17ac..4699c039ff 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 914f5e43b6..46dfab5f71 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index de3647e35b..c6606f82b0 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 01a54542bc..4ba2f22739 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 3ae2c20a14..9f1124f308 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index e9a0e229fa..d4faecf98f 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 5984ecc30d..d7b1dc7431 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index e47f0ba35e..c38a958596 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/extension-text-style@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 2c5e40d797..7cec3c5485 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index a712b94753..d73fe08d2d 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 49e0074683..db01ea069b 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 6c2a67316d..d865c4d543 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Minor Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 240a80bd41..065a59f10e 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index f550b77ebb..0d736621e5 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 3e197d5308..67701add1a 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 564841835c..41e7a55996 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index d691281bbd..568464cf59 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 41cb9bfd58..726f8f4e9e 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 +- @tiptap/suggestion@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 082ddbece7..6fe4e080d3 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index a73e14c8eb..399c00e3f3 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 6207ad91e2..320c0611e2 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index ff2fbe4dda..32857c670e 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-list@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 1af0a4483c..5ccba345fe 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 9ccd28b253..24ef757e05 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 340ee8d848..bba04ab531 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index fef715892b..a77ab49164 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index b1fa586b4a..88b5d9d2d4 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 704fe58da2..8099b09edd 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 41abe8861c..c9acc91774 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 8272b163fd..08f50c4cee 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 0c44b2bda1..de7407f5cf 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 87fb379780..6e1aafb5ba 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 8b9f0bed51..13500feb3b 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 1c454c13b0..e99a1d8a79 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 2ae100c972..657c57fa9b 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 7eaea03146..9ee815416a 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 71ee8cf586..c55bf53922 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 2acf9e459f..a105994892 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 8488702f0d..0aff5bd49b 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 6ea55a3f11..3eae3b29cb 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 4e5982a22f..b8fd84d2bd 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index d3c294833c..89d58a45b9 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index d2f0889599..7e3e10398e 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index d2a8e9981c..e87363d2e3 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index c7254dec65..fc5efa605c 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index d14a189a20..c0e18352ac 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index c0ce68ef1b..1edd9a0412 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index f411fc81e0..dfed72cf25 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index b84fdf543e..155d2d7a0c 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index a149c44d8e..104e461166 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 74219f2b96..805f8d0a4d 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 61dbd4c172..028905de5d 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index def9591572..ff3bc6b413 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 0b59caa618..19a2859cdb 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.0-beta.30 + ## 3.0.0-beta.29 ## 3.0.0-beta.28 diff --git a/packages/pm/package.json b/packages/pm/package.json index 20cc36987c..073cdc0f1d 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 69cc2bbde9..b7696576fa 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index e4723387f0..ad8e014f03 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 77c3fa4718..5414a338bb 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.0.0-beta.30 +- @tiptap/extension-gapcursor@3.0.0-beta.30 +- @tiptap/extension-list-item@3.0.0-beta.30 +- @tiptap/extension-list-keymap@3.0.0-beta.30 +- @tiptap/core@3.0.0-beta.30 +- @tiptap/extension-blockquote@3.0.0-beta.30 +- @tiptap/extension-bold@3.0.0-beta.30 +- @tiptap/extension-bullet-list@3.0.0-beta.30 +- @tiptap/extension-code@3.0.0-beta.30 +- @tiptap/extension-code-block@3.0.0-beta.30 +- @tiptap/extension-document@3.0.0-beta.30 +- @tiptap/extension-hard-break@3.0.0-beta.30 +- @tiptap/extension-heading@3.0.0-beta.30 +- @tiptap/extension-horizontal-rule@3.0.0-beta.30 +- @tiptap/extension-italic@3.0.0-beta.30 +- @tiptap/extension-link@3.0.0-beta.30 +- @tiptap/extension-list@3.0.0-beta.30 +- @tiptap/extension-ordered-list@3.0.0-beta.30 +- @tiptap/extension-paragraph@3.0.0-beta.30 +- @tiptap/extension-strike@3.0.0-beta.30 +- @tiptap/extension-text@3.0.0-beta.30 +- @tiptap/extension-underline@3.0.0-beta.30 +- @tiptap/extensions@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 2f3bbcb740..4653bbd8cb 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 2379b666c7..ba9d0a395a 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index dde77bc9f8..2853e02608 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 359c6d6f44..0862005145 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Minor Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index d7fcd1ad8f..c7b1f70f16 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index eacc66f508..cd8ea6ecde 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 3f5ce8a67e..5e96f982cf 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 08b2feed36..7f50e0f695 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.0-beta.30 + +### Patch Changes + +- @tiptap/core@3.0.0-beta.30 +- @tiptap/pm@3.0.0-beta.30 + ## 3.0.0-beta.29 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index d7b14b8abf..5004eab1f1 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.29", + "version": "3.0.0-beta.30", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 88a511432b..bfd9c9cfda 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -319,7 +319,7 @@ importers: packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.29 + specifier: 3.0.0-beta.30 version: link:../../packages/extensions packages-deprecated/extension-gapcursor: From b6bc7a69672e42c68faefed18cd24233eb996e2a Mon Sep 17 00:00:00 2001 From: Dominik Biedebach Date: Sat, 12 Jul 2025 15:59:50 +0200 Subject: [PATCH 269/629] move out of pre-version --- .changeset/pre.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index b2b54ca873..6b1d39cbda 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -1,5 +1,5 @@ { - "mode": "pre", + "mode": "exit", "tag": "beta", "initialVersions": { "tiptap-demos": "3.0.0-beta.0", From e17e337e58d56587db12c5a7c3d76279ccd99d59 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 12 Jul 2025 16:50:22 +0200 Subject: [PATCH 270/629] Publish a new stable version (#6620) * chore(release): publish a new release version * changelog: 3.0.0 to 3.0.1 * changelog: 3.0.0 to 3.0.1 * update package.json versions * update dependencies * update pnpm-lock --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Dominik Biedebach --- .changeset/angry-ladybugs-bow.md | 5 - .changeset/beige-llamas-shout.md | 61 ---- .changeset/big-wolves-design.md | 5 - .changeset/blue-shrimps-rush.md | 273 --------------- .changeset/chilled-candles-design.md | 5 - .changeset/chilled-trees-agree.md | 59 ---- .changeset/chilly-lemons-remember.md | 123 ------- .changeset/clear-poets-occur.md | 5 - .changeset/clever-bags-end.md | 5 - .changeset/cool-bananas-breathe.md | 5 - .changeset/cool-singers-call.md | 5 - .changeset/cuddly-impalas-heal.md | 62 ---- .changeset/curly-adults-move.md | 5 - .changeset/curly-wombats-train.md | 5 - .changeset/dirty-bats-look.md | 36 -- .changeset/dirty-colts-shave.md | 130 ------- .changeset/dirty-deers-sip.md | 5 - .changeset/dry-monkeys-learn.md | 5 - .changeset/early-guests-melt.md | 8 - .changeset/eighty-cats-dream.md | 5 - .changeset/eighty-gifts-matter.md | 6 - .changeset/fair-jars-shout.md | 5 - .changeset/fast-foxes-mate.md | 5 - .changeset/five-rules-pull.md | 5 - .changeset/floppy-hotels-itch.md | 5 - .changeset/fresh-ads-nail.md | 5 - .changeset/fresh-geckos-exercise.md | 5 - .changeset/funny-teams-guess.md | 5 - .changeset/gold-ads-own.md | 152 --------- .changeset/good-trainers-train.md | 5 - .changeset/great-terms-jam.md | 8 - .changeset/green-wolves-arrive.md | 20 -- .changeset/healthy-pigs-work.md | 5 - .changeset/hip-teachers-dream.md | 5 - .changeset/kind-years-invite.md | 5 - .changeset/large-kangaroos-battle.md | 30 -- .changeset/large-points-love.md | 5 - .changeset/lazy-needles-train.md | 5 - .changeset/lucky-bears-exercise.md | 5 - .changeset/many-laws-vanish.md | 5 - .changeset/many-trainers-yawn.md | 5 - .changeset/modern-kangaroos-teach.md | 5 - .changeset/moody-geckos-sort.md | 5 - .changeset/moody-insects-guess.md | 5 - .changeset/nervous-hairs-walk.md | 5 - .changeset/nine-dragons-admire.md | 6 - .changeset/olive-jeans-love.md | 5 - .changeset/orange-spoons-rescue.md | 5 - .changeset/perfect-rice-vanish.md | 5 - .changeset/popular-geckos-pay.md | 5 - .changeset/pre.json | 175 ---------- .changeset/purple-boxes-switch.md | 5 - .changeset/quick-days-matter.md | 5 - .changeset/quiet-falcons-study.md | 5 - .changeset/real-pianos-vanish.md | 6 - .changeset/red-ants-wonder.md | 66 ---- .changeset/red-rivers-exist.md | 107 ------ .changeset/rich-jeans-check.md | 5 - .changeset/rude-ads-battle.md | 62 ---- .changeset/selfish-rings-hang.md | 6 - .changeset/serious-rings-end.md | 9 - .changeset/seven-llamas-love.md | 160 --------- .changeset/shiny-days-rhyme.md | 5 - .changeset/shiny-impalas-remember.md | 5 - .changeset/shiny-rats-wash.md | 24 -- .changeset/silly-plants-sin.md | 5 - .changeset/silver-adults-fold.md | 5 - .changeset/silver-roses-joke.md | 5 - .changeset/sixty-news-ring.md | 5 - .changeset/slow-mails-vanish.md | 5 - .changeset/small-otters-bake.md | 5 - .changeset/smooth-carrots-beam.md | 5 - .changeset/smooth-swans-exist.md | 5 - .changeset/spicy-horses-smoke.md | 5 - .changeset/spotty-cobras-shake.md | 5 - .changeset/stale-ties-press.md | 5 - .changeset/sweet-ravens-pay.md | 5 - .changeset/swift-dolphins-think.md | 5 - .changeset/tall-needles-fail.md | 5 - .changeset/tall-singers-peel.md | 7 - .changeset/tame-worms-applaud.md | 5 - .changeset/thick-buckets-cross.md | 30 -- .changeset/thirty-rockets-act.md | 5 - .changeset/tidy-fireants-hang.md | 5 - .changeset/tidy-humans-join.md | 5 - .changeset/tiny-tomatoes-hope.md | 5 - .changeset/twelve-peas-smile.md | 5 - .changeset/twenty-moose-invent.md | 13 - .changeset/two-carrots-leave.md | 5 - .changeset/weak-books-eat.md | 14 - .changeset/wet-rice-suffer.md | 5 - .changeset/wise-berries-hide.md | 5 - .changeset/wise-books-kiss.md | 5 - .changeset/wise-carpets-unite.md | 5 - .changeset/wise-suns-dress.md | 5 - .changeset/witty-eels-cheer.md | 9 - demos/CHANGELOG.md | 11 + demos/package.json | 4 +- .../extension-character-count/CHANGELOG.md | 19 ++ .../extension-character-count/package.json | 6 +- .../extension-dropcursor/CHANGELOG.md | 19 ++ .../extension-dropcursor/package.json | 6 +- .../extension-focus/CHANGELOG.md | 19 ++ .../extension-focus/package.json | 6 +- .../extension-gapcursor/CHANGELOG.md | 19 ++ .../extension-gapcursor/package.json | 6 +- .../extension-history/CHANGELOG.md | 20 ++ .../extension-history/package.json | 6 +- .../extension-list-item/CHANGELOG.md | 169 ++++++++++ .../extension-list-item/package.json | 6 +- .../extension-list-keymap/CHANGELOG.md | 169 ++++++++++ .../extension-list-keymap/package.json | 6 +- .../extension-placeholder/CHANGELOG.md | 20 ++ .../extension-placeholder/package.json | 6 +- .../extension-table-cell/CHANGELOG.md | 144 ++++++++ .../extension-table-cell/package.json | 6 +- .../extension-table-header/CHANGELOG.md | 144 ++++++++ .../extension-table-header/package.json | 6 +- .../extension-table-row/CHANGELOG.md | 144 ++++++++ .../extension-table-row/package.json | 6 +- .../extension-task-item/CHANGELOG.md | 17 + .../extension-task-item/package.json | 6 +- .../extension-task-list/CHANGELOG.md | 169 ++++++++++ .../extension-task-list/package.json | 6 +- packages/core/CHANGELOG.md | 315 +++++++++++++++++ packages/core/package.json | 6 +- packages/extension-blockquote/CHANGELOG.md | 46 +++ packages/extension-blockquote/package.json | 6 +- packages/extension-bold/CHANGELOG.md | 46 +++ packages/extension-bold/package.json | 6 +- packages/extension-bubble-menu/CHANGELOG.md | 79 +++++ packages/extension-bubble-menu/package.json | 10 +- packages/extension-bullet-list/CHANGELOG.md | 169 ++++++++++ packages/extension-bullet-list/package.json | 6 +- .../CHANGELOG.md | 50 +++ .../package.json | 14 +- packages/extension-code-block/CHANGELOG.md | 49 +++ packages/extension-code-block/package.json | 10 +- packages/extension-code/CHANGELOG.md | 46 +++ packages/extension-code/package.json | 6 +- .../CHANGELOG.md | 52 +++ .../package.json | 10 +- packages/extension-collaboration/CHANGELOG.md | 51 +++ packages/extension-collaboration/package.json | 10 +- packages/extension-color/CHANGELOG.md | 21 ++ packages/extension-color/package.json | 6 +- packages/extension-details/CHANGELOG.md | 67 ++++ packages/extension-details/package.json | 14 +- packages/extension-document/CHANGELOG.md | 46 +++ packages/extension-document/package.json | 6 +- .../extension-drag-handle-react/CHANGELOG.md | 50 +++ .../extension-drag-handle-react/package.json | 14 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 41 +++ .../extension-drag-handle-vue-2/package.json | 14 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 42 +++ .../extension-drag-handle-vue-3/package.json | 14 +- packages/extension-drag-handle/CHANGELOG.md | 68 ++++ packages/extension-drag-handle/package.json | 18 +- packages/extension-emoji/CHANGELOG.md | 66 ++++ packages/extension-emoji/package.json | 14 +- packages/extension-file-handler/CHANGELOG.md | 66 ++++ packages/extension-file-handler/package.json | 14 +- packages/extension-floating-menu/CHANGELOG.md | 77 +++++ packages/extension-floating-menu/package.json | 10 +- packages/extension-font-family/CHANGELOG.md | 21 ++ packages/extension-font-family/package.json | 6 +- packages/extension-hard-break/CHANGELOG.md | 46 +++ packages/extension-hard-break/package.json | 6 +- packages/extension-heading/CHANGELOG.md | 46 +++ packages/extension-heading/package.json | 6 +- packages/extension-highlight/CHANGELOG.md | 46 +++ packages/extension-highlight/package.json | 6 +- .../extension-horizontal-rule/CHANGELOG.md | 50 +++ .../extension-horizontal-rule/package.json | 10 +- packages/extension-image/CHANGELOG.md | 50 +++ packages/extension-image/package.json | 6 +- .../CHANGELOG.md | 70 ++++ .../package.json | 14 +- packages/extension-italic/CHANGELOG.md | 46 +++ packages/extension-italic/package.json | 6 +- packages/extension-link/CHANGELOG.md | 56 +++ packages/extension-link/package.json | 10 +- packages/extension-list/CHANGELOG.md | 46 +++ packages/extension-list/package.json | 10 +- packages/extension-mathematics/CHANGELOG.md | 91 +++++ packages/extension-mathematics/package.json | 10 +- packages/extension-mention/CHANGELOG.md | 83 +++++ packages/extension-mention/package.json | 14 +- packages/extension-node-range/CHANGELOG.md | 61 ++++ packages/extension-node-range/package.json | 10 +- packages/extension-ordered-list/CHANGELOG.md | 169 ++++++++++ packages/extension-ordered-list/package.json | 6 +- packages/extension-paragraph/CHANGELOG.md | 46 +++ packages/extension-paragraph/package.json | 6 +- packages/extension-strike/CHANGELOG.md | 46 +++ packages/extension-strike/package.json | 6 +- packages/extension-subscript/CHANGELOG.md | 49 +++ packages/extension-subscript/package.json | 10 +- packages/extension-superscript/CHANGELOG.md | 49 +++ packages/extension-superscript/package.json | 10 +- .../extension-table-of-contents/CHANGELOG.md | 61 ++++ .../extension-table-of-contents/package.json | 10 +- packages/extension-table/CHANGELOG.md | 175 ++++++++++ packages/extension-table/package.json | 10 +- packages/extension-text-align/CHANGELOG.md | 47 +++ packages/extension-text-align/package.json | 6 +- packages/extension-text-style/CHANGELOG.md | 154 +++++++++ packages/extension-text-style/package.json | 6 +- packages/extension-text/CHANGELOG.md | 46 +++ packages/extension-text/package.json | 6 +- packages/extension-typography/CHANGELOG.md | 46 +++ packages/extension-typography/package.json | 6 +- packages/extension-underline/CHANGELOG.md | 46 +++ packages/extension-underline/package.json | 6 +- packages/extension-unique-id/CHANGELOG.md | 61 ++++ packages/extension-unique-id/package.json | 10 +- packages/extension-youtube/CHANGELOG.md | 47 +++ packages/extension-youtube/package.json | 6 +- packages/extensions/CHANGELOG.md | 173 ++++++++++ packages/extensions/package.json | 10 +- packages/html/CHANGELOG.md | 54 +++ packages/html/package.json | 10 +- packages/pm/CHANGELOG.md | 17 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 237 +++++++++++++ packages/react/package.json | 14 +- packages/starter-kit/CHANGELOG.md | 91 +++++ packages/starter-kit/package.json | 50 +-- packages/static-renderer/CHANGELOG.md | 318 ++++++++++++++++++ packages/static-renderer/package.json | 10 +- packages/suggestion/CHANGELOG.md | 79 +++++ packages/suggestion/package.json | 10 +- packages/vue-2/CHANGELOG.md | 80 +++++ packages/vue-2/package.json | 14 +- packages/vue-3/CHANGELOG.md | 228 +++++++++++++ packages/vue-3/package.json | 14 +- pnpm-lock.yaml | 303 +++++++++-------- 237 files changed, 6043 insertions(+), 2465 deletions(-) delete mode 100644 .changeset/angry-ladybugs-bow.md delete mode 100644 .changeset/beige-llamas-shout.md delete mode 100644 .changeset/big-wolves-design.md delete mode 100644 .changeset/blue-shrimps-rush.md delete mode 100644 .changeset/chilled-candles-design.md delete mode 100644 .changeset/chilled-trees-agree.md delete mode 100644 .changeset/chilly-lemons-remember.md delete mode 100644 .changeset/clear-poets-occur.md delete mode 100644 .changeset/clever-bags-end.md delete mode 100644 .changeset/cool-bananas-breathe.md delete mode 100644 .changeset/cool-singers-call.md delete mode 100644 .changeset/cuddly-impalas-heal.md delete mode 100644 .changeset/curly-adults-move.md delete mode 100644 .changeset/curly-wombats-train.md delete mode 100644 .changeset/dirty-bats-look.md delete mode 100644 .changeset/dirty-colts-shave.md delete mode 100644 .changeset/dirty-deers-sip.md delete mode 100644 .changeset/dry-monkeys-learn.md delete mode 100644 .changeset/early-guests-melt.md delete mode 100644 .changeset/eighty-cats-dream.md delete mode 100644 .changeset/eighty-gifts-matter.md delete mode 100644 .changeset/fair-jars-shout.md delete mode 100644 .changeset/fast-foxes-mate.md delete mode 100644 .changeset/five-rules-pull.md delete mode 100644 .changeset/floppy-hotels-itch.md delete mode 100644 .changeset/fresh-ads-nail.md delete mode 100644 .changeset/fresh-geckos-exercise.md delete mode 100644 .changeset/funny-teams-guess.md delete mode 100644 .changeset/gold-ads-own.md delete mode 100644 .changeset/good-trainers-train.md delete mode 100644 .changeset/great-terms-jam.md delete mode 100644 .changeset/green-wolves-arrive.md delete mode 100644 .changeset/healthy-pigs-work.md delete mode 100644 .changeset/hip-teachers-dream.md delete mode 100644 .changeset/kind-years-invite.md delete mode 100644 .changeset/large-kangaroos-battle.md delete mode 100644 .changeset/large-points-love.md delete mode 100644 .changeset/lazy-needles-train.md delete mode 100644 .changeset/lucky-bears-exercise.md delete mode 100644 .changeset/many-laws-vanish.md delete mode 100644 .changeset/many-trainers-yawn.md delete mode 100644 .changeset/modern-kangaroos-teach.md delete mode 100644 .changeset/moody-geckos-sort.md delete mode 100644 .changeset/moody-insects-guess.md delete mode 100644 .changeset/nervous-hairs-walk.md delete mode 100644 .changeset/nine-dragons-admire.md delete mode 100644 .changeset/olive-jeans-love.md delete mode 100644 .changeset/orange-spoons-rescue.md delete mode 100644 .changeset/perfect-rice-vanish.md delete mode 100644 .changeset/popular-geckos-pay.md delete mode 100644 .changeset/pre.json delete mode 100644 .changeset/purple-boxes-switch.md delete mode 100644 .changeset/quick-days-matter.md delete mode 100644 .changeset/quiet-falcons-study.md delete mode 100644 .changeset/real-pianos-vanish.md delete mode 100644 .changeset/red-ants-wonder.md delete mode 100644 .changeset/red-rivers-exist.md delete mode 100644 .changeset/rich-jeans-check.md delete mode 100644 .changeset/rude-ads-battle.md delete mode 100644 .changeset/selfish-rings-hang.md delete mode 100644 .changeset/serious-rings-end.md delete mode 100644 .changeset/seven-llamas-love.md delete mode 100644 .changeset/shiny-days-rhyme.md delete mode 100644 .changeset/shiny-impalas-remember.md delete mode 100644 .changeset/shiny-rats-wash.md delete mode 100644 .changeset/silly-plants-sin.md delete mode 100644 .changeset/silver-adults-fold.md delete mode 100644 .changeset/silver-roses-joke.md delete mode 100644 .changeset/sixty-news-ring.md delete mode 100644 .changeset/slow-mails-vanish.md delete mode 100644 .changeset/small-otters-bake.md delete mode 100644 .changeset/smooth-carrots-beam.md delete mode 100644 .changeset/smooth-swans-exist.md delete mode 100644 .changeset/spicy-horses-smoke.md delete mode 100644 .changeset/spotty-cobras-shake.md delete mode 100644 .changeset/stale-ties-press.md delete mode 100644 .changeset/sweet-ravens-pay.md delete mode 100644 .changeset/swift-dolphins-think.md delete mode 100644 .changeset/tall-needles-fail.md delete mode 100644 .changeset/tall-singers-peel.md delete mode 100644 .changeset/tame-worms-applaud.md delete mode 100644 .changeset/thick-buckets-cross.md delete mode 100644 .changeset/thirty-rockets-act.md delete mode 100644 .changeset/tidy-fireants-hang.md delete mode 100644 .changeset/tidy-humans-join.md delete mode 100644 .changeset/tiny-tomatoes-hope.md delete mode 100644 .changeset/twelve-peas-smile.md delete mode 100644 .changeset/twenty-moose-invent.md delete mode 100644 .changeset/two-carrots-leave.md delete mode 100644 .changeset/weak-books-eat.md delete mode 100644 .changeset/wet-rice-suffer.md delete mode 100644 .changeset/wise-berries-hide.md delete mode 100644 .changeset/wise-books-kiss.md delete mode 100644 .changeset/wise-carpets-unite.md delete mode 100644 .changeset/wise-suns-dress.md delete mode 100644 .changeset/witty-eels-cheer.md diff --git a/.changeset/angry-ladybugs-bow.md b/.changeset/angry-ladybugs-bow.md deleted file mode 100644 index 55fd0b3205..0000000000 --- a/.changeset/angry-ladybugs-bow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': patch ---- - -Added full import path for external storage sync shim diff --git a/.changeset/beige-llamas-shout.md b/.changeset/beige-llamas-shout.md deleted file mode 100644 index 16a0787e67..0000000000 --- a/.changeset/beige-llamas-shout.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -'@tiptap/extension-character-count': patch -'@tiptap/extension-table-header': patch -'@tiptap/extension-list-keymap': patch -'@tiptap/extension-placeholder': patch -'@tiptap/extension-dropcursor': patch -'@tiptap/extension-table-cell': patch -'@tiptap/extension-gapcursor': patch -'@tiptap/extension-list-item': patch -'@tiptap/extension-table-row': patch -'@tiptap/extension-task-item': patch -'@tiptap/extension-task-list': patch -'@tiptap/extension-code-block-lowlight': patch -'@tiptap/extension-collaboration-caret': patch -'@tiptap/extension-history': patch -'@tiptap/extension-focus': patch -'@tiptap/extension-horizontal-rule': patch -'@tiptap/extension-collaboration': patch -'@tiptap/extension-floating-menu': patch -'@tiptap/extension-ordered-list': patch -'@tiptap/extension-bubble-menu': patch -'@tiptap/extension-bullet-list': patch -'@tiptap/extension-font-family': patch -'@tiptap/extension-superscript': patch -'@tiptap/extension-blockquote': patch -'@tiptap/extension-code-block': patch -'@tiptap/extension-hard-break': patch -'@tiptap/extension-text-align': patch -'@tiptap/extension-text-style': patch -'@tiptap/extension-typography': patch -'@tiptap/extension-highlight': patch -'@tiptap/extension-paragraph': patch -'@tiptap/extension-subscript': patch -'@tiptap/extension-underline': patch -'@tiptap/extension-document': patch -'@tiptap/extension-heading': patch -'@tiptap/extension-mention': patch -'@tiptap/extension-youtube': patch -'@tiptap/extension-italic': patch -'@tiptap/extension-strike': patch -'@tiptap/extension-color': patch -'@tiptap/extension-image': patch -'@tiptap/extension-table': patch -'@tiptap/static-renderer': patch -'@tiptap/extension-bold': patch -'@tiptap/extension-code': patch -'@tiptap/extension-link': patch -'@tiptap/extension-list': patch -'@tiptap/extension-text': patch -'@tiptap/starter-kit': patch -'@tiptap/extensions': patch -'@tiptap/suggestion': patch -'@tiptap/react': patch -'@tiptap/vue-2': patch -'@tiptap/vue-3': patch -'@tiptap/core': patch -'@tiptap/html': patch -'@tiptap/pm': patch ---- - -We are now using pnpm package aliases for versions to enable better version pinning for the monorepository diff --git a/.changeset/big-wolves-design.md b/.changeset/big-wolves-design.md deleted file mode 100644 index c68fcf2185..0000000000 --- a/.changeset/big-wolves-design.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-placeholder': major ---- - -Remove the `considerAnyAsEmpty` option from placeholder, which has been unused since version 2.5 diff --git a/.changeset/blue-shrimps-rush.md b/.changeset/blue-shrimps-rush.md deleted file mode 100644 index ad7eb3ac6c..0000000000 --- a/.changeset/blue-shrimps-rush.md +++ /dev/null @@ -1,273 +0,0 @@ ---- -'@tiptap/static-renderer': major ---- - -# @tiptap/static-renderer - -The `@tiptap/static-renderer` package provides a way to render a Tiptap/ProseMirror document to any target format, like an HTML string, a React component, or even markdown. It does so, by taking the original JSON of a document (or document partial) and attempts to map this to the output format, by matching against a list of nodes & marks. - -## Why Static Render? - -The main use case for static rendering is to render a Tiptap/ProseMirror document on the server-side, for example in a Next.js or Nuxt.js application. This way, you can render the content of your editor to HTML before sending it to the client, which can improve the performance of your application. - -Another use case is to render the content of your editor to another format like markdown, which can be useful if you want to send it to a markdown-based API. - -But what makes it static? The static renderer doesn't require a browser or a DOM to render the content. It's a pure JavaScript function that takes a document (as JSON or Prosemirror Node instance) and returns the target format back. - -## Example - -Render a Tiptap document to an HTML string: - -```js -import StarterKit from '@tiptap/starter-kit' -import { renderToHTMLString } from '@tiptap/static-renderer' - -renderToHTMLString({ - extensions: [StarterKit], // using your extensions - // we can map nodes and marks to HTML elements - options: { - nodeMapping: { - // custom node mappings - }, - markMapping: { - // custom mark mappings - }, - unhandledNode: ({ node }) => { - // handle unhandled nodes - return `[unknown node ${node.type.name}]` - }, - unhandledMark: ({ mark }) => { - // handle unhandled marks - return `[unknown node ${mark.type.name}]` - }, - }, - // the source content to render - content: { - type: 'doc', - content: [ - { - type: 'paragraph', - content: [ - { - type: 'text', - text: 'Hello World!', - }, - ], - }, - ], - }, -}) -// returns: '

Hello World!

' -``` - -Render to a React component: - -```js -import StarterKit from '@tiptap/starter-kit' -import { renderToReactElement } from '@tiptap/static-renderer' - -renderToReactElement({ - extensions: [StarterKit], // using your extensions - // we can map nodes and marks to HTML elements - options: { - nodeMapping: { - // custom node mappings - }, - markMapping: { - // custom mark mappings - }, - unhandledNode: ({ node }) => { - // handle unhandled nodes - return `[unknown node ${node.type.name}]` - }, - unhandledMark: ({ mark }) => { - // handle unhandled marks - return `[unknown node ${mark.type.name}]` - }, - }, - // the source content to render - content: { - type: 'doc', - content: [ - { - type: 'paragraph', - content: [ - { - type: 'text', - text: 'Hello World!', - }, - ], - }, - ], - }, -}) -// returns a react node that, when evaluated, would be equivalent to: '

Hello World!

' -``` - -There are a number of options available to customize the output, like custom node and mark mappings, or handling unhandled nodes and marks. - -## API - -### `renderToHTMLString` - -```ts -function renderToHTMLString(options: { - extensions: Extension[], - content: ProsemirrorNode | JSONContent, - options?: TiptapHTMLStaticRendererOptions, -}): string -``` - -#### `renderToHTMLString` Options - -- `extensions`: An array of Tiptap extensions that are used to render the content. -- `content`: The content to render. Can be a Prosemirror Node instance or a JSON representation of a Prosemirror document. -- `options`: An object with additional options. -- `options.nodeMapping`: An object that maps Prosemirror nodes to HTML strings. -- `options.markMapping`: An object that maps Prosemirror marks to HTML strings. -- `options.unhandledNode`: A function that is called when an unhandled node is encountered. -- `options.unhandledMark`: A function that is called when an unhandled mark is encountered. - -### `renderToReactElement` - -```ts -function renderToReactElement(options: { - extensions: Extension[], - content: ProsemirrorNode | JSONContent, - options?: TiptapReactStaticRendererOptions, -}): ReactElement -``` - -#### `renderToReactElement` Options - -- `extensions`: An array of Tiptap extensions that are used to render the content. -- `content`: The content to render. Can be a Prosemirror Node instance or a JSON representation of a Prosemirror document. -- `options`: An object with additional options. -- `options.nodeMapping`: An object that maps Prosemirror nodes to React components. -- `options.markMapping`: An object that maps Prosemirror marks to React components. -- `options.unhandledNode`: A function that is called when an unhandled node is encountered. -- `options.unhandledMark`: A function that is called when an unhandled mark is encountered. - -## How does it work? - -Each Tiptap node/mark extension can define a `renderHTML` method which is used to generate default mappings of Prosemirror nodes/marks to the target format. These can be overridden by providing custom mappings in the options. One thing to note is that the static renderer doesn't support node views automatically, so you need to provide a mapping for each node type that you want rendered as a node view. Here is an example of how you can render a node view as a React component: - -```js -import { Node } from '@tiptap/core' -import { ReactNodeViewRenderer } from '@tiptap/react' -import StarterKit from '@tiptap/starter-kit' -import { renderToReactElement } from '@tiptap/static-renderer' - -// This component does not have a NodeViewContent, so it does not render it's children's rich text content -function MyCustomComponentWithoutContent() { - const [count, setCount] = React.useState(200) - - return ( -
setCount(a => a + 1)}> - {count} This is a react component! -
- ) -} - -const CustomNodeExtensionWithoutContent = Node.create({ - name: 'customNodeExtensionWithoutContent', - atom: true, - renderHTML() { - return ['div', { class: 'my-custom-component-without-content' }] as const - }, - addNodeView() { - return ReactNodeViewRenderer(MyCustomComponentWithoutContent) - }, -}) - -renderToReactElement({ - extensions: [StarterKit, CustomNodeExtensionWithoutContent], - options: { - nodeMapping: { - // render the custom node with the intended node view React component - customNodeExtensionWithoutContent: MyCustomComponentWithoutContent, - }, - }, - content: { - type: 'doc', - content: [ - { - type: 'customNodeExtensionWithoutContent', - }, - ], - }, -}) -// returns:
200 This is a react component!
-``` - -But what if you want to render the rich text content of the node view? You can do that by providing a `NodeViewContent` component as a child of the node view component: - -```js -import { Node } from '@tiptap/core' -import { - NodeViewContent, - ReactNodeViewContentProvider, - ReactNodeViewRenderer -} from '@tiptap/react' -import StarterKit from '@tiptap/starter-kit' -import { renderToReactElement } from '@tiptap/static-renderer' - - -// This component does have a NodeViewContent, so it will render it's children's rich text content -function MyCustomComponentWithContent() { - return ( -
- Custom component with content in React! - -
- ) -} - - -const CustomNodeExtensionWithContent = Node.create({ - name: 'customNodeExtensionWithContent', - content: 'text*', - group: 'block', - renderHTML() { - return ['div', { class: 'my-custom-component-with-content' }, 0] as const - }, - addNodeView() { - return ReactNodeViewRenderer(MyCustomComponentWithContent) - }, -}) - - -renderToReactElement({ - extensions: [StarterKit, CustomNodeExtensionWithContent], - options: { - nodeMapping: { - customNodeExtensionWithContent: ({ children }) => { - // To pass the content down into the NodeViewContent component, we need to wrap the custom component with the ReactNodeViewContentProvider - return ( - - - - ) - }, - }, - }, - content: { - type: 'doc', - content: [ - { - type: 'customNodeExtensionWithContent', - // rich text content - content: [ - { - type: 'text', - text: 'Hello, world!', - }, - ], - }, - ], - }, -}) - -// returns:
Custom component with content in React!
Hello, world!
-// Note: The NodeViewContent component is rendered as a div with the attribute data-node-view-content, and the rich text content is rendered inside of it -``` diff --git a/.changeset/chilled-candles-design.md b/.changeset/chilled-candles-design.md deleted file mode 100644 index 26b645be8a..0000000000 --- a/.changeset/chilled-candles-design.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/pm': patch ---- - -Fix prosemirror history build diff --git a/.changeset/chilled-trees-agree.md b/.changeset/chilled-trees-agree.md deleted file mode 100644 index 1d3f4cfee7..0000000000 --- a/.changeset/chilled-trees-agree.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -'@tiptap/extension-collaboration-caret': major -'@tiptap/extension-code-block-lowlight': major -'@tiptap/extension-character-count': major -'@tiptap/extension-horizontal-rule': major -'@tiptap/extension-collaboration': major -'@tiptap/extension-floating-menu': major -'@tiptap/extension-ordered-list': major -'@tiptap/extension-table-header': major -'@tiptap/extension-bubble-menu': major -'@tiptap/extension-bullet-list': major -'@tiptap/extension-font-family': major -'@tiptap/extension-list-keymap': major -'@tiptap/extension-placeholder': major -'@tiptap/extension-superscript': major -'@tiptap/extension-blockquote': major -'@tiptap/extension-code-block': major -'@tiptap/extension-dropcursor': major -'@tiptap/extension-hard-break': major -'@tiptap/extension-table-cell': major -'@tiptap/extension-text-align': major -'@tiptap/extension-text-style': major -'@tiptap/extension-typography': major -'@tiptap/extension-gapcursor': major -'@tiptap/extension-highlight': major -'@tiptap/extension-list-item': major -'@tiptap/extension-paragraph': major -'@tiptap/extension-subscript': major -'@tiptap/extension-table-row': major -'@tiptap/extension-task-item': major -'@tiptap/extension-task-list': major -'@tiptap/extension-underline': major -'@tiptap/extension-document': major -'@tiptap/extension-heading': major -'@tiptap/extension-history': major -'@tiptap/extension-mention': major -'@tiptap/extension-youtube': major -'@tiptap/extension-italic': major -'@tiptap/extension-strike': major -'@tiptap/extension-color': major -'@tiptap/extension-focus': major -'@tiptap/extension-image': major -'@tiptap/extension-table': major -'@tiptap/extension-bold': major -'@tiptap/extension-code': major -'@tiptap/extension-link': major -'@tiptap/extension-text': major -'@tiptap/starter-kit': major -'@tiptap/suggestion': major -'@tiptap/react': major -'@tiptap/vue-2': major -'@tiptap/vue-3': major -'@tiptap/core': major -'@tiptap/html': major -'@tiptap/pm': major -'tiptap-demos': major ---- - -We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds diff --git a/.changeset/chilly-lemons-remember.md b/.changeset/chilly-lemons-remember.md deleted file mode 100644 index f4f29cbedd..0000000000 --- a/.changeset/chilly-lemons-remember.md +++ /dev/null @@ -1,123 +0,0 @@ ---- -'@tiptap/extensions': major ---- - -Adds the new `@tiptap/extensions` package which packages multiple utility extensions like `History`, `Placeholder`, `CharacterCount`, `DropCursor`, `GapCursor`, `TrailingNode`, `Focus`, and `Selection`. - -## CharacterCount - -This extension adds a cursor that indicates where a new node will be inserted when dragging and dropping. - -Migrate from `@tiptap/extension-character-count` to `@tiptap/extensions`: - -```diff -- import CharacterCount from '@tiptap/extension-character-count' -+ import { CharacterCount } from '@tiptap/extensions' -``` - -Usage: - -```ts -import { CharacterCount, CharacterCountOptions } from '@tiptap/extensions' -``` - -## DropCursor - -This extension adds a cursor that indicates where a new node will be inserted when dragging and dropping. - -Migrate from `@tiptap/extension-dropcursor` to `@tiptap/extensions`: - -```diff -- import DropCursor from '@tiptap/extension-dropcursor' -+ import { DropCursor } from '@tiptap/extensions' -``` - -Usage: - -```ts -import { DropCursor, DropCursorOptions } from '@tiptap/extensions' -``` - -## GapCursor - -This extension adds a cursor that appears when you click on a place where no content is present, for example in-between nodes. - -Migrate from `@tiptap/extension-gapcursor` to `@tiptap/extensions`: - -```diff -- import GapCursor from '@tiptap/extension-gapcursor' -+ import { GapCursor } from '@tiptap/extensions' -``` - -Usage: - -```ts -import { GapCursor } from '@tiptap/extensions' -``` - -## History - -This extension adds undo and redo functionality to the editor. - -Migrate from `@tiptap/extension-history` to `@tiptap/extensions`: - -```diff -- import History from '@tiptap/extension-history' -+ import { History } from '@tiptap/extensions' -``` - -Usage: - -```ts -import { UndoRedo, UndoRedoOptions } from '@tiptap/extensions' -``` - -## Placeholder - -This extension adds a placeholder text to the editor, which is displayed when the editor is empty. - -Migrate from `@tiptap/extension-placeholder` to `@tiptap/extensions`: - -```diff -- import Placeholder from '@tiptap/extension-placeholder' -+ import { Placeholder } from '@tiptap/extensions' -``` - -Usage: - -```ts -import { Placeholder, PlaceholderOptions } from '@tiptap/extensions' -``` - -## TrailingNode - -This extension adds a node at the end of the editor, which can be used to add a trailing node like a paragraph. - -```ts -import { TrailingNode, TrailingNodeOptions } from '@tiptap/extensions' -``` - -## Focus - -This extension adds a focus state to the editor, which can be used to style the editor when it's focused. - -Migrate from `@tiptap/extension-focus` to `@tiptap/extensions`: - -```diff -- import Focus from '@tiptap/extension-focus' -+ import { Focus } from '@tiptap/extensions' -``` - -Usage: - -```ts -import { Focus, FocusOptions } from '@tiptap/extensions' -``` - -## Selection - -This extension adds a selection state to the editor, which can be used to style the editor when there's a selection. - -```ts -import { Selection, SelectionOptions } from '@tiptap/extensions' -``` diff --git a/.changeset/clear-poets-occur.md b/.changeset/clear-poets-occur.md deleted file mode 100644 index f46d6a7a5b..0000000000 --- a/.changeset/clear-poets-occur.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/suggestion': minor ---- - -Added support for empty query messages via decorations diff --git a/.changeset/clever-bags-end.md b/.changeset/clever-bags-end.md deleted file mode 100644 index cd99137d78..0000000000 --- a/.changeset/clever-bags-end.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': minor ---- - -The editor instance now supports an `unmount` method which allows for mounting and unmounting the editor to the DOM. This encourages re-use of editor instances by preserving all the same options between instances. This is different from the `destroy` method, which will unmount, emit the `destroy` event, and remove all event listeners. diff --git a/.changeset/cool-bananas-breathe.md b/.changeset/cool-bananas-breathe.md deleted file mode 100644 index aa24295348..0000000000 --- a/.changeset/cool-bananas-breathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Remove `editor.getCharacterCount()` which was already deprecated and incorrectly implemented diff --git a/.changeset/cool-singers-call.md b/.changeset/cool-singers-call.md deleted file mode 100644 index 1b80e094b1..0000000000 --- a/.changeset/cool-singers-call.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': major ---- - -This resolves in issue with SSR where the isDestroyed property could not be read while in SSR diff --git a/.changeset/cuddly-impalas-heal.md b/.changeset/cuddly-impalas-heal.md deleted file mode 100644 index e02ad0544d..0000000000 --- a/.changeset/cuddly-impalas-heal.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -'tiptap-demos': patch -'@tiptap/core': patch -'@tiptap/extension-blockquote': patch -'@tiptap/extension-bold': patch -'@tiptap/extension-bubble-menu': patch -'@tiptap/extension-bullet-list': patch -'@tiptap/extension-character-count': patch -'@tiptap/extension-code': patch -'@tiptap/extension-code-block': patch -'@tiptap/extension-code-block-lowlight': patch -'@tiptap/extension-collaboration': patch -'@tiptap/extension-collaboration-caret': patch -'@tiptap/extension-color': patch -'@tiptap/extension-document': patch -'@tiptap/extension-dropcursor': patch -'@tiptap/extension-floating-menu': patch -'@tiptap/extension-focus': patch -'@tiptap/extension-font-family': patch -'@tiptap/extension-gapcursor': patch -'@tiptap/extension-hard-break': patch -'@tiptap/extension-heading': patch -'@tiptap/extension-highlight': patch -'@tiptap/extension-history': patch -'@tiptap/extension-horizontal-rule': patch -'@tiptap/extension-image': patch -'@tiptap/extension-italic': patch -'@tiptap/extension-link': patch -'@tiptap/extension-list': patch -'@tiptap/extension-list-item': patch -'@tiptap/extension-list-keymap': patch -'@tiptap/extension-mention': patch -'@tiptap/extension-ordered-list': patch -'@tiptap/extension-paragraph': patch -'@tiptap/extension-placeholder': patch -'@tiptap/extension-strike': patch -'@tiptap/extension-subscript': patch -'@tiptap/extension-superscript': patch -'@tiptap/extension-table': patch -'@tiptap/extension-table-cell': patch -'@tiptap/extension-table-header': patch -'@tiptap/extension-table-row': patch -'@tiptap/extension-task-item': patch -'@tiptap/extension-task-list': patch -'@tiptap/extension-text': patch -'@tiptap/extension-text-align': patch -'@tiptap/extension-text-style': patch -'@tiptap/extension-typography': patch -'@tiptap/extension-underline': patch -'@tiptap/extension-youtube': patch -'@tiptap/extensions': patch -'@tiptap/html': patch -'@tiptap/pm': patch -'@tiptap/react': patch -'@tiptap/starter-kit': patch -'@tiptap/static-renderer': patch -'@tiptap/suggestion': patch -'@tiptap/vue-2': patch -'@tiptap/vue-3': patch ---- - -Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory diff --git a/.changeset/curly-adults-move.md b/.changeset/curly-adults-move.md deleted file mode 100644 index 0caadebc07..0000000000 --- a/.changeset/curly-adults-move.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-text-style': minor ---- - -This updates the default value of the option `mergeNestedSpanStyles` to `true`, this will attempt to merge the styles of nested spans into the child span during HTML parsing. This prioritizes the style of the child span. This is used when parsing content created in other editors. (Fix for ProseMirror's default behavior.) diff --git a/.changeset/curly-wombats-train.md b/.changeset/curly-wombats-train.md deleted file mode 100644 index 344be3c80d..0000000000 --- a/.changeset/curly-wombats-train.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-details': patch ---- - -Removed details summary and details content and include it in details diff --git a/.changeset/dirty-bats-look.md b/.changeset/dirty-bats-look.md deleted file mode 100644 index 4bcb72cc9b..0000000000 --- a/.changeset/dirty-bats-look.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -'@tiptap/extension-floating-menu': major -'@tiptap/extension-bubble-menu': major -'@tiptap/extension-mention': major -'@tiptap/suggestion': major -'@tiptap/react': major -'@tiptap/vue-2': major -'@tiptap/vue-3': major ---- - -Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. - -This change is breaking existing menu implementations and will require a manual migration. - -**Affected packages:** - -- `@tiptap/extension-floating-menu` -- `@tiptap/extension-bubble-menu` -- `@tiptap/extension-mention` -- `@tiptap/suggestion` -- `@tiptap/react` -- `@tiptap/vue-2` -- `@tiptap/vue-3` - -Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. - -- [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) -- [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) - -You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: - -```bash -npm install @floating-ui/dom@^1.6.0 -``` - -The new `options` object is compatible with all components that use these extensions. diff --git a/.changeset/dirty-colts-shave.md b/.changeset/dirty-colts-shave.md deleted file mode 100644 index 0a26240eb4..0000000000 --- a/.changeset/dirty-colts-shave.md +++ /dev/null @@ -1,130 +0,0 @@ ---- -'@tiptap/extension-table-header': minor -'@tiptap/extension-table-cell': minor -'@tiptap/extension-table-row': minor -'@tiptap/extension-table': minor ---- - - -This adds all of the table packages to the `@tiptap/extension-table` package. - -## TableKit - -The `TableKit` export allows configuring the entire table with one extension, and is the recommended way of using the table extensions. - -```ts -import { TableKit } from '@tiptap/extension-table' - -new Editor({ - extensions: [ - TableKit.configure({ - table: { - HTMLAttributes: { - class: 'table', - }, - }, - tableCell: { - HTMLAttributes: { - class: 'table-cell', - }, - }, - tableHeader: { - HTMLAttributes: { - class: 'table-header', - }, - }, - tableRow: { - HTMLAttributes: { - class: 'table-row', - }, - }, - }), - ], -}) -``` - -## Table repackaging - -Since we've moved the code out of the table extensions to the `@tiptap/extension-table` package, you can remove the following packages from your project: - -```bash -npm uninstall @tiptap/extension-table-header @tiptap/extension-table-cell @tiptap/extension-table-row -``` - -And replace them with the new `@tiptap/extension-table` package: - -```bash -npm install @tiptap/extension-table -``` - -## Want to use the extensions separately? - -For more control, you can also use the extensions separately. - -### Table - -This extension adds a table to the editor. - -Migrate from default export to named export: - -```diff -- import Table from '@tiptap/extension-table' -+ import { Table } from '@tiptap/extension-table' -``` - -Usage: - -```ts -import { Table } from '@tiptap/extension-table' -``` - -### TableCell - -This extension adds a table cell to the editor. - -Migrate from `@tiptap/extension-table-cell` to `@tiptap/extension-table`: - -```diff -- import TableCell from '@tiptap/extension-table-cell' -+ import { TableCell } from '@tiptap/extension-table' -``` - -Usage: - -```ts -import { TableCell } from '@tiptap/extension-table' -``` - -### TableHeader - -This extension adds a table header to the editor. - -Migrate from `@tiptap/extension-table-header` to `@tiptap/extension-table`: - -```diff -- import TableHeader from '@tiptap/extension-table-header' -+ import { TableHeader } from '@tiptap/extension-table' -``` - -Usage: - -```ts -import { TableHeader } from '@tiptap/extension-table' -``` - -### TableRow - -This extension adds a table row to the editor. - -Migrate from `@tiptap/extension-table-row` to `@tiptap/extension-table`: - -```diff -- import TableRow from '@tiptap/extension-table-row' -+ import { TableRow } from '@tiptap/extension-table' -``` - -Usage: - -```ts -import { TableRow } from '@tiptap/extension-table' -``` diff --git a/.changeset/dirty-deers-sip.md b/.changeset/dirty-deers-sip.md deleted file mode 100644 index 2ee9634877..0000000000 --- a/.changeset/dirty-deers-sip.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-mathematics': major ---- - -Change the way inserting math nodes work – now if no LaTeX string is used for both inline and block math nodes, the current text selection will be used and replaced. This should bring the extension more in line with how other extensions work. diff --git a/.changeset/dry-monkeys-learn.md b/.changeset/dry-monkeys-learn.md deleted file mode 100644 index 5907cbda9e..0000000000 --- a/.changeset/dry-monkeys-learn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/static-renderer': patch ---- - -Fixed a bug causing inline-styles to be parsed as strings for React diff --git a/.changeset/early-guests-melt.md b/.changeset/early-guests-melt.md deleted file mode 100644 index 1897a4d07e..0000000000 --- a/.changeset/early-guests-melt.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@tiptap/extension-bubble-menu': patch -'@tiptap/react': patch -'@tiptap/vue-2': patch -'@tiptap/vue-3': patch ---- - -Fixed a bug where table cell selections would not position the bubble menu accordingly diff --git a/.changeset/eighty-cats-dream.md b/.changeset/eighty-cats-dream.md deleted file mode 100644 index 21f1fa1130..0000000000 --- a/.changeset/eighty-cats-dream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/html': major ---- - -The server-import for `@tiptap/html` will now require `happy-dom` to be installed so it can avoid asynchronous behavior diff --git a/.changeset/eighty-gifts-matter.md b/.changeset/eighty-gifts-matter.md deleted file mode 100644 index c716749acb..0000000000 --- a/.changeset/eighty-gifts-matter.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-collaboration-caret': major -'@tiptap/extension-collaboration': major ---- - -Replaced y-prosemirror with @tiptap/y-tiptap diff --git a/.changeset/fair-jars-shout.md b/.changeset/fair-jars-shout.md deleted file mode 100644 index f24f0ab2bd..0000000000 --- a/.changeset/fair-jars-shout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-text-style': patch ---- - -The text-style extension, now will match elements with a style tag, but not consume them to allow other elements to match [per this comment](https://github.com/ueberdosis/tiptap/discussions/5912#discussioncomment-11716337). diff --git a/.changeset/fast-foxes-mate.md b/.changeset/fast-foxes-mate.md deleted file mode 100644 index c6193cc41c..0000000000 --- a/.changeset/fast-foxes-mate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-table": patch ---- - -Added new export for TableView class diff --git a/.changeset/five-rules-pull.md b/.changeset/five-rules-pull.md deleted file mode 100644 index 99edfd6ed4..0000000000 --- a/.changeset/five-rules-pull.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-emoji': patch ---- - -Added alt tag to emoji extension diff --git a/.changeset/floppy-hotels-itch.md b/.changeset/floppy-hotels-itch.md deleted file mode 100644 index 2fcb9c58f1..0000000000 --- a/.changeset/floppy-hotels-itch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extensions': major ---- - -Remove selection decoration when editor is on dragging mode diff --git a/.changeset/fresh-ads-nail.md b/.changeset/fresh-ads-nail.md deleted file mode 100644 index ead724dcc6..0000000000 --- a/.changeset/fresh-ads-nail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": minor ---- - -Add config option to emit content error when content check is disabled diff --git a/.changeset/fresh-geckos-exercise.md b/.changeset/fresh-geckos-exercise.md deleted file mode 100644 index 3fff80174a..0000000000 --- a/.changeset/fresh-geckos-exercise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/html': patch ---- - -Update comments with correct library names diff --git a/.changeset/funny-teams-guess.md b/.changeset/funny-teams-guess.md deleted file mode 100644 index 1f99ea1118..0000000000 --- a/.changeset/funny-teams-guess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-emoji': patch ---- - -Added `emoji` field to Tiptap storage interface \ No newline at end of file diff --git a/.changeset/gold-ads-own.md b/.changeset/gold-ads-own.md deleted file mode 100644 index d4cc2acaba..0000000000 --- a/.changeset/gold-ads-own.md +++ /dev/null @@ -1,152 +0,0 @@ ---- -'@tiptap/react': minor -'@tiptap/vue-3': minor -'@tiptap/core': minor ---- - -Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), which allow you to render custom views for marks within the editor. This is useful for rendering custom UI for marks, like a color picker for a text color mark or a link editor for a link mark. - -Here is a plain JS markview example: - -```ts -Mark.create({ - // Other options... - addMarkView() { - return ({ mark, HTMLAttributes }) => { - const dom = document.createElement('b') - const contentDOM = document.createElement('span') - - dom.appendChild(contentDOM) - - return { - dom, - contentDOM, - } - } - }, -}) -``` - -## React binding - -To use a React component for a markview, you can use the `@tiptap/react` package: - -```ts -import { Mark } from '@tiptap/core' -import { ReactMarkViewRenderer } from '@tiptap/react' - -import Component from './Component.jsx' - -export default Mark.create({ - name: 'reactComponent', - - parseHTML() { - return [ - { - tag: 'react-component', - }, - ] - }, - - renderHTML({ HTMLAttributes }) { - return ['react-component', HTMLAttributes] - }, - - addMarkView() { - return ReactMarkViewRenderer(Component) - }, -}) -``` - -And here is an example of a React component: - -```tsx -import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' -import React from 'react' - -// eslint-disable-next-line @typescript-eslint/no-unused-vars -export default (props: MarkViewRendererProps) => { - const [count, setCount] = React.useState(0) - - return ( - - - - - ) -} -``` - -## Vue 3 binding - -To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: - -```ts -import { Mark } from '@tiptap/core' -import { VueMarkViewRenderer } from '@tiptap/vue-3' - -import Component from './Component.vue' - -export default Mark.create({ - name: 'vueComponent', - - parseHTML() { - return [ - { - tag: 'vue-component', - }, - ] - }, - - renderHTML({ HTMLAttributes }) { - return ['vue-component', HTMLAttributes] - }, - - addMarkView() { - return VueMarkViewRenderer(Component) - }, -}) -``` - -And here is an example of a Vue 3 component: - -```vue - - - -``` diff --git a/.changeset/good-trainers-train.md b/.changeset/good-trainers-train.md deleted file mode 100644 index e4ae92545b..0000000000 --- a/.changeset/good-trainers-train.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': patch ---- - -Fixed a bug that incorrectly added ref props when a component can't accept them (for example when React 19 is not used) diff --git a/.changeset/great-terms-jam.md b/.changeset/great-terms-jam.md deleted file mode 100644 index 46bf81e7a9..0000000000 --- a/.changeset/great-terms-jam.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@tiptap/extension-bubble-menu': patch -'@tiptap/react': patch -'@tiptap/vue-2': patch -'@tiptap/vue-3': patch ---- - -Fixed a bug where the global resize handler of the BubbleMenu plugin would not be unregistered on destroy diff --git a/.changeset/green-wolves-arrive.md b/.changeset/green-wolves-arrive.md deleted file mode 100644 index 04f6eff83a..0000000000 --- a/.changeset/green-wolves-arrive.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -'@tiptap/core': major ---- -`getPos` in `NodeViewRendererProps` type now includes `undefined` as possible return value - -Before - -```ts -const pos = nodeViewProps.getPos() // Type was () => number -``` - -After - -```ts -const pos = nodeViewProps.getPos() // Type is () => number | undefined - -if (pos !== undefined) { - // Safe to use pos here -} -``` diff --git a/.changeset/healthy-pigs-work.md b/.changeset/healthy-pigs-work.md deleted file mode 100644 index bb1f5bbf11..0000000000 --- a/.changeset/healthy-pigs-work.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': minor ---- - -Adds a new `delete` event which can detect content which has been deleted by the editor as a core extension diff --git a/.changeset/hip-teachers-dream.md b/.changeset/hip-teachers-dream.md deleted file mode 100644 index 514a0237f2..0000000000 --- a/.changeset/hip-teachers-dream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/html': patch ---- - -Wrap happy-dom Window and DOMParser creation to avoid setting global process to null. See https://github.com/ueberdosis/tiptap/issues/6368 diff --git a/.changeset/kind-years-invite.md b/.changeset/kind-years-invite.md deleted file mode 100644 index 8f6e1fa15a..0000000000 --- a/.changeset/kind-years-invite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-link': patch ---- - -Fix autolink option in shadow dom by extending the whitespace detection to more unicode characters diff --git a/.changeset/large-kangaroos-battle.md b/.changeset/large-kangaroos-battle.md deleted file mode 100644 index f4a10ddca1..0000000000 --- a/.changeset/large-kangaroos-battle.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -'@tiptap/core': major ---- - -`Node`, `Mark` and `Extension` config options now are strongly typed and do not allow arbitrary keys on the options object. - -To add keys, like when using `extendNodeSchema` or `extendMarkSchema`, you can do this: - -```ts -declare module '@tiptap/core' { - interface NodeConfig { - /** - * This key will be added to all NodeConfig objects in your project - */ - newKey?: string - } - interface MarkConfig { - /** - * This key will be added to all MarkConfig objects in your project - */ - newKey?: string - } - interface ExtensionConfig { - /** - * This key will be added to all ExtensionConfig objects in your project - */ - newKey?: string - } -} -``` diff --git a/.changeset/large-points-love.md b/.changeset/large-points-love.md deleted file mode 100644 index 91e3475db6..0000000000 --- a/.changeset/large-points-love.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': patch ---- - -Fixes an issue where ref props will be kept on non-supported react components diff --git a/.changeset/lazy-needles-train.md b/.changeset/lazy-needles-train.md deleted file mode 100644 index 15c7efe283..0000000000 --- a/.changeset/lazy-needles-train.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': major ---- - -`insertContent` and `insertContentAt` commands should not split text nodes like paragraphs into multiple nodes when the inserted content is at the beginning of the text to avoid empty nodes being created diff --git a/.changeset/lucky-bears-exercise.md b/.changeset/lucky-bears-exercise.md deleted file mode 100644 index bb1c79141e..0000000000 --- a/.changeset/lucky-bears-exercise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Fixes a bug where you could not unregister multiple plugins. diff --git a/.changeset/many-laws-vanish.md b/.changeset/many-laws-vanish.md deleted file mode 100644 index 6418643a03..0000000000 --- a/.changeset/many-laws-vanish.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-collaboration-caret': major ---- - -Renamed `@tiptap/extension-collaboration-cursor` to `@tiptap/extension-collaboration-caret` to clarify what kind of cursor this extension is implementing. diff --git a/.changeset/many-trainers-yawn.md b/.changeset/many-trainers-yawn.md deleted file mode 100644 index db6a1b34da..0000000000 --- a/.changeset/many-trainers-yawn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': minor ---- - -Remove enableDevTools option diff --git a/.changeset/modern-kangaroos-teach.md b/.changeset/modern-kangaroos-teach.md deleted file mode 100644 index 98151e69dc..0000000000 --- a/.changeset/modern-kangaroos-teach.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-horizontal-rule': patch ---- - -Fixed a bug that caused the horizontal rule's `setHorizontalRule` command to always return true when checked via `can()` diff --git a/.changeset/moody-geckos-sort.md b/.changeset/moody-geckos-sort.md deleted file mode 100644 index d4d4ab1c65..0000000000 --- a/.changeset/moody-geckos-sort.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': major ---- - -`clearContent` command defaults to emitting updates now diff --git a/.changeset/moody-insects-guess.md b/.changeset/moody-insects-guess.md deleted file mode 100644 index 4223f32d19..0000000000 --- a/.changeset/moody-insects-guess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-mention': patch ---- - -Show mention indicator when converting document to HTML diff --git a/.changeset/nervous-hairs-walk.md b/.changeset/nervous-hairs-walk.md deleted file mode 100644 index 89e09422bd..0000000000 --- a/.changeset/nervous-hairs-walk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": minor ---- - -Support [`validate` option](https://prosemirror.net/docs/ref/#model.AttributeSpec.validate) in node and mark attribute definitions. diff --git a/.changeset/nine-dragons-admire.md b/.changeset/nine-dragons-admire.md deleted file mode 100644 index ca08c016ae..0000000000 --- a/.changeset/nine-dragons-admire.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-floating-menu': patch -'@tiptap/extension-bubble-menu': patch ---- - -Added `tab-index="0"` to menu wrappers diff --git a/.changeset/olive-jeans-love.md b/.changeset/olive-jeans-love.md deleted file mode 100644 index f81212dfa0..0000000000 --- a/.changeset/olive-jeans-love.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/vue-2": major ---- - -VueNodeViewRenderer should return `null` for `contentDOM` for a non-leaf node with no `NodeViewContent` diff --git a/.changeset/orange-spoons-rescue.md b/.changeset/orange-spoons-rescue.md deleted file mode 100644 index 3ab081e5a4..0000000000 --- a/.changeset/orange-spoons-rescue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-text-style': minor ---- - -Add `toggleTextStyle` command and add typings for the commands parameters based on the installed extensions that include `textStyle` diff --git a/.changeset/perfect-rice-vanish.md b/.changeset/perfect-rice-vanish.md deleted file mode 100644 index 8be0f66931..0000000000 --- a/.changeset/perfect-rice-vanish.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': minor ---- - -Throw an error in development mode if `immediatelyRender` is not set in SSR mode diff --git a/.changeset/popular-geckos-pay.md b/.changeset/popular-geckos-pay.md deleted file mode 100644 index a98e7508e1..0000000000 --- a/.changeset/popular-geckos-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-link": patch ---- - -Fixed links with marks not registering click events correctly diff --git a/.changeset/pre.json b/.changeset/pre.json deleted file mode 100644 index 6b1d39cbda..0000000000 --- a/.changeset/pre.json +++ /dev/null @@ -1,175 +0,0 @@ -{ - "mode": "exit", - "tag": "beta", - "initialVersions": { - "tiptap-demos": "3.0.0-beta.0", - "@tiptap/extension-character-count": "3.0.0-beta.0", - "@tiptap/extension-dropcursor": "3.0.0-beta.0", - "@tiptap/extension-focus": "3.0.0-beta.0", - "@tiptap/extension-gapcursor": "3.0.0-beta.0", - "@tiptap/extension-history": "3.0.0-beta.0", - "@tiptap/extension-list-item": "3.0.0-beta.0", - "@tiptap/extension-list-keymap": "3.0.0-beta.0", - "@tiptap/extension-placeholder": "3.0.0-beta.0", - "@tiptap/extension-table-cell": "3.0.0-beta.0", - "@tiptap/extension-table-header": "3.0.0-beta.0", - "@tiptap/extension-table-row": "3.0.0-beta.0", - "@tiptap/extension-task-item": "3.0.0-beta.0", - "@tiptap/extension-task-list": "3.0.0-beta.0", - "@tiptap/core": "3.0.0-beta.0", - "@tiptap/extension-blockquote": "3.0.0-beta.0", - "@tiptap/extension-bold": "3.0.0-beta.0", - "@tiptap/extension-bubble-menu": "3.0.0-beta.0", - "@tiptap/extension-bullet-list": "3.0.0-beta.0", - "@tiptap/extension-code": "3.0.0-beta.0", - "@tiptap/extension-code-block": "3.0.0-beta.0", - "@tiptap/extension-code-block-lowlight": "3.0.0-beta.0", - "@tiptap/extension-collaboration": "3.0.0-beta.0", - "@tiptap/extension-collaboration-caret": "3.0.0-beta.0", - "@tiptap/extension-color": "3.0.0-beta.0", - "@tiptap/extension-document": "3.0.0-beta.0", - "@tiptap/extension-floating-menu": "3.0.0-beta.0", - "@tiptap/extension-font-family": "3.0.0-beta.0", - "@tiptap/extension-hard-break": "3.0.0-beta.0", - "@tiptap/extension-heading": "3.0.0-beta.0", - "@tiptap/extension-highlight": "3.0.0-beta.0", - "@tiptap/extension-horizontal-rule": "3.0.0-beta.0", - "@tiptap/extension-image": "3.0.0-beta.0", - "@tiptap/extension-italic": "3.0.0-beta.0", - "@tiptap/extension-link": "3.0.0-beta.0", - "@tiptap/extension-list": "3.0.0-beta.0", - "@tiptap/extension-mention": "3.0.0-beta.0", - "@tiptap/extension-ordered-list": "3.0.0-beta.0", - "@tiptap/extension-paragraph": "3.0.0-beta.0", - "@tiptap/extension-strike": "3.0.0-beta.0", - "@tiptap/extension-subscript": "3.0.0-beta.0", - "@tiptap/extension-superscript": "3.0.0-beta.0", - "@tiptap/extension-table": "3.0.0-beta.0", - "@tiptap/extension-text": "3.0.0-beta.0", - "@tiptap/extension-text-align": "3.0.0-beta.0", - "@tiptap/extension-text-style": "3.0.0-beta.0", - "@tiptap/extension-typography": "3.0.0-beta.0", - "@tiptap/extension-underline": "3.0.0-beta.0", - "@tiptap/extension-youtube": "3.0.0-beta.0", - "@tiptap/extensions": "3.0.0-beta.0", - "@tiptap/html": "3.0.0-beta.0", - "@tiptap/pm": "3.0.0-beta.0", - "@tiptap/react": "3.0.0-beta.0", - "@tiptap/starter-kit": "3.0.0-beta.0", - "@tiptap/static-renderer": "3.0.0-beta.0", - "@tiptap/suggestion": "3.0.0-beta.0", - "@tiptap/vue-2": "3.0.0-beta.0", - "@tiptap/vue-3": "3.0.0-beta.0", - "@tiptap/extension-details": "3.0.0-beta.7", - "@tiptap/extension-details-content": "3.0.0-beta.7", - "@tiptap/extension-details-summary": "3.0.0-beta.7", - "@tiptap/extension-drag-handle": "3.0.0-beta.7", - "@tiptap/extension-drag-handle-react": "3.0.0-beta.7", - "@tiptap/extension-drag-handle-vue-2": "3.0.0-beta.7", - "@tiptap/extension-drag-handle-vue-3": "3.0.0-beta.7", - "@tiptap/extension-emoji": "2.21.4", - "@tiptap/extension-file-handler": "3.0.0-beta.7", - "@tiptap/extension-invisible-characters": "3.0.0-beta.7", - "@tiptap/extension-mathematics": "3.0.0-beta.7", - "@tiptap/extension-node-range": "3.0.0-beta.7", - "@tiptap/extension-table-of-contents": "3.0.0-beta.7", - "@tiptap/extension-unique-id": "3.0.0-beta.7" - }, - "changesets": [ - "angry-ladybugs-bow", - "beige-llamas-shout", - "big-wolves-design", - "blue-shrimps-rush", - "chilled-candles-design", - "chilled-trees-agree", - "chilly-lemons-remember", - "clear-poets-occur", - "clever-bags-end", - "cool-bananas-breathe", - "cool-singers-call", - "cuddly-impalas-heal", - "curly-adults-move", - "curly-wombats-train", - "dirty-bats-look", - "dirty-colts-shave", - "dirty-deers-sip", - "dry-monkeys-learn", - "early-guests-melt", - "eighty-cats-dream", - "eighty-gifts-matter", - "fair-jars-shout", - "fast-foxes-mate", - "five-rules-pull", - "floppy-hotels-itch", - "fresh-ads-nail", - "fresh-geckos-exercise", - "funny-teams-guess", - "gold-ads-own", - "good-trainers-train", - "great-terms-jam", - "green-wolves-arrive", - "healthy-pigs-work", - "hip-teachers-dream", - "kind-years-invite", - "large-kangaroos-battle", - "large-points-love", - "lazy-needles-train", - "lucky-bears-exercise", - "many-laws-vanish", - "many-trainers-yawn", - "modern-kangaroos-teach", - "moody-geckos-sort", - "moody-insects-guess", - "nervous-hairs-walk", - "nine-dragons-admire", - "olive-jeans-love", - "orange-spoons-rescue", - "perfect-rice-vanish", - "popular-geckos-pay", - "purple-boxes-switch", - "quick-days-matter", - "quiet-falcons-study", - "real-pianos-vanish", - "red-ants-wonder", - "red-rivers-exist", - "rich-jeans-check", - "rude-ads-battle", - "selfish-rings-hang", - "serious-rings-end", - "seven-llamas-love", - "shiny-days-rhyme", - "shiny-impalas-remember", - "shiny-rats-wash", - "silly-plants-sin", - "silver-adults-fold", - "silver-roses-joke", - "sixty-news-ring", - "slow-mails-vanish", - "small-otters-bake", - "smooth-carrots-beam", - "smooth-swans-exist", - "spicy-horses-smoke", - "spotty-cobras-shake", - "stale-ties-press", - "sweet-ravens-pay", - "swift-dolphins-think", - "tall-needles-fail", - "tall-singers-peel", - "tame-worms-applaud", - "thick-buckets-cross", - "thirty-rockets-act", - "tidy-fireants-hang", - "tidy-humans-join", - "tiny-tomatoes-hope", - "twelve-peas-smile", - "twenty-moose-invent", - "two-carrots-leave", - "weak-books-eat", - "wet-rice-suffer", - "wise-berries-hide", - "wise-books-kiss", - "wise-carpets-unite", - "wise-suns-dress", - "witty-eels-cheer" - ] -} diff --git a/.changeset/purple-boxes-switch.md b/.changeset/purple-boxes-switch.md deleted file mode 100644 index 6c405a7d80..0000000000 --- a/.changeset/purple-boxes-switch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-mathematics': patch ---- - -Improved JSDoc documentation and comments diff --git a/.changeset/quick-days-matter.md b/.changeset/quick-days-matter.md deleted file mode 100644 index 5f21c573ac..0000000000 --- a/.changeset/quick-days-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/html": major ---- - -Replace `zeed-dom` with `happy-dom-without-node` for broader compatibility of the HTML parser. The only difference you should see is that `happy-dom-without-node` will output `xmlns="http://www.w3.org/1999/xhtml"` on root elements, which makes it compliant with the HTML5 specification. diff --git a/.changeset/quiet-falcons-study.md b/.changeset/quiet-falcons-study.md deleted file mode 100644 index 3aa408ec01..0000000000 --- a/.changeset/quiet-falcons-study.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/react": patch ---- - -Allow setting HTML tags other than for "as" in MarkViewContent diff --git a/.changeset/real-pianos-vanish.md b/.changeset/real-pianos-vanish.md deleted file mode 100644 index d250505e11..0000000000 --- a/.changeset/real-pianos-vanish.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-invisible-characters': major -'@tiptap/extension-mathematics': major ---- - -Updated the default class names of the invisible and mathematics plugins diff --git a/.changeset/red-ants-wonder.md b/.changeset/red-ants-wonder.md deleted file mode 100644 index ae4673c879..0000000000 --- a/.changeset/red-ants-wonder.md +++ /dev/null @@ -1,66 +0,0 @@ ---- -'@tiptap/core': minor ---- - -This introduces a new behavior for the editor, the ability to be safely run on the server-side (without rendering). - -`prosemirror-view` encapsulates all view (& DOM) related code, and cannot safely be SSR'd, but, the majority of the editor instance itself is in plain JS that does not require DOM APIs (unless your content is specified in HTML). - -But, we have so many convenient methods available for manipulating content. So, it is a shame that they could not be used on the server side too. With this change, the editor can be rendered on the server-side and will use a stub for select prosemirror-view methods. If accessing unsupported methods or values on the `editor.view`, you will encounter runtime errors, so it is important for you to test to see if the methods you call actually work. - -This is a step towards being able to server-side render content, but, it is not completely supported yet. This does not mean that you can render an editor instance on the server and expect it to just output any HTML. - -## Usage - -If you pass `element: null` to your editor options: - -- the `editor.view` will not be initialized -- the editor will not emit it's `'create'` event -- the focus will not be initialized to it's first position - -You can however, later use the new `mount` function on the instance, which will mount the editor view to a DOM element. This obviously will not be allowed on the server which has no document object. - -Therefore, this will work on the server: - -```ts -import { Editor } from '@tiptap/core' -import StarterKit from '@tiptap/starter-kit' - -const editor = new Editor({ - element: null, - content: { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, World!' }] }] }, - extensions: [StarterKit], -}) - -editor - .chain() - .selectAll() - .setContent({ type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'XYZ' }] }] }) - .run() - -console.log(editor.state.doc.toJSON()) -// { type: 'doc', content: [ { type: 'paragraph', content: [ { type: 'text', text: 'XYZ' } ] } ] } -``` - -Any of these things will not work on the server, and result in a runtime error: - -```ts -import { Editor } from '@tiptap/core' -import StarterKit from '@tiptap/starter-kit' - -const editor = new Editor({ - // document will not be defined in a server environment - element: document.createElement('div'), - content: { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, World!' }] }] }, - extensions: [StarterKit], -}) - -editor - .chain() - // focus is a command which depends on the editor-view, so it will not work in a server environment - .focus() - .run() - -console.log(editor.getHTML()) -// getHTML relies on the editor-view, so it will not work in a server environment -``` diff --git a/.changeset/red-rivers-exist.md b/.changeset/red-rivers-exist.md deleted file mode 100644 index 88dfd938be..0000000000 --- a/.changeset/red-rivers-exist.md +++ /dev/null @@ -1,107 +0,0 @@ ---- -'@tiptap/extension-text-style': minor ---- - -This adds several extensions to the `text-style` package, which can be used to style text in the editor. - -## TextStyleKit - -This extension adds a group of text style extensions to the editor, and is the recommended way of using the text style extensions. For easy configuration, you can pass an object with the following keys: - -`backgroundColor`, `color`, `fontFamily`, `fontSize`, `lineHeight`, `textStyle` - -Usage: - -```ts -import { TextStyleKit } from '@tiptap/extension-text-style' - - -new Editor({ - extensions: [ - TextStyleKit.configure({ - backgroundColor: { - types: ['textStyle'], - }, - color: { - types: ['textStyle'], - }, - fontFamily: { - types: ['textStyle'], - }, - fontSize: { - types: ['textStyle'], - }, - lineHeight: { - types: ['textStyle'], - }, - textStyle: { - types: ['textStyle'], - }, - }), - ], -}) -``` - -## Want to use the extensions separately? - -For more control, you can also use the extensions separately. - -### BackgroundColor - -This extension controls the background-color of a range of text in the editor. - -Usage: - -```ts -import { BackgroundColor } from '@tiptap/extension-text-style' -``` - -### Color - -This extension controls the color of a range of text in the editor. - -Migrate from `@tiptap/extension-color` to `@tiptap/extension-text-style`: - -```diff -- import Color from '@tiptap/extension-color' -+ import { Color } from '@tiptap/extension-text-style' -``` - -Usage: - -```ts -import { Color } from '@tiptap/extension-text-style' -``` - -### FontFamily - -This extension controls the font-family of a range of text in the editor. - -Migration from `@tiptap/extension-font-family` to `@tiptap/extension-text-style`: - -```diff -- import FontFamily from '@tiptap/extension-font-family' -+ import { FontFamily } from '@tiptap/extension-text-style' -``` - -Usage: - -```ts -import { FontFamily } from '@tiptap/extension-text-style' -``` - -### FontSize - -This extension controls the font-size of a range of text in the editor. - -```ts -import { FontSize } from '@tiptap/extension-text-style' -``` - -### LineHeight - -This extension controls the line-height of a range of text in the editor. - -```ts -import { LineHeight } from '@tiptap/extension-text-style' -``` diff --git a/.changeset/rich-jeans-check.md b/.changeset/rich-jeans-check.md deleted file mode 100644 index bfc353f777..0000000000 --- a/.changeset/rich-jeans-check.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Add validation for target position within document range when trying to access children of a `NodePos` instance diff --git a/.changeset/rude-ads-battle.md b/.changeset/rude-ads-battle.md deleted file mode 100644 index 4497fea01f..0000000000 --- a/.changeset/rude-ads-battle.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -'@tiptap/extension-character-count': patch -'@tiptap/extension-table-header': patch -'@tiptap/extension-list-keymap': patch -'@tiptap/extension-placeholder': patch -'@tiptap/extension-dropcursor': patch -'@tiptap/extension-table-cell': patch -'@tiptap/extension-gapcursor': patch -'@tiptap/extension-list-item': patch -'@tiptap/extension-table-row': patch -'@tiptap/extension-task-item': patch -'@tiptap/extension-task-list': patch -'@tiptap/extension-code-block-lowlight': patch -'@tiptap/extension-collaboration-caret': patch -'@tiptap/extension-history': patch -'@tiptap/extension-focus': patch -'@tiptap/extension-horizontal-rule': patch -'@tiptap/extension-collaboration': patch -'@tiptap/extension-floating-menu': patch -'@tiptap/extension-ordered-list': patch -'@tiptap/extension-bubble-menu': patch -'@tiptap/extension-bullet-list': patch -'@tiptap/extension-font-family': patch -'@tiptap/extension-superscript': patch -'@tiptap/extension-blockquote': patch -'@tiptap/extension-code-block': patch -'@tiptap/extension-hard-break': patch -'@tiptap/extension-text-align': patch -'@tiptap/extension-text-style': patch -'@tiptap/extension-typography': patch -'@tiptap/extension-highlight': patch -'@tiptap/extension-paragraph': patch -'@tiptap/extension-subscript': patch -'@tiptap/extension-underline': patch -'@tiptap/extension-document': patch -'@tiptap/extension-heading': patch -'@tiptap/extension-mention': patch -'@tiptap/extension-youtube': patch -'@tiptap/extension-italic': patch -'@tiptap/extension-strike': patch -'@tiptap/extension-color': patch -'@tiptap/extension-image': patch -'@tiptap/extension-table': patch -'@tiptap/static-renderer': patch -'@tiptap/extension-bold': patch -'@tiptap/extension-code': patch -'@tiptap/extension-link': patch -'@tiptap/extension-list': patch -'@tiptap/extension-text': patch -'@tiptap/starter-kit': patch -'@tiptap/extensions': patch -'@tiptap/suggestion': patch -'@tiptap/react': patch -'@tiptap/vue-2': patch -'@tiptap/vue-3': patch -'@tiptap/core': patch -'@tiptap/html': patch -'@tiptap/pm': patch -'tiptap-demos': patch ---- - -Synced beta with stable features diff --git a/.changeset/selfish-rings-hang.md b/.changeset/selfish-rings-hang.md deleted file mode 100644 index 10a9f1f2c5..0000000000 --- a/.changeset/selfish-rings-hang.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-collaboration-caret': patch -'@tiptap/extension-collaboration': patch ---- - -Use newer y-prosemirror version to resolve dependency chaos diff --git a/.changeset/serious-rings-end.md b/.changeset/serious-rings-end.md deleted file mode 100644 index e52f241392..0000000000 --- a/.changeset/serious-rings-end.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@tiptap/extension-floating-menu': patch -'@tiptap/extension-bubble-menu': patch -'@tiptap/react': patch -'@tiptap/vue-2': patch -'@tiptap/vue-3': patch ---- - -Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options diff --git a/.changeset/seven-llamas-love.md b/.changeset/seven-llamas-love.md deleted file mode 100644 index 0e921164d0..0000000000 --- a/.changeset/seven-llamas-love.md +++ /dev/null @@ -1,160 +0,0 @@ ---- -'@tiptap/extension-ordered-list': major -'@tiptap/extension-bullet-list': major -'@tiptap/extension-list-keymap': major -'@tiptap/extension-list-item': major -'@tiptap/extension-task-list': major ---- - -This adds all of the list packages to the `@tiptap/extension-list` package. - -## ListKit - -The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. - -```ts -import { ListKit } from '@tiptap/extension-list' - -new Editor({ - extensions: [ - ListKit.configure({ - bulletList: { - HTMLAttributes: 'bullet-list' - }, - orderedList: { - HTMLAttributes: 'ordered-list' - }, - listItem: { - HTMLAttributes: 'list-item' - }, - taskList: { - HTMLAttributes: 'task-list' - }, - taskItem: { - HTMLAttributes: 'task-item' - }, - listKeymap: {} - }), - ], -}) -``` - -## List repackaging - -Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: - -```bash -npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list -``` - -And replace them with the new `@tiptap/extension-list` package: - -```bash -npm install @tiptap/extension-list -``` - -## Want to use the extensions separately? - -For more control, you can also use the extensions separately. - -### BulletList - -This extension adds a bullet list to the editor. - -Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: - -```diff -- import BulletList from '@tiptap/extension-bullet-list' -+ import { BulletList } from '@tiptap/extension-list' -``` - -Usage: - -```ts -import { BulletList } from '@tiptap/extension-list' -``` - -### OrderedList - -This extension adds an ordered list to the editor. - -Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: - -```diff -- import OrderedList from '@tiptap/extension-ordered-list' -+ import { OrderedList } from '@tiptap/extension-list' -``` - -Usage: - -```ts -import { OrderedList } from '@tiptap/extension-list' -``` - -### ListItem - -This extension adds a list item to the editor. - -Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: - -```diff -- import ListItem from '@tiptap/extension-list-item' -+ import { ListItem } from '@tiptap/extension-list' -``` - -Usage: - -```ts -import { ListItem } from '@tiptap/extension-list' -``` - -### TaskList - -This extension adds a task list to the editor. - -Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: - -```diff -- import TaskList from '@tiptap/extension-task-list' -+ import { TaskList } from '@tiptap/extension-list' -``` - -Usage: - -```ts -import { TaskList } from '@tiptap/extension-list' -``` - -### TaskItem - -This extension adds a task item to the editor. - -Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: - -```diff -- import TaskItem from '@tiptap/extension-task-item' -+ import { TaskItem } from '@tiptap/extension-list' -``` - -Usage: - -```ts -import { TaskItem } from '@tiptap/extension-list' -``` - -### ListKeymap - -This extension adds better default keybindings for lists to the editor. - -Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: - -```diff -- import ListKeymap from '@tiptap/extension-list-keymap' -+ import { ListKeymap } from '@tiptap/extension-list' -``` - -Usage: - -```ts -import { ListKeymap } from '@tiptap/extension-list' -``` diff --git a/.changeset/shiny-days-rhyme.md b/.changeset/shiny-days-rhyme.md deleted file mode 100644 index 47ffe0b968..0000000000 --- a/.changeset/shiny-days-rhyme.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Clone dragged node before dragging to get correct drag preview image diff --git a/.changeset/shiny-impalas-remember.md b/.changeset/shiny-impalas-remember.md deleted file mode 100644 index 3ee9fb0a86..0000000000 --- a/.changeset/shiny-impalas-remember.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': minor ---- - -Added support for React 19 ref in props diff --git a/.changeset/shiny-rats-wash.md b/.changeset/shiny-rats-wash.md deleted file mode 100644 index a9a7e2c267..0000000000 --- a/.changeset/shiny-rats-wash.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -'@tiptap/extension-mathematics': major ---- - -The Math extension now uses **nodes** to render mathematic content in the editor. This should improve the performance when an editor renders many math equations at the same time. - -This change is not backwards compatible, so you will need to update your code to use the new node-based API. - -At the same time, the `Mathematics` extension has been renamed to `Math` to better align with the naming conventions of other extensions - but the old name is still available for backwards compatibility. - -This extension includes two new nodes: -- `MathInline` for inline math equations -- `MathBlock` for block math equations - -The regex patterns for the input rules were also updated to be less conflicting with text including dollar signs. The new patterns are: -- Inline: `/(? number + ``` + + After + + ```ts + const pos = nodeViewProps.getPos() // Type is () => number | undefined + + if (pos !== undefined) { + // Safe to use pos here + } + ``` + +- 32958d6: `Node`, `Mark` and `Extension` config options now are strongly typed and do not allow arbitrary keys on the options object. + + To add keys, like when using `extendNodeSchema` or `extendMarkSchema`, you can do this: + + ```ts + declare module '@tiptap/core' { + interface NodeConfig { + /** + * This key will be added to all NodeConfig objects in your project + */ + newKey?: string + } + interface MarkConfig { + /** + * This key will be added to all MarkConfig objects in your project + */ + newKey?: string + } + interface ExtensionConfig { + /** + * This key will be added to all ExtensionConfig objects in your project + */ + newKey?: string + } + } + ``` + +- 12bb31a: `insertContent` and `insertContentAt` commands should not split text nodes like paragraphs into multiple nodes when the inserted content is at the beginning of the text to avoid empty nodes being created +- 062afaf: `clearContent` command defaults to emitting updates now +- 062afaf: Change signature of `setContent` command to `(content, options)` and default to emitting updates +- 32958d6: `editor.storage` is now strongly typed `Storage` instances, using a similar pattern as commands, where you can define the type of the storage value using namespaces like: + + ```ts + declare module '@tiptap/core' { + interface Storage { + extensionName: StorageValue + } + } + ``` + +- 32958d6: `editor.storage` is instantiated per editor rather than per extension. + + Previously, the storage value was a singleton per extension instance, this caused strange bugs when using multiple editor instances on a single page. + + Now, storage instances are _per editor instance_, so changing the value on one `editor.storage` instance will not affect another editor's value. + +### Minor Changes + +- 8de8e13: The editor instance now supports an `unmount` method which allows for mounting and unmounting the editor to the DOM. This encourages re-use of editor instances by preserving all the same options between instances. This is different from the `destroy` method, which will unmount, emit the `destroy` event, and remove all event listeners. +- d0fda30: Add config option to emit content error when content check is disabled +- 0e3207f: Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), which allow you to render custom views for marks within the editor. This is useful for rendering custom UI for marks, like a color picker for a text color mark or a link editor for a link mark. + + Here is a plain JS markview example: + + ```ts + Mark.create({ + // Other options... + addMarkView() { + return ({ mark, HTMLAttributes }) => { + const dom = document.createElement('b') + const contentDOM = document.createElement('span') + + dom.appendChild(contentDOM) + + return { + dom, + contentDOM, + } + } + }, + }) + ``` + + ## React binding + + To use a React component for a markview, you can use the `@tiptap/react` package: + + ```ts + import { Mark } from '@tiptap/core' + import { ReactMarkViewRenderer } from '@tiptap/react' + + import Component from './Component.jsx' + + export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a React component: + + ```tsx + import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' + import React from 'react' + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) + } + ``` + + ## Vue 3 binding + + To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: + + ```ts + import { Mark } from '@tiptap/core' + import { VueMarkViewRenderer } from '@tiptap/vue-3' + + import Component from './Component.vue' + + export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a Vue 3 component: + + ```vue + + + + ``` + +- 28c5418: Adds a new `delete` event which can detect content which has been deleted by the editor as a core extension +- 412e1bd: Remove enableDevTools option +- ff8eed6: Support [`validate` option](https://prosemirror.net/docs/ref/#model.AttributeSpec.validate) in node and mark attribute definitions. +- 704f462: This introduces a new behavior for the editor, the ability to be safely run on the server-side (without rendering). + + `prosemirror-view` encapsulates all view (& DOM) related code, and cannot safely be SSR'd, but, the majority of the editor instance itself is in plain JS that does not require DOM APIs (unless your content is specified in HTML). + + But, we have so many convenient methods available for manipulating content. So, it is a shame that they could not be used on the server side too. With this change, the editor can be rendered on the server-side and will use a stub for select prosemirror-view methods. If accessing unsupported methods or values on the `editor.view`, you will encounter runtime errors, so it is important for you to test to see if the methods you call actually work. + + This is a step towards being able to server-side render content, but, it is not completely supported yet. This does not mean that you can render an editor instance on the server and expect it to just output any HTML. + + ## Usage + + If you pass `element: null` to your editor options: + + - the `editor.view` will not be initialized + - the editor will not emit it's `'create'` event + - the focus will not be initialized to it's first position + + You can however, later use the new `mount` function on the instance, which will mount the editor view to a DOM element. This obviously will not be allowed on the server which has no document object. + + Therefore, this will work on the server: + + ```ts + import { Editor } from '@tiptap/core' + import StarterKit from '@tiptap/starter-kit' + + const editor = new Editor({ + element: null, + content: { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, World!' }] }] }, + extensions: [StarterKit], + }) + + editor + .chain() + .selectAll() + .setContent({ type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'XYZ' }] }] }) + .run() + + console.log(editor.state.doc.toJSON()) + // { type: 'doc', content: [ { type: 'paragraph', content: [ { type: 'text', text: 'XYZ' } ] } ] } + ``` + + Any of these things will not work on the server, and result in a runtime error: + + ```ts + import { Editor } from '@tiptap/core' + import StarterKit from '@tiptap/starter-kit' + + const editor = new Editor({ + // document will not be defined in a server environment + element: document.createElement('div'), + content: { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, World!' }] }] }, + extensions: [StarterKit], + }) + + editor + .chain() + // focus is a command which depends on the editor-view, so it will not work in a server environment + .focus() + .run() + + console.log(editor.getHTML()) + // getHTML relies on the editor-view, so it will not work in a server environment + ``` + +- ac897e7: Added the option to create extensions with a callback function instead of a flat configuration object +- 32958d6: Extensions, Nodes and Marks no longer respect the deprecated `defaultOptions` config value + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 20f68f6: Remove `editor.getCharacterCount()` which was already deprecated and incorrectly implemented +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 9f207a6: Fixes a bug where you could not unregister multiple plugins. +- 95b8c71: Add validation for target position within document range when trying to access children of a `NodePos` instance +- 8c69002: Synced beta with stable features +- 664834f: Clone dragged node before dragging to get correct drag preview image +- 087d114: Added new `canInsertNode` utility that checks if a node can be inserted into a specific position +- fc17b21: Fix RangeException in cut command when targetPos is zero +- e20006b: Fix: Prevent content deletion from non-editable Tiptap source editors during drag and drop. +- 5ba480b: Added `updateAttributes` to MarkView and its renderers to allow updating MarkView attributes +- d6c7558: For performance, if a transaction results in the exact same editor state (either filtered out or failed to apply), then do not attempt to re-apply the same editor state and do not emit any events associated to the transaction. +- 9ceeab4: Fixed a bug where jsx-runtime cjs files would break Jest runners because of ESM syntax +- bf835b0: Fixed an issue where images placed into an empty paragraph right after an existing image would replace the existing image instead +- 4e2f6d8: migration from prosemirror-dev-tools to prosemirror-dev-toolkit +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [89bd9c7] +- Updated dependencies [8c69002] +- Updated dependencies [62b0877] + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 1f4471701a..6837ce2cb0 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -52,10 +52,10 @@ "jsx-dev-runtime" ], "devDependencies": { - "@tiptap/pm": "workspace:*" + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/pm": "workspace:*" + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index cfa9feeb00..672bae7dc4 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index dad57a969d..c98eb71465 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 45dcbbb2d2..60f932721f 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index b0ef0c94b9..709746c08f 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index f1185e68b4..0bd109281a 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,84 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 00693b8: Fixed a bug where table cell selections would not position the bubble menu accordingly +- 73d1888: Fixed a bug where the global resize handler of the BubbleMenu plugin would not be unregistered on destroy +- 1d4d928: Added `tab-index="0"` to menu wrappers +- 8c69002: Synced beta with stable features +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 9be04cd0df..41411022f9 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -37,15 +37,15 @@ }, "sideEffects": false, "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "dependencies": { "@floating-ui/dom": "^1.0.0" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "scripts": { "build": "tsup", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 54a5eb971a..466dddc563 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,174 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 2c911d2: This adds all of the list packages to the `@tiptap/extension-list` package. + + ## ListKit + + The `ListKit` export allows configuring all list extensions with one extension, and is the recommended way of using the list extensions. + + ```ts + import { ListKit } from '@tiptap/extension-list' + + new Editor({ + extensions: [ + ListKit.configure({ + bulletList: { + HTMLAttributes: 'bullet-list', + }, + orderedList: { + HTMLAttributes: 'ordered-list', + }, + listItem: { + HTMLAttributes: 'list-item', + }, + taskList: { + HTMLAttributes: 'task-list', + }, + taskItem: { + HTMLAttributes: 'task-item', + }, + listKeymap: {}, + }), + ], + }) + ``` + + ## List repackaging + + Since we've moved the code out of the list extensions to the `@tiptap/extension-list` package, you can remove the following packages from your project: + + ```bash + npm uninstall @tiptap/extension-ordered-list @tiptap/extension-bullet-list @tiptap/extension-list-keymap @tiptap/extension-list-item @tiptap/extension-task-list + ``` + + And replace them with the new `@tiptap/extension-list` package: + + ```bash + npm install @tiptap/extension-list + ``` + + ## Want to use the extensions separately? + + For more control, you can also use the extensions separately. + + ### BulletList + + This extension adds a bullet list to the editor. + + Migrate from `@tiptap/extension-bullet-list` to `@tiptap/extension-list`: + + ```diff + - import BulletList from '@tiptap/extension-bullet-list' + + import { BulletList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { BulletList } from '@tiptap/extension-list' + ``` + + ### OrderedList + + This extension adds an ordered list to the editor. + + Migrate from `@tiptap/extension-ordered-list` to `@tiptap/extension-list`: + + ```diff + - import OrderedList from '@tiptap/extension-ordered-list' + + import { OrderedList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { OrderedList } from '@tiptap/extension-list' + ``` + + ### ListItem + + This extension adds a list item to the editor. + + Migrate from `@tiptap/extension-list-item` to `@tiptap/extension-list`: + + ```diff + - import ListItem from '@tiptap/extension-list-item' + + import { ListItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListItem } from '@tiptap/extension-list' + ``` + + ### TaskList + + This extension adds a task list to the editor. + + Migrate from `@tiptap/extension-task-list` to `@tiptap/extension-list`: + + ```diff + - import TaskList from '@tiptap/extension-task-list' + + import { TaskList } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskList } from '@tiptap/extension-list' + ``` + + ### TaskItem + + This extension adds a task item to the editor. + + Migrate from `@tiptap/extension-task-item` to `@tiptap/extension-list`: + + ```diff + - import TaskItem from '@tiptap/extension-task-item' + + import { TaskItem } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { TaskItem } from '@tiptap/extension-list' + ``` + + ### ListKeymap + + This extension adds better default keybindings for lists to the editor. + + Migrate from `@tiptap/extension-list-keymap` to `@tiptap/extension-list`: + + ```diff + - import ListKeymap from '@tiptap/extension-list-keymap' + + import { ListKeymap } from '@tiptap/extension-list' + ``` + + Usage: + + ```ts + import { ListKeymap } from '@tiptap/extension-list' + ``` + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [89bd9c7] +- Updated dependencies [8c69002] +- Updated dependencies [1d4d928] + - @tiptap/extension-list@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index a924d0d847..33d9408e9c 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extension-list": "workspace:*" + "@tiptap/extension-list": "workspace:^" }, "peerDependencies": { - "@tiptap/extension-list": "workspace:*" + "@tiptap/extension-list": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 28944e3868..c410bed5dc 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,55 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/extension-code-block@3.0.1 + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index ddbe47a4fe..9e8f8558f2 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,15 +31,15 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-code-block": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/extension-code-block": "workspace:^", + "@tiptap/pm": "workspace:^", "lowlight": "^3.3.0" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-code-block": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/extension-code-block": "workspace:^", + "@tiptap/pm": "workspace:^", "lowlight": "^2 || ^3", "highlight.js": "^11" }, diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 28ca1b86d2..51019883c6 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,54 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index b98e36384c..2b52b49460 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,12 +31,12 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index e8d27c595c..b95780c32f 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 7a2867f830..ae9922dc8b 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index d8e7fe5477..bd44c7599e 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,57 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- a33d20c: Replaced y-prosemirror with @tiptap/y-tiptap +- 25ec82e: Renamed `@tiptap/extension-collaboration-cursor` to `@tiptap/extension-collaboration-caret` to clarify what kind of cursor this extension is implementing. + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- f43b2e5: Use newer y-prosemirror version to resolve dependency chaos +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 738ea3afea..708e2e77e5 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,13 +31,13 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "@tiptap/y-tiptap": "^3.0.0-beta.3" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "@tiptap/y-tiptap": "^3.0.0-beta.3" }, "repository": { diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 465b99df68..91611a37ad 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,56 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- a33d20c: Replaced y-prosemirror with @tiptap/y-tiptap + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- f43b2e5: Use newer y-prosemirror version to resolve dependency chaos +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 3e481fbc1b..d90b8dfa05 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,13 +31,13 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "@tiptap/y-tiptap": "^3.0.0-beta.3" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "@tiptap/y-tiptap": "^3.0.0-beta.3", "yjs": "^13" }, diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 24e4100528..af878dafaa 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,26 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [89bd9c7] +- Updated dependencies [f77cbac] +- Updated dependencies [0bad53e] +- Updated dependencies [0b4981c] +- Updated dependencies [3b4e06c] +- Updated dependencies [8c69002] + - @tiptap/extension-text-style@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 941403edfd..b35a44e32c 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extension-text-style": "workspace:*" + "@tiptap/extension-text-style": "workspace:^" }, "peerDependencies": { - "@tiptap/extension-text-style": "workspace:*" + "@tiptap/extension-text-style": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index ae866f0dd3..fe1c4c0917 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,72 @@ # @tiptap/extension-details +## 3.0.1 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- da7ccd9: Removed details summary and details content and include it in details +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [f77cbac] +- Updated dependencies [0bad53e] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [0b4981c] +- Updated dependencies [704f462] +- Updated dependencies [3b4e06c] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/extension-text-style@3.0.1 + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 8d9d00a045..f263c87bb4 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", @@ -31,14 +31,14 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-text-style": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/extension-text-style": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-text-style": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/extension-text-style": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index fb1b7ea75d..accb59aa37 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 7d12bc6f68..20ce36ea71 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 112c5b3a13..d782881d2d 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,55 @@ # @tiptap/extension-drag-handle-react +## 3.0.1 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [baee94b] +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [89bd9c7] +- Updated dependencies [7eaa34d] +- Updated dependencies [00693b8] +- Updated dependencies [0e3207f] +- Updated dependencies [f9a33ae] +- Updated dependencies [73d1888] +- Updated dependencies [ecb0dee] +- Updated dependencies [08593a2] +- Updated dependencies [2ea0475] +- Updated dependencies [8c69002] +- Updated dependencies [0f14cc5] +- Updated dependencies [ef12b32] +- Updated dependencies [de0504e] +- Updated dependencies [62b0877] +- Updated dependencies [cce6497] +- Updated dependencies [952623f] +- Updated dependencies [5ba480b] +- Updated dependencies [7ac01ef] +- Updated dependencies [6137cdc] + - @tiptap/react@3.0.1 + - @tiptap/pm@3.0.1 + - @tiptap/extension-drag-handle@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index d1081fc8b1..52b4e21124 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -36,16 +36,16 @@ "dist" ], "peerDependencies": { - "@tiptap/extension-drag-handle": "workspace:*", - "@tiptap/pm": "workspace:*", - "@tiptap/react": "workspace:*", + "@tiptap/extension-drag-handle": "workspace:^", + "@tiptap/pm": "workspace:^", + "@tiptap/react": "workspace:^", "react": "^16.8 || ^17 || ^18 || ^19", "react-dom": "^16.8 || ^17 || ^18 || ^19" }, "devDependencies": { - "@tiptap/extension-drag-handle": "workspace:*", - "@tiptap/pm": "workspace:*", - "@tiptap/react": "workspace:*", + "@tiptap/extension-drag-handle": "workspace:^", + "@tiptap/pm": "workspace:^", + "@tiptap/react": "workspace:^", "@types/react": "^18.0.0", "@types/react-dom": "^18.0.0", "react": "^18.0.0", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index a367fe5f08..2769ea563a 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,46 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.0.1 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [89bd9c7] +- Updated dependencies [7eaa34d] +- Updated dependencies [00693b8] +- Updated dependencies [73d1888] +- Updated dependencies [3d67595] +- Updated dependencies [8c69002] +- Updated dependencies [0f14cc5] +- Updated dependencies [62b0877] +- Updated dependencies [952623f] +- Updated dependencies [7ac01ef] +- Updated dependencies [6137cdc] + - @tiptap/vue-2@3.0.1 + - @tiptap/pm@3.0.1 + - @tiptap/extension-drag-handle@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 386ec8125a..e787a04a41 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -36,15 +36,15 @@ "dist" ], "peerDependencies": { - "@tiptap/extension-drag-handle": "workspace:*", - "@tiptap/pm": "workspace:*", - "@tiptap/vue-2": "workspace:*", + "@tiptap/extension-drag-handle": "workspace:^", + "@tiptap/pm": "workspace:^", + "@tiptap/vue-2": "workspace:^", "vue": "^2.0.0" }, "devDependencies": { - "@tiptap/extension-drag-handle": "workspace:*", - "@tiptap/pm": "workspace:*", - "@tiptap/vue-2": "workspace:*", + "@tiptap/extension-drag-handle": "workspace:^", + "@tiptap/pm": "workspace:^", + "@tiptap/vue-2": "workspace:^", "vue": "^2.0.0", "vue-ts-types": "1.6.2" }, diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index d90599a17e..531b9160df 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,47 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.0.1 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [89bd9c7] +- Updated dependencies [7eaa34d] +- Updated dependencies [00693b8] +- Updated dependencies [0e3207f] +- Updated dependencies [73d1888] +- Updated dependencies [8c69002] +- Updated dependencies [0f14cc5] +- Updated dependencies [62b0877] +- Updated dependencies [952623f] +- Updated dependencies [5ba480b] +- Updated dependencies [7ac01ef] +- Updated dependencies [6137cdc] + - @tiptap/vue-3@3.0.1 + - @tiptap/pm@3.0.1 + - @tiptap/extension-drag-handle@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 9a0e9a0026..e207c6920a 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -36,15 +36,15 @@ "dist" ], "peerDependencies": { - "@tiptap/extension-drag-handle": "workspace:*", - "@tiptap/pm": "workspace:*", - "@tiptap/vue-3": "workspace:*", + "@tiptap/extension-drag-handle": "workspace:^", + "@tiptap/pm": "workspace:^", + "@tiptap/vue-3": "workspace:^", "vue": "^3.0.0" }, "devDependencies": { - "@tiptap/extension-drag-handle": "workspace:*", - "@tiptap/pm": "workspace:*", - "@tiptap/vue-3": "workspace:*", + "@tiptap/extension-drag-handle": "workspace:^", + "@tiptap/pm": "workspace:^", + "@tiptap/vue-3": "workspace:^", "vue": "^3.0.0" }, "scripts": { diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index e6844350dd..a20ffd155e 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,73 @@ # @tiptap/extension-drag-handle +## 3.0.1 + +### Minor Changes + +- 952623f: Added logic to hide drag handle during typing to reduce visual clutter +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- 6137cdc: Fix a bug where new keydown event handling would prevent other events +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [a33d20c] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [f43b2e5] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [7ac01ef] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/extension-collaboration@3.0.1 + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + - @tiptap/extension-node-range@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 2637f5cbe8..2494a3eede 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", @@ -36,10 +36,10 @@ "dist" ], "peerDependencies": { - "@tiptap/extension-node-range": "workspace:*", - "@tiptap/core": "workspace:*", - "@tiptap/extension-collaboration": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/extension-node-range": "workspace:^", + "@tiptap/core": "workspace:^", + "@tiptap/extension-collaboration": "workspace:^", + "@tiptap/pm": "workspace:^", "@tiptap/y-tiptap": "^3.0.0-beta.3" }, "dependencies": { @@ -47,10 +47,10 @@ }, "devDependencies": { "@floating-ui/dom": "^1.6.13", - "@tiptap/extension-node-range": "workspace:*", - "@tiptap/core": "workspace:*", - "@tiptap/extension-collaboration": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/extension-node-range": "workspace:^", + "@tiptap/core": "workspace:^", + "@tiptap/extension-collaboration": "workspace:^", + "@tiptap/pm": "workspace:^", "@tiptap/y-tiptap": "^3.0.0-beta.3" }, "scripts": { diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index e60c4d1768..5ae1849984 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,71 @@ # @tiptap/extension-emoji +## 3.0.1 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- 18c8717: Added alt tag to emoji extension +- 746ed3a: Added `emoji` field to Tiptap storage interface +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [a80e62f] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [7eaa34d] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/suggestion@3.0.1 + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 2cbd6a0676..df90f17a95 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", @@ -36,9 +36,9 @@ "dist" ], "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", - "@tiptap/suggestion": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", + "@tiptap/suggestion": "workspace:^" }, "dependencies": { "emoji-regex": "^10.4.0", @@ -46,9 +46,9 @@ "is-emoji-supported": "^0.0.5" }, "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", - "@tiptap/suggestion": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", + "@tiptap/suggestion": "workspace:^", "emoji-datasource": "^7.0.2", "json5": "^2.2.3", "tsm": "^2.3.0" diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 11ff2727ee..e076ba8e46 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,71 @@ # @tiptap/extension-file-handler +## 3.0.1 + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [f77cbac] +- Updated dependencies [0bad53e] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [0b4981c] +- Updated dependencies [704f462] +- Updated dependencies [3b4e06c] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/extension-text-style@3.0.1 + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 54bb6908d8..43f07dcee7 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", @@ -31,14 +31,14 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-text-style": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/extension-text-style": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-text-style": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/extension-text-style": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 60fe8f0e96..d116ee0d0d 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,82 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 1d4d928: Added `tab-index="0"` to menu wrappers +- 8c69002: Synced beta with stable features +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 5abf632cb4..c8490c8adc 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -32,13 +32,13 @@ ], "devDependencies": { "@floating-ui/dom": "^1.6.12", - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { "@floating-ui/dom": "^1.0.0", - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 8d3ee1cbc8..e6634cdfbd 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,26 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [89bd9c7] +- Updated dependencies [f77cbac] +- Updated dependencies [0bad53e] +- Updated dependencies [0b4981c] +- Updated dependencies [3b4e06c] +- Updated dependencies [8c69002] + - @tiptap/extension-text-style@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 5fc19ca4b6..50444ef374 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/extension-text-style": "workspace:*" + "@tiptap/extension-text-style": "workspace:^" }, "peerDependencies": { - "@tiptap/extension-text-style": "workspace:*" + "@tiptap/extension-text-style": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 65bf43cc5f..e7f5efb9d9 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 8b72e60da1..72320e2b40 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index fb37560baf..a4e1280df0 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 4699c039ff..8e2dcbd5e3 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 46dfab5f71..ad33984dff 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index c6606f82b0..ee1c9f1432 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 4ba2f22739..f7db33b4a1 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,55 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 087d114: Fixed a bug that caused the horizontal rule's `setHorizontalRule` command to always return true when checked via `can()` +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 9f1124f308..f77a4ed103 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,12 +31,12 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index d4faecf98f..798221689f 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,55 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Minor Changes + +- d230f7e: Add width and height attributes to Image node + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index d7b1dc7431..bb5d7ba7de 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index c38a958596..625e6ce52a 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,75 @@ # @tiptap/extension-invisible-characters +## 3.0.1 + +### Major Changes + +- 4a421bf: Updated the default class names of the invisible and mathematics plugins + +### Minor Changes + +- 7ac01ef: We open sourced our basic pro extensions + + This release includes the following extensions that were previously only available in our Pro version: + + - `@tiptap/extension-drag-handle` + - `@tiptap/extension-drag-handle-react` + - `@tiptap/extension-drag-handle-vue-2` + - `@tiptap/extension-drag-handle-vue-3` + - `@tiptap/extension-emoji` + - `@tiptap/extension-details` + - `@tiptap/extension-file-handler` + - `@tiptap/extension-invisible-characters` + - `@tiptap/extension-mathematics` + - `@tiptap/extension-node-range` + - `@tiptap/extension-table-of-contents` + - `@tiptap/extension-unique-id` + +### Patch Changes + +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [f77cbac] +- Updated dependencies [0bad53e] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [0b4981c] +- Updated dependencies [704f462] +- Updated dependencies [3b4e06c] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/extension-text-style@3.0.1 + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 7cec3c5485..78c08bb2b5 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", @@ -31,14 +31,14 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-text-style": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/extension-text-style": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-text-style": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/extension-text-style": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index d73fe08d2d..6bd550da98 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index db01ea069b..f75bfa3688 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,10 +31,10 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*" + "@tiptap/core": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index d865c4d543..cf529e0554 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,61 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds + +### Minor Changes + +- ced913d: Add enableClickSelection option to clickHandler plugin to support selection link on click. Also add optional Escape key behaviour to clear selection and move the cursor to the end of the link. + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- c11c89e: Fix autolink option in shadow dom by extending the whitespace detection to more unicode characters +- d0557ef: Fixed links with marks not registering click events correctly +- 8c69002: Synced beta with stable features +- 27dd14b: Made attributes for `toggleLink` optional +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 065a59f10e..87011a6261 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -34,12 +34,12 @@ "linkifyjs": "^4.2.0" }, "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 0d736621e5..4cd8d1c331 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,51 @@ # Change Log +## 3.0.1 + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- 1d4d928: Added a new `a11y` option to task list items to set the checkbox aria-label +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 67701add1a..170ef1c297 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -87,12 +87,12 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 41e7a55996..d288e50a6d 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,96 @@ # @tiptap/extension-mathematics +## 3.0.1 + +### Major Changes + +- 4a421bf: Change the way inserting math nodes work – now if no LaTeX string is used for both inline and block math nodes, the current text selection will be used and replaced. This should bring the extension more in line with how other extensions work. +- 4a421bf: Updated the default class names of the invisible and mathematics plugins +- ab8bc2f: The Math extension now uses **nodes** to render mathematic content in the editor. This should improve the performance when an editor renders many math equations at the same time. + + This change is not backwards compatible, so you will need to update your code to use the new node-based API. + + At the same time, the `Mathematics` extension has been renamed to `Math` to better align with the naming conventions of other extensions - but the old name is still available for backwards compatibility. + + This extension includes two new nodes: + + - `MathInline` for inline math equations + - `MathBlock` for block math equations + + The regex patterns for the input rules were also updated to be less conflicting with text including dollar signs. The new patterns are: + + - Inline: `/(? { + const dom = document.createElement('b') + const contentDOM = document.createElement('span') + + dom.appendChild(contentDOM) + + return { + dom, + contentDOM, + } + } + }, + }) + ``` + + ## React binding + + To use a React component for a markview, you can use the `@tiptap/react` package: + + ```ts + import { Mark } from '@tiptap/core' + import { ReactMarkViewRenderer } from '@tiptap/react' + + import Component from './Component.jsx' + + export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a React component: + + ```tsx + import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' + import React from 'react' + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) + } + ``` + + ## Vue 3 binding + + To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: + + ```ts + import { Mark } from '@tiptap/core' + import { VueMarkViewRenderer } from '@tiptap/vue-3' + + import Component from './Component.vue' + + export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a Vue 3 component: + + ```vue + + + + ``` + +- 08593a2: Throw an error in development mode if `immediatelyRender` is not set in SSR mode +- ef12b32: Added support for React 19 ref in props +- cce6497: Reintroduce flushSync to sync rendering of React and ProseMirror + +### Patch Changes + +- baee94b: Added full import path for external storage sync shim +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 00693b8: Fixed a bug where table cell selections would not position the bubble menu accordingly +- f9a33ae: Fixed a bug that incorrectly added ref props when a component can't accept them (for example when React 19 is not used) +- 73d1888: Fixed a bug where the global resize handler of the BubbleMenu plugin would not be unregistered on destroy +- ecb0dee: Fixes an issue where ref props will be kept on non-supported react components +- 2ea0475: Allow setting HTML tags other than for "as" in MarkViewContent +- 8c69002: Synced beta with stable features +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options +- de0504e: attach the contentDOM to the correct position inside a react node view +- 5ba480b: Added `updateAttributes` to MarkView and its renderers to allow updating MarkView attributes +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index ad8e014f03..2859a38a95 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -44,20 +44,20 @@ "use-sync-external-store": "^1.4.0" }, "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "@types/react": "^18.3.18", "@types/react-dom": "^18.3.5", "react": "^19.0.0", "react-dom": "^19.0.0" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "workspace:*", - "@tiptap/extension-floating-menu": "workspace:*" + "@tiptap/extension-bubble-menu": "workspace:^", + "@tiptap/extension-floating-menu": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" }, diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 5414a338bb..db844abfea 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,96 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 64a74f6: We have now added the `Link`, `ListKeymap`, and `Underline` extensions to the starter kit for a smoother onboarding experience + + If you have theses extensions in your project, you can remove them from your project and use the ones from the starter kit instead. + + ```diff + - import Link from '@tiptap/extension-link' + - import ListKeymap from '@tiptap/extension-list-keymap' + - import Underline from '@tiptap/extension-underline' + + import { StarterKit } from '@tiptap/starter-kit' + ``` + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [bfec9b2] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [ce47182] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [c11c89e] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [087d114] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [d0557ef] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [2c911d2] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [52b6644] +- Updated dependencies [ced913d] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [1d4d928] +- Updated dependencies [32958d6] +- Updated dependencies [27dd14b] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/extension-list-keymap@3.0.1 + - @tiptap/extension-dropcursor@3.0.1 + - @tiptap/extension-gapcursor@3.0.1 + - @tiptap/extension-list-item@3.0.1 + - @tiptap/extension-horizontal-rule@3.0.1 + - @tiptap/extension-ordered-list@3.0.1 + - @tiptap/extension-bullet-list@3.0.1 + - @tiptap/extension-blockquote@3.0.1 + - @tiptap/extension-code-block@3.0.1 + - @tiptap/extension-hard-break@3.0.1 + - @tiptap/extension-paragraph@3.0.1 + - @tiptap/extension-underline@3.0.1 + - @tiptap/extension-document@3.0.1 + - @tiptap/extension-heading@3.0.1 + - @tiptap/extension-italic@3.0.1 + - @tiptap/extension-strike@3.0.1 + - @tiptap/extension-bold@3.0.1 + - @tiptap/extension-code@3.0.1 + - @tiptap/extension-link@3.0.1 + - @tiptap/extension-list@3.0.1 + - @tiptap/extension-text@3.0.1 + - @tiptap/extensions@3.0.1 + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 4653bbd8cb..e57fd764c4 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,30 +31,30 @@ "dist" ], "dependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/extension-blockquote": "workspace:*", - "@tiptap/extension-bold": "workspace:*", - "@tiptap/extension-bullet-list": "workspace:*", - "@tiptap/extension-code": "workspace:*", - "@tiptap/extension-code-block": "workspace:*", - "@tiptap/extension-document": "workspace:*", - "@tiptap/extension-dropcursor": "workspace:*", - "@tiptap/extension-gapcursor": "workspace:*", - "@tiptap/extension-hard-break": "workspace:*", - "@tiptap/extension-heading": "workspace:*", - "@tiptap/extension-horizontal-rule": "workspace:*", - "@tiptap/extension-italic": "workspace:*", - "@tiptap/extension-link": "workspace:*", - "@tiptap/extension-list": "workspace:*", - "@tiptap/extension-list-item": "workspace:*", - "@tiptap/extension-list-keymap": "workspace:*", - "@tiptap/extension-ordered-list": "workspace:*", - "@tiptap/extension-paragraph": "workspace:*", - "@tiptap/extension-strike": "workspace:*", - "@tiptap/extension-text": "workspace:*", - "@tiptap/extension-underline": "workspace:*", - "@tiptap/extensions": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/extension-blockquote": "workspace:^", + "@tiptap/extension-bold": "workspace:^", + "@tiptap/extension-bullet-list": "workspace:^", + "@tiptap/extension-code": "workspace:^", + "@tiptap/extension-code-block": "workspace:^", + "@tiptap/extension-document": "workspace:^", + "@tiptap/extension-dropcursor": "workspace:^", + "@tiptap/extension-gapcursor": "workspace:^", + "@tiptap/extension-hard-break": "workspace:^", + "@tiptap/extension-heading": "workspace:^", + "@tiptap/extension-horizontal-rule": "workspace:^", + "@tiptap/extension-italic": "workspace:^", + "@tiptap/extension-link": "workspace:^", + "@tiptap/extension-list": "workspace:^", + "@tiptap/extension-list-item": "workspace:^", + "@tiptap/extension-list-keymap": "workspace:^", + "@tiptap/extension-ordered-list": "workspace:^", + "@tiptap/extension-paragraph": "workspace:^", + "@tiptap/extension-strike": "workspace:^", + "@tiptap/extension-text": "workspace:^", + "@tiptap/extension-underline": "workspace:^", + "@tiptap/extensions": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index ba9d0a395a..a163b0de11 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,323 @@ # Change Log +## 3.0.1 + +### Major Changes + +- 6a53bb2: # @tiptap/static-renderer + + The `@tiptap/static-renderer` package provides a way to render a Tiptap/ProseMirror document to any target format, like an HTML string, a React component, or even markdown. It does so, by taking the original JSON of a document (or document partial) and attempts to map this to the output format, by matching against a list of nodes & marks. + + ## Why Static Render? + + The main use case for static rendering is to render a Tiptap/ProseMirror document on the server-side, for example in a Next.js or Nuxt.js application. This way, you can render the content of your editor to HTML before sending it to the client, which can improve the performance of your application. + + Another use case is to render the content of your editor to another format like markdown, which can be useful if you want to send it to a markdown-based API. + + But what makes it static? The static renderer doesn't require a browser or a DOM to render the content. It's a pure JavaScript function that takes a document (as JSON or Prosemirror Node instance) and returns the target format back. + + ## Example + + Render a Tiptap document to an HTML string: + + ```js + import StarterKit from '@tiptap/starter-kit' + import { renderToHTMLString } from '@tiptap/static-renderer' + + renderToHTMLString({ + extensions: [StarterKit], // using your extensions + // we can map nodes and marks to HTML elements + options: { + nodeMapping: { + // custom node mappings + }, + markMapping: { + // custom mark mappings + }, + unhandledNode: ({ node }) => { + // handle unhandled nodes + return `[unknown node ${node.type.name}]` + }, + unhandledMark: ({ mark }) => { + // handle unhandled marks + return `[unknown node ${mark.type.name}]` + }, + }, + // the source content to render + content: { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Hello World!', + }, + ], + }, + ], + }, + }) + // returns: '

Hello World!

' + ``` + + Render to a React component: + + ```js + import StarterKit from '@tiptap/starter-kit' + import { renderToReactElement } from '@tiptap/static-renderer' + + renderToReactElement({ + extensions: [StarterKit], // using your extensions + // we can map nodes and marks to HTML elements + options: { + nodeMapping: { + // custom node mappings + }, + markMapping: { + // custom mark mappings + }, + unhandledNode: ({ node }) => { + // handle unhandled nodes + return `[unknown node ${node.type.name}]` + }, + unhandledMark: ({ mark }) => { + // handle unhandled marks + return `[unknown node ${mark.type.name}]` + }, + }, + // the source content to render + content: { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Hello World!', + }, + ], + }, + ], + }, + }) + // returns a react node that, when evaluated, would be equivalent to: '

Hello World!

' + ``` + + There are a number of options available to customize the output, like custom node and mark mappings, or handling unhandled nodes and marks. + + ## API + + ### `renderToHTMLString` + + ```ts + function renderToHTMLString(options: { + extensions: Extension[] + content: ProsemirrorNode | JSONContent + options?: TiptapHTMLStaticRendererOptions + }): string + ``` + + #### `renderToHTMLString` Options + + - `extensions`: An array of Tiptap extensions that are used to render the content. + - `content`: The content to render. Can be a Prosemirror Node instance or a JSON representation of a Prosemirror document. + - `options`: An object with additional options. + - `options.nodeMapping`: An object that maps Prosemirror nodes to HTML strings. + - `options.markMapping`: An object that maps Prosemirror marks to HTML strings. + - `options.unhandledNode`: A function that is called when an unhandled node is encountered. + - `options.unhandledMark`: A function that is called when an unhandled mark is encountered. + + ### `renderToReactElement` + + ```ts + function renderToReactElement(options: { + extensions: Extension[] + content: ProsemirrorNode | JSONContent + options?: TiptapReactStaticRendererOptions + }): ReactElement + ``` + + #### `renderToReactElement` Options + + - `extensions`: An array of Tiptap extensions that are used to render the content. + - `content`: The content to render. Can be a Prosemirror Node instance or a JSON representation of a Prosemirror document. + - `options`: An object with additional options. + - `options.nodeMapping`: An object that maps Prosemirror nodes to React components. + - `options.markMapping`: An object that maps Prosemirror marks to React components. + - `options.unhandledNode`: A function that is called when an unhandled node is encountered. + - `options.unhandledMark`: A function that is called when an unhandled mark is encountered. + + ## How does it work? + + Each Tiptap node/mark extension can define a `renderHTML` method which is used to generate default mappings of Prosemirror nodes/marks to the target format. These can be overridden by providing custom mappings in the options. One thing to note is that the static renderer doesn't support node views automatically, so you need to provide a mapping for each node type that you want rendered as a node view. Here is an example of how you can render a node view as a React component: + + ```js + import { Node } from '@tiptap/core' + import { ReactNodeViewRenderer } from '@tiptap/react' + import StarterKit from '@tiptap/starter-kit' + import { renderToReactElement } from '@tiptap/static-renderer' + + // This component does not have a NodeViewContent, so it does not render it's children's rich text content + function MyCustomComponentWithoutContent() { + const [count, setCount] = React.useState(200) + + return ( +
setCount(a => a + 1)}> + {count} This is a react component! +
+ ) + } + + const CustomNodeExtensionWithoutContent = Node.create({ + name: 'customNodeExtensionWithoutContent', + atom: true, + renderHTML() { + return ['div', { class: 'my-custom-component-without-content' }] as const + }, + addNodeView() { + return ReactNodeViewRenderer(MyCustomComponentWithoutContent) + }, + }) + + renderToReactElement({ + extensions: [StarterKit, CustomNodeExtensionWithoutContent], + options: { + nodeMapping: { + // render the custom node with the intended node view React component + customNodeExtensionWithoutContent: MyCustomComponentWithoutContent, + }, + }, + content: { + type: 'doc', + content: [ + { + type: 'customNodeExtensionWithoutContent', + }, + ], + }, + }) + // returns:
200 This is a react component!
+ ``` + + But what if you want to render the rich text content of the node view? You can do that by providing a `NodeViewContent` component as a child of the node view component: + + ```js + import { Node } from '@tiptap/core' + import { + NodeViewContent, + ReactNodeViewContentProvider, + ReactNodeViewRenderer + } from '@tiptap/react' + import StarterKit from '@tiptap/starter-kit' + import { renderToReactElement } from '@tiptap/static-renderer' + + + // This component does have a NodeViewContent, so it will render it's children's rich text content + function MyCustomComponentWithContent() { + return ( +
+ Custom component with content in React! + +
+ ) + } + + + const CustomNodeExtensionWithContent = Node.create({ + name: 'customNodeExtensionWithContent', + content: 'text*', + group: 'block', + renderHTML() { + return ['div', { class: 'my-custom-component-with-content' }, 0] as const + }, + addNodeView() { + return ReactNodeViewRenderer(MyCustomComponentWithContent) + }, + }) + + + renderToReactElement({ + extensions: [StarterKit, CustomNodeExtensionWithContent], + options: { + nodeMapping: { + customNodeExtensionWithContent: ({ children }) => { + // To pass the content down into the NodeViewContent component, we need to wrap the custom component with the ReactNodeViewContentProvider + return ( + + + + ) + }, + }, + }, + content: { + type: 'doc', + content: [ + { + type: 'customNodeExtensionWithContent', + // rich text content + content: [ + { + type: 'text', + text: 'Hello, world!', + }, + ], + }, + ], + }, + }) + + // returns:
Custom component with content in React!
Hello, world!
+ // Note: The NodeViewContent component is rendered as a div with the attribute data-node-view-content, and the rich text content is rendered inside of it + ``` + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 81bb134: Fixed a bug causing inline-styles to be parsed as strings for React +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 2853e02608..7c663aadcf 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -72,16 +72,16 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "@types/react": "^19.0.0", "@types/react-dom": "^19.0.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" }, diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 0862005145..178ab315c4 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,84 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + +### Minor Changes + +- a80e62f: Added support for empty query messages via decorations + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 8c69002: Synced beta with stable features +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index c7b1f70f16..3abded4698 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -31,12 +31,12 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*" + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^" }, "repository": { "type": "git", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index cd8ea6ecde..f0ca8e2750 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,85 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + +- 3d67595: VueNodeViewRenderer should return `null` for `contentDOM` for a non-leaf node with no `NodeViewContent` + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 00693b8: Fixed a bug where table cell selections would not position the bubble menu accordingly +- 73d1888: Fixed a bug where the global resize handler of the BubbleMenu plugin would not be unregistered on destroy +- 8c69002: Synced beta with stable features +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 5e96f982cf..3abdef9617 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -42,17 +42,17 @@ "vue-ts-types": "1.6.2" }, "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "vue": "^2.7.16" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "workspace:*", - "@tiptap/extension-floating-menu": "workspace:*" + "@tiptap/extension-bubble-menu": "workspace:^", + "@tiptap/extension-floating-menu": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "vue": "^2.6.0" }, "repository": { diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 7f50e0f695..cec9d74bbf 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,233 @@ # Change Log +## 3.0.1 + +### Major Changes + +- a92f4a6: We are now building packages with tsup which does not support UMD builds, please repackage if you require UMD builds +- 7eaa34d: Removed tippy.js and replaced it with [Floating UI](https://floating-ui.com/) - a newer, more lightweight and customizable floating element library. + + This change is breaking existing menu implementations and will require a manual migration. + + **Affected packages:** + + - `@tiptap/extension-floating-menu` + - `@tiptap/extension-bubble-menu` + - `@tiptap/extension-mention` + - `@tiptap/suggestion` + - `@tiptap/react` + - `@tiptap/vue-2` + - `@tiptap/vue-3` + + Make sure to remove `tippyOptions` from the `FloatingMenu` and `BubbleMenu` components, and replace them with the new `options` object. Check our documentation to see how to migrate your existing menu implementations. + + - [FloatingMenu](https://tiptap.dev/docs/editor/extensions/functionality/floatingmenu) + - [BubbleMenu](https://tiptap.dev/docs/editor/extensions/functionality/bubble-menu) + + You'll also need to install `@floating-ui/dom` as a peer dependency to your project like this: + + ```bash + npm install @floating-ui/dom@^1.6.0 + ``` + + The new `options` object is compatible with all components that use these extensions. + +### Minor Changes + +- 0e3207f: Add support for [markviews](https://prosemirror.net/docs/ref/#view.MarkView), which allow you to render custom views for marks within the editor. This is useful for rendering custom UI for marks, like a color picker for a text color mark or a link editor for a link mark. + + Here is a plain JS markview example: + + ```ts + Mark.create({ + // Other options... + addMarkView() { + return ({ mark, HTMLAttributes }) => { + const dom = document.createElement('b') + const contentDOM = document.createElement('span') + + dom.appendChild(contentDOM) + + return { + dom, + contentDOM, + } + } + }, + }) + ``` + + ## React binding + + To use a React component for a markview, you can use the `@tiptap/react` package: + + ```ts + import { Mark } from '@tiptap/core' + import { ReactMarkViewRenderer } from '@tiptap/react' + + import Component from './Component.jsx' + + export default Mark.create({ + name: 'reactComponent', + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', HTMLAttributes] + }, + + addMarkView() { + return ReactMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a React component: + + ```tsx + import { MarkViewContent, MarkViewRendererProps } from '@tiptap/react' + import React from 'react' + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + export default (props: MarkViewRendererProps) => { + const [count, setCount] = React.useState(0) + + return ( + + + + + ) + } + ``` + + ## Vue 3 binding + + To use a Vue 3 component for a markview, you can use the `@tiptap/vue-3` package: + + ```ts + import { Mark } from '@tiptap/core' + import { VueMarkViewRenderer } from '@tiptap/vue-3' + + import Component from './Component.vue' + + export default Mark.create({ + name: 'vueComponent', + + parseHTML() { + return [ + { + tag: 'vue-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['vue-component', HTMLAttributes] + }, + + addMarkView() { + return VueMarkViewRenderer(Component) + }, + }) + ``` + + And here is an example of a Vue 3 component: + + ```vue + + + + ``` + +### Patch Changes + +- 1b4c82b: We are now using pnpm package aliases for versions to enable better version pinning for the monorepository +- 89bd9c7: Enforce type imports so that the bundler ignores TypeScript type imports when generating the index.js file of the dist directory +- 00693b8: Fixed a bug where table cell selections would not position the bubble menu accordingly +- 73d1888: Fixed a bug where the global resize handler of the BubbleMenu plugin would not be unregistered on destroy +- 8c69002: Synced beta with stable features +- 0f14cc5: Added missing `onShow`, `onUpdate`, `onHide` and `onDestroy` options +- 5ba480b: Added `updateAttributes` to MarkView and its renderers to allow updating MarkView attributes +- Updated dependencies [1b4c82b] +- Updated dependencies [1e91f9b] +- Updated dependencies [a92f4a6] +- Updated dependencies [8de8e13] +- Updated dependencies [20f68f6] +- Updated dependencies [5e957e5] +- Updated dependencies [89bd9c7] +- Updated dependencies [d0fda30] +- Updated dependencies [0e3207f] +- Updated dependencies [37913d5] +- Updated dependencies [28c5418] +- Updated dependencies [32958d6] +- Updated dependencies [12bb31a] +- Updated dependencies [9f207a6] +- Updated dependencies [412e1bd] +- Updated dependencies [062afaf] +- Updated dependencies [ff8eed6] +- Updated dependencies [704f462] +- Updated dependencies [95b8c71] +- Updated dependencies [8c69002] +- Updated dependencies [664834f] +- Updated dependencies [ac897e7] +- Updated dependencies [087d114] +- Updated dependencies [32958d6] +- Updated dependencies [fc17b21] +- Updated dependencies [62b0877] +- Updated dependencies [e20006b] +- Updated dependencies [5ba480b] +- Updated dependencies [d6c7558] +- Updated dependencies [062afaf] +- Updated dependencies [9ceeab4] +- Updated dependencies [32958d6] +- Updated dependencies [bf835b0] +- Updated dependencies [4e2f6d8] +- Updated dependencies [32958d6] + - @tiptap/core@3.0.1 + - @tiptap/pm@3.0.1 + ## 3.0.0-beta.30 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 5004eab1f1..2500f21101 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.0-beta.30", + "version": "3.0.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -39,17 +39,17 @@ "dist" ], "devDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "vue": "^3.5.13" }, "optionalDependencies": { - "@tiptap/extension-bubble-menu": "workspace:*", - "@tiptap/extension-floating-menu": "workspace:*" + "@tiptap/extension-bubble-menu": "workspace:^", + "@tiptap/extension-floating-menu": "workspace:^" }, "peerDependencies": { - "@tiptap/core": "workspace:*", - "@tiptap/pm": "workspace:*", + "@tiptap/core": "workspace:^", + "@tiptap/pm": "workspace:^", "vue": "^3.0.0", "@floating-ui/dom": "^1.0.0" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bfd9c9cfda..9525e1879b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -150,8 +150,8 @@ importers: specifier: 1.10.3 version: 1.10.3 '@tiptap/y-tiptap': - specifier: ^3.0.0-beta.3 - version: 3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.0 + version: 3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) d3: specifier: ^7.9.0 version: 7.9.0 @@ -307,97 +307,97 @@ importers: packages-deprecated/extension-character-count: devDependencies: '@tiptap/extensions': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extensions packages-deprecated/extension-dropcursor: devDependencies: '@tiptap/extensions': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extensions packages-deprecated/extension-focus: devDependencies: '@tiptap/extensions': - specifier: 3.0.0-beta.30 + specifier: workspace:^ version: link:../../packages/extensions packages-deprecated/extension-gapcursor: devDependencies: '@tiptap/extensions': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extensions packages-deprecated/extension-history: devDependencies: '@tiptap/extensions': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extensions packages-deprecated/extension-list-item: devDependencies: '@tiptap/extension-list': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extension-list packages-deprecated/extension-list-keymap: devDependencies: '@tiptap/extension-list': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extension-list packages-deprecated/extension-placeholder: devDependencies: '@tiptap/extensions': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extensions packages-deprecated/extension-table-cell: devDependencies: '@tiptap/extension-table': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extension-table packages-deprecated/extension-table-header: devDependencies: '@tiptap/extension-table': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extension-table packages-deprecated/extension-table-row: devDependencies: '@tiptap/extension-table': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extension-table packages-deprecated/extension-task-item: devDependencies: '@tiptap/extension-list': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extension-list packages-deprecated/extension-task-list: devDependencies: '@tiptap/extension-list': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages/extension-list packages/core: devDependencies: '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-blockquote: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-bold: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-bubble-menu: @@ -407,31 +407,31 @@ importers: version: 1.6.13 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-bullet-list: devDependencies: '@tiptap/extension-list': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-list packages/extension-code: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-code-block: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-code-block-lowlight: @@ -441,13 +441,13 @@ importers: version: 11.11.1 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/extension-code-block': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-code-block '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm lowlight: specifier: ^3.3.0 @@ -460,10 +460,10 @@ importers: version: 13.6.23 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': specifier: ^3.0.0-beta.3 @@ -472,10 +472,10 @@ importers: packages/extension-collaboration-caret: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': specifier: ^3.0.0-beta.3 @@ -484,25 +484,25 @@ importers: packages/extension-color: devDependencies: '@tiptap/extension-text-style': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-text-style packages/extension-details: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/extension-text-style': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-text-style '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-document: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-drag-handle: @@ -512,16 +512,16 @@ importers: version: 1.6.13 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/extension-collaboration': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-collaboration '@tiptap/extension-node-range': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-node-range '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': specifier: ^3.0.0-beta.3 @@ -530,13 +530,13 @@ importers: packages/extension-drag-handle-react: devDependencies: '@tiptap/extension-drag-handle': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-drag-handle '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@tiptap/react': - specifier: workspace:* + specifier: workspace:^ version: link:../react '@types/react': specifier: ^18.0.0 @@ -554,13 +554,13 @@ importers: packages/extension-drag-handle-vue-2: devDependencies: '@tiptap/extension-drag-handle': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-drag-handle '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@tiptap/vue-2': - specifier: workspace:* + specifier: workspace:^ version: link:../vue-2 vue: specifier: ^2.0.0 @@ -572,13 +572,13 @@ importers: packages/extension-drag-handle-vue-3: devDependencies: '@tiptap/extension-drag-handle': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-drag-handle '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@tiptap/vue-3': - specifier: workspace:* + specifier: workspace:^ version: link:../vue-3 vue: specifier: ^3.0.0 @@ -597,13 +597,13 @@ importers: version: 0.0.5 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@tiptap/suggestion': - specifier: workspace:* + specifier: workspace:^ version: link:../suggestion emoji-datasource: specifier: ^7.0.2 @@ -618,13 +618,13 @@ importers: packages/extension-file-handler: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/extension-text-style': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-text-style '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-floating-menu: @@ -633,67 +633,67 @@ importers: specifier: ^1.6.12 version: 1.6.13 '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-font-family: devDependencies: '@tiptap/extension-text-style': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-text-style packages/extension-hard-break: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-heading: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-highlight: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-horizontal-rule: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-image: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-invisible-characters: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/extension-text-style': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-text-style '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-italic: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-link: @@ -703,19 +703,19 @@ importers: version: 4.2.0 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-list: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-mathematics: @@ -725,10 +725,10 @@ importers: version: 0.16.22 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@types/katex': specifier: ^0.16.7 @@ -737,67 +737,67 @@ importers: packages/extension-mention: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@tiptap/suggestion': - specifier: workspace:* + specifier: workspace:^ version: link:../suggestion packages/extension-node-range: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-ordered-list: devDependencies: '@tiptap/extension-list': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-list packages/extension-paragraph: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-strike: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-subscript: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-superscript: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-table: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/extension-table-of-contents: @@ -807,10 +807,10 @@ importers: version: 10.0.0 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@types/uuid': specifier: ^10.0.0 @@ -819,31 +819,31 @@ importers: packages/extension-text: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-text-align: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-text-style: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-typography: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-underline: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extension-unique-id: @@ -853,10 +853,10 @@ importers: version: 10.0.0 devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@types/uuid': specifier: ^10.0.0 @@ -865,25 +865,25 @@ importers: packages/extension-youtube: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core packages/extensions: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/html: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm happy-dom: specifier: ^18.0.1 @@ -959,17 +959,17 @@ importers: version: 1.4.0(react@19.1.0) optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@types/react': specifier: ^18.3.18 @@ -987,85 +987,85 @@ importers: packages/starter-kit: dependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/extension-blockquote': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-blockquote '@tiptap/extension-bold': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-bold '@tiptap/extension-bullet-list': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-bullet-list '@tiptap/extension-code': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-code '@tiptap/extension-code-block': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-code-block '@tiptap/extension-document': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-document '@tiptap/extension-dropcursor': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages-deprecated/extension-dropcursor '@tiptap/extension-gapcursor': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages-deprecated/extension-gapcursor '@tiptap/extension-hard-break': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-hard-break '@tiptap/extension-heading': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-heading '@tiptap/extension-horizontal-rule': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-horizontal-rule '@tiptap/extension-italic': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-italic '@tiptap/extension-link': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-link '@tiptap/extension-list': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-list '@tiptap/extension-list-item': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages-deprecated/extension-list-item '@tiptap/extension-list-keymap': - specifier: workspace:* + specifier: workspace:^ version: link:../../packages-deprecated/extension-list-keymap '@tiptap/extension-ordered-list': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-ordered-list '@tiptap/extension-paragraph': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-paragraph '@tiptap/extension-strike': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-strike '@tiptap/extension-text': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-text '@tiptap/extension-underline': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-underline '@tiptap/extensions': - specifier: workspace:* + specifier: workspace:^ version: link:../extensions '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/static-renderer: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm '@types/react': specifier: ^19.0.0 @@ -1083,10 +1083,10 @@ importers: packages/suggestion: devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm packages/vue-2: @@ -1096,17 +1096,17 @@ importers: version: 1.6.2(vue@2.7.16) optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm vue: specifier: ^2.7.16 @@ -1119,17 +1119,17 @@ importers: version: 1.6.13 optionalDependencies: '@tiptap/extension-bubble-menu': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-bubble-menu '@tiptap/extension-floating-menu': - specifier: workspace:* + specifier: workspace:^ version: link:../extension-floating-menu devDependencies: '@tiptap/core': - specifier: workspace:* + specifier: workspace:^ version: link:../core '@tiptap/pm': - specifier: workspace:* + specifier: workspace:^ version: link:../pm vue: specifier: ^3.5.13 @@ -2927,6 +2927,16 @@ packages: '@tiptap/starter-kit@2.14.0': resolution: {integrity: sha512-Z1bKAfHl14quRI3McmdU+bs675jp6/iexEQTI9M9oHa6l3McFF38g9N3xRpPPX02MX83DghsUPupndUW/yJvEQ==} + '@tiptap/y-tiptap@3.0.0': + resolution: {integrity: sha512-HIeJZCj+KYJde2x6fONzo4o6kd7gW7eonwhQsv2p2VQnUgwNXMVhN+D6Z3AH/2i541Sq33y1PO4U/1ThCPjqbA==} + engines: {node: '>=16.0.0', npm: '>=8.0.0'} + peerDependencies: + prosemirror-model: ^1.7.1 + prosemirror-state: ^1.2.3 + prosemirror-view: ^1.9.10 + y-protocols: ^1.0.1 + yjs: ^13.5.38 + '@tiptap/y-tiptap@3.0.0-beta.3': resolution: {integrity: sha512-1U/MTG7mpkc2VEIRzVueXqpHpawflF0DUuqkPwTezmBst6HPZ+NnZuDbJGay8dh//KSXcrS1Vtu1Wqa2Z/1HTw==} engines: {node: '>=16.0.0', npm: '>=8.0.0'} @@ -8833,6 +8843,15 @@ snapshots: '@tiptap/extension-text-style': 2.14.0(@tiptap/core@2.14.0(@tiptap/pm@2.14.0)) '@tiptap/pm': 2.14.0 + '@tiptap/y-tiptap@3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23)': + dependencies: + lib0: 0.2.104 + prosemirror-model: 1.24.1 + prosemirror-state: 1.4.3 + prosemirror-view: 1.38.1 + y-protocols: 1.0.6(yjs@13.6.23) + yjs: 13.6.23 + '@tiptap/y-tiptap@3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23)': dependencies: lib0: 0.2.104 From 601b1f6711968d39928963bbf83ecc9d469b1a3e Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Mon, 14 Jul 2025 21:42:10 +0200 Subject: [PATCH 271/629] Hotfix for BubbleMenu Options Passthrough (#6628) * add missing options pass through to bubble menu & better jsdocs * fix problems with bubble menu options not being passed through correctly --- .changeset/fresh-spoons-mate.md | 5 +++++ .changeset/sixty-lizards-flow.md | 6 ++++++ packages/extension-bubble-menu/src/bubble-menu-plugin.ts | 5 ++++- packages/extension-bubble-menu/src/bubble-menu.ts | 1 + .../extension-floating-menu/src/floating-menu-plugin.ts | 5 ++++- 5 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 .changeset/fresh-spoons-mate.md create mode 100644 .changeset/sixty-lizards-flow.md diff --git a/.changeset/fresh-spoons-mate.md b/.changeset/fresh-spoons-mate.md new file mode 100644 index 0000000000..ab464b9739 --- /dev/null +++ b/.changeset/fresh-spoons-mate.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-bubble-menu': patch +--- + +Fix: Correctly pass through the bubble menu floating options diff --git a/.changeset/sixty-lizards-flow.md b/.changeset/sixty-lizards-flow.md new file mode 100644 index 0000000000..7770df7656 --- /dev/null +++ b/.changeset/sixty-lizards-flow.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-floating-menu': patch +'@tiptap/extension-bubble-menu': patch +--- + +Improvement: Added better JSDocs for the options object diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index eebf4bdeaf..9b8e3e1ad2 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -82,7 +82,10 @@ export interface BubbleMenuPluginProps { | null /** - * FloatingUI options. + * The options for the bubble menu. Those are passed to Floating UI and include options for the placement, offset, flip, shift, arrow, size, autoPlacement, + * hide, and inline middlewares. + * @default {} + * @see https://floating-ui.com/docs/computePosition#options */ options?: { strategy?: 'absolute' | 'fixed' diff --git a/packages/extension-bubble-menu/src/bubble-menu.ts b/packages/extension-bubble-menu/src/bubble-menu.ts index fcd00e97a9..561dae829b 100644 --- a/packages/extension-bubble-menu/src/bubble-menu.ts +++ b/packages/extension-bubble-menu/src/bubble-menu.ts @@ -39,6 +39,7 @@ export const BubbleMenu = Extension.create({ editor: this.editor, element: this.options.element, updateDelay: this.options.updateDelay, + options: this.options.options, shouldShow: this.options.shouldShow, }), ] diff --git a/packages/extension-floating-menu/src/floating-menu-plugin.ts b/packages/extension-floating-menu/src/floating-menu-plugin.ts index 1b12c11ce8..a779c4a540 100644 --- a/packages/extension-floating-menu/src/floating-menu-plugin.ts +++ b/packages/extension-floating-menu/src/floating-menu-plugin.ts @@ -52,7 +52,10 @@ export interface FloatingMenuPluginProps { | null /** - * FloatingUI options. + * The options for the floating menu. Those are passed to Floating UI and include options for the placement, offset, flip, shift, arrow, size, autoPlacement, + * hide, and inline middlewares. + * @default {} + * @see https://floating-ui.com/docs/computePosition#options */ options?: { strategy?: 'absolute' | 'fixed' From 50c9d676b3d227fa8b6f65da7633b0ac9759fad8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 12:11:41 +0200 Subject: [PATCH 272/629] chore(release): publish a new release version (#6629) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/fresh-spoons-mate.md | 5 ---- .changeset/sixty-lizards-flow.md | 6 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 9 ++++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 140 files changed, 548 insertions(+), 80 deletions(-) delete mode 100644 .changeset/fresh-spoons-mate.md delete mode 100644 .changeset/sixty-lizards-flow.md diff --git a/.changeset/fresh-spoons-mate.md b/.changeset/fresh-spoons-mate.md deleted file mode 100644 index ab464b9739..0000000000 --- a/.changeset/fresh-spoons-mate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-bubble-menu': patch ---- - -Fix: Correctly pass through the bubble menu floating options diff --git a/.changeset/sixty-lizards-flow.md b/.changeset/sixty-lizards-flow.md deleted file mode 100644 index 7770df7656..0000000000 --- a/.changeset/sixty-lizards-flow.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-floating-menu': patch -'@tiptap/extension-bubble-menu': patch ---- - -Improvement: Added better JSDocs for the options object diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 5beadd8767..cf1ebfeb5b 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extensions@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index ee5f6708be..df200aa3cd 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index ec4a45213c..cdd5f55b88 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extensions@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 25106e34b1..5da1ac3708 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 351c61176c..d66b38a72f 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extensions@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 8c40432752..56ade354ec 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 88ff6084b7..e56598262d 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extensions@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 3ba647c067..f6641fd811 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 8a175b01b9..292eef0511 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extensions@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index f024fa9632..a034c18bfe 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 5351e82c10..b8239509ec 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-list@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 507a636687..c0517a3072 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 78769abbc4..bfbf883695 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-list@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 58597fe071..0b21acffad 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 11d8e9969e..b3451db22e 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extensions@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index b8154cd807..6a874794c5 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 2b08d5fa49..b6226e68d8 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-table@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 53cade9925..14c886cba5 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 4d43991cbf..b24655430a 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-table@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 0073e9ec66..05507734a2 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index a3088fbc77..c568b7d603 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-table@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 4ca03ef154..a3b4439809 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 2566a50c20..65d9fd23a9 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-list@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 53211f78aa..f89b5e5532 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index add8172309..92306c6cb6 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-list@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 269dcc4b79..4e0b2a522b 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index dc0a42bc51..b3a67726ea 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/core/package.json b/packages/core/package.json index 6837ce2cb0..f0067a4dde 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 672bae7dc4..d0cf715157 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index c98eb71465..b4d056710b 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 60f932721f..55a528c246 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 709746c08f..1ecec14dd4 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 0bd109281a..27ec1e8334 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- 601b1f6: Fix: Correctly pass through the bubble menu floating options +- 601b1f6: Improvement: Added better JSDocs for the options object + - @tiptap/core@3.0.2 + - @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 41411022f9..d35a2a0cd1 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 466dddc563..686719a5ef 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-list@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 33d9408e9c..48be1077c1 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index c410bed5dc..f27e0b096a 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/extension-code-block@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 9e8f8558f2..0eb3247e82 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 51019883c6..6b1f74412c 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 2b52b49460..f0897d0b72 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index b95780c32f..8d4549a87d 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index ae9922dc8b..fafbf5abc9 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index bd44c7599e..85f9bf4d14 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 708e2e77e5..763f1e86d6 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 91611a37ad..948acd1c94 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index d90b8dfa05..117b8da2bb 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index af878dafaa..cbe2913f51 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index b35a44e32c..795e34f11a 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index fe1c4c0917..f5a3f57a0d 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/extension-text-style@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index f263c87bb4..2a432f6e64 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index accb59aa37..e39273835c 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 20ce36ea71..17f51ff8f3 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index d782881d2d..dc89d2f714 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.0.2 + +### Patch Changes + +- @tiptap/react@3.0.2 +- @tiptap/extension-drag-handle@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 52b4e21124..c7434e3c40 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 2769ea563a..3eb48a2d66 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.0.2 + +### Patch Changes + +- @tiptap/vue-2@3.0.2 +- @tiptap/extension-drag-handle@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index e787a04a41..05477ca1fc 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 531b9160df..f8693dc67b 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.0.2 + +### Patch Changes + +- @tiptap/vue-3@3.0.2 +- @tiptap/extension-drag-handle@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index e207c6920a..87729f03f1 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index a20ffd155e..a1217ffa22 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/extension-collaboration@3.0.2 +- @tiptap/extension-node-range@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 2494a3eede..4153884f98 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 5ae1849984..b2d4f4aeee 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 +- @tiptap/suggestion@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index df90f17a95..745c89d4f9 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index e076ba8e46..f19acb8841 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/extension-text-style@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 43f07dcee7..8f8871c096 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index d116ee0d0d..57d80d7578 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- 601b1f6: Improvement: Added better JSDocs for the options object + - @tiptap/core@3.0.2 + - @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index c8490c8adc..e6de65ff68 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index e6634cdfbd..e8db6f645f 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 50444ef374..3fd4869173 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index e7f5efb9d9..4c9ae52964 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 72320e2b40..47c8b9f4be 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index a4e1280df0..a994330582 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 8e2dcbd5e3..deeae307de 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index ad33984dff..f1098422aa 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index ee1c9f1432..cb31451e69 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index f7db33b4a1..e7dcd478e2 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index f77a4ed103..4a4ad8adbf 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 798221689f..3d317c0737 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index bb5d7ba7de..8035f98573 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 625e6ce52a..0874b0a620 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/extension-text-style@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 78c08bb2b5..8914db6999 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 6bd550da98..5def6a2052 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index f75bfa3688..3a5594409d 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index cf529e0554..d20ecc5b1a 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 87011a6261..2686749809 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 4cd8d1c331..7fa4189df9 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 170ef1c297..c0725d703c 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index d288e50a6d..741ab93fe4 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index bd2003c1ab..0a5dcbef30 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 5f1b76b837..b4297add9d 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 +- @tiptap/suggestion@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 033e95d5f8..d54b37523a 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index da566de069..272d3f69cd 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 2e7b3f93ab..31b17bd691 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 359f395ced..643e5f700a 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-list@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index bd4f851a03..2de4a19acf 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 6f7f9ed6e5..49ee48300e 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 1aaeb9a2b5..6b3d54d9ec 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 21a7726892..19754c347f 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index e5474e2193..57631154f6 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index ab41d2a8b2..490d573656 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 35aca3314a..0ebb6a4488 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 314d528400..781743a5d0 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 94051501ae..25623e221e 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 07e49163d8..641584bb5d 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index bfd162f5d2..a974c9b93f 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index e97eee537c..e968aa1304 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 1179359ec3..7afa25d169 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 2c5ddda7c7..118aade30a 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index f247a04ff6..49d4b2c0a1 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 01bc210e00..eeb5149ffb 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 6d4f4a6942..162e0a3d57 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 7258d4ccf7..22fa564c98 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 3793edce94..f32e468fd7 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 2bf9566d79..07191e9e55 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 9f2908fa4c..df725af77c 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 13f544e573..a96cafbc60 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 18878ca3a4..e8195faf8e 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 587bf791eb..169ec5013e 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Minor Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 9fff90bbd8..b2aa6e2f87 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 6615cd2bf1..9fb1fc70b2 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 6440b92c38..173aca81e2 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 2a7a3260f5..0aa20a9658 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 0f26553438..57a0884406 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index ccf9082c0e..f94aabfde7 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/html/package.json b/packages/html/package.json index b683a0e0c0..f7bb35368d 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 4e74441689..fb58d72925 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/pm/package.json b/packages/pm/package.json index 0ad60e9d64..f14d85cb45 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index b7242a0079..929402dc0c 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/react/package.json b/packages/react/package.json index 2859a38a95..4e59d39445 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index db844abfea..5fa76b927b 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.0.2 +- @tiptap/extension-gapcursor@3.0.2 +- @tiptap/extension-list-item@3.0.2 +- @tiptap/extension-list-keymap@3.0.2 +- @tiptap/core@3.0.2 +- @tiptap/extension-blockquote@3.0.2 +- @tiptap/extension-bold@3.0.2 +- @tiptap/extension-bullet-list@3.0.2 +- @tiptap/extension-code@3.0.2 +- @tiptap/extension-code-block@3.0.2 +- @tiptap/extension-document@3.0.2 +- @tiptap/extension-hard-break@3.0.2 +- @tiptap/extension-heading@3.0.2 +- @tiptap/extension-horizontal-rule@3.0.2 +- @tiptap/extension-italic@3.0.2 +- @tiptap/extension-link@3.0.2 +- @tiptap/extension-list@3.0.2 +- @tiptap/extension-ordered-list@3.0.2 +- @tiptap/extension-paragraph@3.0.2 +- @tiptap/extension-strike@3.0.2 +- @tiptap/extension-text@3.0.2 +- @tiptap/extension-underline@3.0.2 +- @tiptap/extensions@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index e57fd764c4..69341b8df7 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index a163b0de11..0fcc2cecf4 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 7c663aadcf..ba36713522 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 178ab315c4..d2c15a4e7b 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 3abded4698..4c50d831a1 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index f0ca8e2750..8da9dc58a6 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 3abdef9617..2867f94f7f 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index cec9d74bbf..b6374f5494 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.2 + +### Patch Changes + +- @tiptap/core@3.0.2 +- @tiptap/pm@3.0.2 + ## 3.0.1 ### Major Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 2500f21101..b00b718f31 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.1", + "version": "3.0.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 75cabde51bb58dcb3b0ecab2bf1c99708116147d Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 15 Jul 2025 13:41:41 +0200 Subject: [PATCH 273/629] fix global react overwrites via jsx-runtime (#6639) --- .changeset/grumpy-seals-shake.md | 5 +++++ .changeset/two-chefs-lie.md | 6 ++++++ packages/core/src/jsx-runtime.ts | 21 ++++++++++--------- .../extension-blockquote/src/blockquote.tsx | 3 +-- packages/extension-bold/src/bold.tsx | 3 +-- 5 files changed, 24 insertions(+), 14 deletions(-) create mode 100644 .changeset/grumpy-seals-shake.md create mode 100644 .changeset/two-chefs-lie.md diff --git a/.changeset/grumpy-seals-shake.md b/.changeset/grumpy-seals-shake.md new file mode 100644 index 0000000000..63caf748f0 --- /dev/null +++ b/.changeset/grumpy-seals-shake.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Fix: Avoid the JSX Runtime to globally overwrite React's Element types when `/** @jsxImportSource @tiptap/core */` is not used diff --git a/.changeset/two-chefs-lie.md b/.changeset/two-chefs-lie.md new file mode 100644 index 0000000000..06243defb9 --- /dev/null +++ b/.changeset/two-chefs-lie.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-blockquote': patch +'@tiptap/extension-bold': patch +--- + +Chore: Removed type overwrites for renderHTML diff --git a/packages/core/src/jsx-runtime.ts b/packages/core/src/jsx-runtime.ts index 9b9278faa0..b8f4bf03b5 100644 --- a/packages/core/src/jsx-runtime.ts +++ b/packages/core/src/jsx-runtime.ts @@ -13,16 +13,17 @@ export type DOMOutputSpecArray = | [string, Attributes, DOMOutputSpecArray | 0] | [string, DOMOutputSpecArray] -declare global { - // eslint-disable-next-line @typescript-eslint/no-namespace - namespace JSX { - // @ts-ignore - conflict with React typings - type Element = [string, ...any[]] - // @ts-ignore - conflict with React typings - interface IntrinsicElements { - // @ts-ignore - conflict with React typings - [key: string]: any - } +// JSX types for Tiptap's JSX runtime +// These types only apply when using @jsxImportSource @tiptap/core +// eslint-disable-next-line @typescript-eslint/no-namespace +export namespace JSX { + export type Element = DOMOutputSpecArray + export interface IntrinsicElements { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + [key: string]: any + } + export interface ElementChildrenAttribute { + children: unknown } } diff --git a/packages/extension-blockquote/src/blockquote.tsx b/packages/extension-blockquote/src/blockquote.tsx index ee8814fa2b..3a1b998cfd 100644 --- a/packages/extension-blockquote/src/blockquote.tsx +++ b/packages/extension-blockquote/src/blockquote.tsx @@ -1,6 +1,5 @@ /** @jsxImportSource @tiptap/core */ import { mergeAttributes, Node, wrappingInputRule } from '@tiptap/core' -import type { DOMOutputSpecArray } from '@tiptap/core/jsx-runtime' export interface BlockquoteOptions { /** @@ -63,7 +62,7 @@ export const Blockquote = Node.create({
- ) as unknown as DOMOutputSpecArray + ) }, addCommands() { diff --git a/packages/extension-bold/src/bold.tsx b/packages/extension-bold/src/bold.tsx index 1de2faa13d..ff799a83d0 100644 --- a/packages/extension-bold/src/bold.tsx +++ b/packages/extension-bold/src/bold.tsx @@ -1,6 +1,5 @@ /** @jsxImportSource @tiptap/core */ import { Mark, markInputRule, markPasteRule, mergeAttributes } from '@tiptap/core' -import type { DOMOutputSpecArray } from '@tiptap/core/jsx-runtime' export interface BoldOptions { /** @@ -88,7 +87,7 @@ export const Bold = Mark.create({ - ) as unknown as DOMOutputSpecArray + ) }, addCommands() { From b87c2c46ed64481b685fdd7e44e66371af73859d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 13:45:20 +0200 Subject: [PATCH 274/629] chore(release): publish a new release version (#6640) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/grumpy-seals-shake.md | 5 --- .changeset/two-chefs-lie.md | 6 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 +++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 8 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 140 files changed, 596 insertions(+), 80 deletions(-) delete mode 100644 .changeset/grumpy-seals-shake.md delete mode 100644 .changeset/two-chefs-lie.md diff --git a/.changeset/grumpy-seals-shake.md b/.changeset/grumpy-seals-shake.md deleted file mode 100644 index 63caf748f0..0000000000 --- a/.changeset/grumpy-seals-shake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Fix: Avoid the JSX Runtime to globally overwrite React's Element types when `/** @jsxImportSource @tiptap/core */` is not used diff --git a/.changeset/two-chefs-lie.md b/.changeset/two-chefs-lie.md deleted file mode 100644 index 06243defb9..0000000000 --- a/.changeset/two-chefs-lie.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-blockquote': patch -'@tiptap/extension-bold': patch ---- - -Chore: Removed type overwrites for renderHTML diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index cf1ebfeb5b..9e585beb4e 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extensions@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index df200aa3cd..8a537e04a1 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index cdd5f55b88..4f1127c1df 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extensions@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 5da1ac3708..3aff688df0 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index d66b38a72f..45acdd01f4 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extensions@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 56ade354ec..5b60f341c0 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index e56598262d..eb064d01e9 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extensions@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index f6641fd811..6654581146 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 292eef0511..35183356be 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extensions@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index a034c18bfe..d1c9ca4d14 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index b8239509ec..30d082afbf 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-list@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index c0517a3072..8b3ccff30b 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index bfbf883695..ae3906a8cc 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-list@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 0b21acffad..fe53324549 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index b3451db22e..98a7a14412 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extensions@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 6a874794c5..1e1bb88673 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index b6226e68d8..9d8092ed17 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-table@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 14c886cba5..811cc7e158 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index b24655430a..65d047a0a0 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-table@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 05507734a2..99ddeeb982 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index c568b7d603..d1e4fb639c 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-table@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index a3b4439809..eb34eb8c98 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 65d9fd23a9..40f4236ccf 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-list@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index f89b5e5532..bbb0a08249 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 92306c6cb6..129602f6c2 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-list@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 4e0b2a522b..92e796e41e 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index b3a67726ea..2ab2643691 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- 75cabde: Fix: Avoid the JSX Runtime to globally overwrite React's Element types when `/** @jsxImportSource @tiptap/core */` is not used + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index f0067a4dde..31426b781b 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index d0cf715157..e97557d59b 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- 75cabde: Chore: Removed type overwrites for renderHTML +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index b4d056710b..afed9ba047 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 55a528c246..5de7cc8528 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- 75cabde: Chore: Removed type overwrites for renderHTML +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 1ecec14dd4..d929e9339f 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 27ec1e8334..a587e63ec2 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index d35a2a0cd1..0677914469 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 686719a5ef..f2fc18513f 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-list@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 48be1077c1..82686ed4f8 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index f27e0b096a..f403f0adca 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/extension-code-block@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 0eb3247e82..7f70a0bb07 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 6b1f74412c..2c07a7f2db 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index f0897d0b72..74980b7559 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 8d4549a87d..cf9ce48e83 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index fafbf5abc9..81c4e1d4bf 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 85f9bf4d14..9235caf9b9 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 763f1e86d6..be966a4016 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 948acd1c94..07f5e1e69f 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 117b8da2bb..636b6735ba 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index cbe2913f51..34a5c8de16 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 795e34f11a..196424539e 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index f5a3f57a0d..c61c3e4ba5 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/extension-text-style@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 2a432f6e64..c254692ba3 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index e39273835c..205dea312c 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 17f51ff8f3..3a206a4253 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index dc89d2f714..b6d189390b 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.0.3 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.3 +- @tiptap/react@3.0.3 +- @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index c7434e3c40..b7dfeae01d 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 3eb48a2d66..dbf51c06e7 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.0.3 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.3 +- @tiptap/vue-2@3.0.3 +- @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 05477ca1fc..958fa80178 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index f8693dc67b..ff588b8a34 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.0.3 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.3 +- @tiptap/vue-3@3.0.3 +- @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 87729f03f1..c5d3514bae 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index a1217ffa22..cf4c039573 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/extension-collaboration@3.0.3 + - @tiptap/extension-node-range@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 4153884f98..a9f29f0dd1 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index b2d4f4aeee..c876c8256c 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/suggestion@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 745c89d4f9..aada835efe 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index f19acb8841..33793d97fb 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/extension-text-style@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 8f8871c096..46575bded0 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 57d80d7578..d77fb33c04 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index e6de65ff68..1ca5eeb874 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index e8db6f645f..e1f6d23337 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 3fd4869173..4df3e9e121 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 4c9ae52964..cca5336665 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 47c8b9f4be..226c3784b1 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index a994330582..d4ba276175 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index deeae307de..2c3c9c54f5 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index f1098422aa..bedc2a3110 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index cb31451e69..d16b4ace38 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index e7dcd478e2..1e92e7e09e 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 4a4ad8adbf..13d6711d4c 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 3d317c0737..e996a507fa 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 8035f98573..0c149c5f63 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 0874b0a620..dfea5d9c2c 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/extension-text-style@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 8914db6999..253bd87152 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 5def6a2052..99f0402459 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 3a5594409d..2155bedea2 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index d20ecc5b1a..5872ec12c0 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 2686749809..1a6803e9c7 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 7fa4189df9..fc0db3e8d5 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index c0725d703c..7e7ca93272 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 741ab93fe4..4fc1a0f5ff 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 0a5dcbef30..c8b458d809 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index b4297add9d..5c713d1430 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/suggestion@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index d54b37523a..525cc6801d 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 272d3f69cd..b0b46e1b8e 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 31b17bd691..599fa6c4ab 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 643e5f700a..6672d0a15f 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- @tiptap/extension-list@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 2de4a19acf..3a2ba88d19 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 49ee48300e..eafeec4014 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 6b3d54d9ec..78f0cb0761 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 19754c347f..6f1da9716c 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 57631154f6..1b676050e3 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 490d573656..22a123413f 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 0ebb6a4488..71954e2ceb 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 781743a5d0..ede3303801 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 25623e221e..b39fc947be 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 641584bb5d..49b55e8af2 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.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index a974c9b93f..030556a0bd 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index e968aa1304..7789453103 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 7afa25d169..53c63f464f 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 118aade30a..a4a54c2c13 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 49d4b2c0a1..f80086997f 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index eeb5149ffb..7a0dbaf5e7 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 162e0a3d57..c18e0fa981 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 22fa564c98..1d54757fd0 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index f32e468fd7..71acc64784 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 07191e9e55..a30628068c 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index df725af77c..4972caa4fb 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index a96cafbc60..d997ff27c6 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index e8195faf8e..65d6c23207 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 169ec5013e..4e4844e59d 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index b2aa6e2f87..38d64b9898 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 9fb1fc70b2..442a9e7e79 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 173aca81e2..1e69c4678a 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 0aa20a9658..93dfbcb7de 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 57a0884406..08b7d3c7aa 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index f94aabfde7..fe49541379 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index f7bb35368d..89a3ed6067 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index fb58d72925..af94146c84 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.3 + ## 3.0.2 ## 3.0.1 diff --git a/packages/pm/package.json b/packages/pm/package.json index f14d85cb45..2049503197 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 929402dc0c..988810d0f8 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 4e59d39445..846dc72491 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 5fa76b927b..db39ddae05 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/extension-blockquote@3.0.3 + - @tiptap/extension-bold@3.0.3 + - @tiptap/extension-code@3.0.3 + - @tiptap/extension-code-block@3.0.3 + - @tiptap/extension-document@3.0.3 + - @tiptap/extension-hard-break@3.0.3 + - @tiptap/extension-heading@3.0.3 + - @tiptap/extension-horizontal-rule@3.0.3 + - @tiptap/extension-italic@3.0.3 + - @tiptap/extension-link@3.0.3 + - @tiptap/extension-list@3.0.3 + - @tiptap/extension-paragraph@3.0.3 + - @tiptap/extension-strike@3.0.3 + - @tiptap/extension-text@3.0.3 + - @tiptap/extension-underline@3.0.3 + - @tiptap/extensions@3.0.3 + - @tiptap/extension-list-item@3.0.3 + - @tiptap/extension-list-keymap@3.0.3 + - @tiptap/extension-bullet-list@3.0.3 + - @tiptap/extension-ordered-list@3.0.3 + - @tiptap/extension-dropcursor@3.0.3 + - @tiptap/extension-gapcursor@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 69341b8df7..8b8f0515f4 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 0fcc2cecf4..4ae3e7bdc1 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index ba36713522..42cb36043b 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index d2c15a4e7b..32eb674f36 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 4c50d831a1..46d5f15266 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 8da9dc58a6..4a40d15a54 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 2867f94f7f..f53a5357ca 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index b6374f5494..1446642a2c 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.3 + +### Patch Changes + +- Updated dependencies [75cabde] + - @tiptap/core@3.0.3 + - @tiptap/pm@3.0.3 + ## 3.0.2 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index b00b718f31..de0048554b 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.2", + "version": "3.0.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 7ed03fa933fd9aef9e2f45f600404804ed820214 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 15 Jul 2025 20:33:01 +0200 Subject: [PATCH 275/629] Fix typescript loosing context to "this" when non-function options are set in extended extensions (#6645) * feat: add extend method overloads for Extension, Mark, and Node classes * added changelog --- .changeset/two-geese-work.md | 5 +++++ packages/core/src/Extension.ts | 10 +++++++++- packages/core/src/Mark.ts | 10 +++++++++- packages/core/src/Node.ts | 10 +++++++++- 4 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 .changeset/two-geese-work.md diff --git a/.changeset/two-geese-work.md b/.changeset/two-geese-work.md new file mode 100644 index 0000000000..e12bbacd99 --- /dev/null +++ b/.changeset/two-geese-work.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Fix: Add correct overload for extension extend types" diff --git a/packages/core/src/Extension.ts b/packages/core/src/Extension.ts index 1b0fb1e43f..6e016c4aa4 100644 --- a/packages/core/src/Extension.ts +++ b/packages/core/src/Extension.ts @@ -31,11 +31,19 @@ export class Extension extends Extendable< return super.configure(options) as Extension } + extend( + extendedConfig: () => Partial>, + ): Extension + extend( + extendedConfig: Partial>, + ): Extension extend< ExtendedOptions = Options, ExtendedStorage = Storage, ExtendedConfig = ExtensionConfig, - >(extendedConfig?: Partial | (() => Partial)) { + >( + extendedConfig?: Partial | (() => Partial), + ): Extension { // If the extended config is a function, execute it to get the configuration object const resolvedConfig = typeof extendedConfig === 'function' ? extendedConfig() : extendedConfig return super.extend(resolvedConfig) as Extension diff --git a/packages/core/src/Mark.ts b/packages/core/src/Mark.ts index a02ff2621d..d9ff69b935 100644 --- a/packages/core/src/Mark.ts +++ b/packages/core/src/Mark.ts @@ -188,11 +188,19 @@ export class Mark extends Extendable } + extend( + extendedConfig: () => Partial>, + ): Mark + extend( + extendedConfig: Partial>, + ): Mark extend< ExtendedOptions = Options, ExtendedStorage = Storage, ExtendedConfig = MarkConfig, - >(extendedConfig?: Partial | (() => Partial)) { + >( + extendedConfig?: Partial | (() => Partial), + ): Mark { // If the extended config is a function, execute it to get the configuration object const resolvedConfig = typeof extendedConfig === 'function' ? extendedConfig() : extendedConfig return super.extend(resolvedConfig) as Mark diff --git a/packages/core/src/Node.ts b/packages/core/src/Node.ts index 63ee315964..1c95db17b7 100644 --- a/packages/core/src/Node.ts +++ b/packages/core/src/Node.ts @@ -354,11 +354,19 @@ export class Node extends Extendable } + extend( + extendedConfig: () => Partial>, + ): Node + extend( + extendedConfig: Partial>, + ): Node extend< ExtendedOptions = Options, ExtendedStorage = Storage, ExtendedConfig = NodeConfig, - >(extendedConfig?: Partial | (() => Partial)) { + >( + extendedConfig?: Partial | (() => Partial), + ): Node { // If the extended config is a function, execute it to get the configuration object const resolvedConfig = typeof extendedConfig === 'function' ? extendedConfig() : extendedConfig return super.extend(resolvedConfig) as Node From 81b70acae016c12ed7492013649340923009330d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 20:42:48 +0200 Subject: [PATCH 276/629] chore(release): publish a new release version (#6646) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/two-geese-work.md | 5 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 +++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 139 files changed, 593 insertions(+), 74 deletions(-) delete mode 100644 .changeset/two-geese-work.md diff --git a/.changeset/two-geese-work.md b/.changeset/two-geese-work.md deleted file mode 100644 index e12bbacd99..0000000000 --- a/.changeset/two-geese-work.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Fix: Add correct overload for extension extend types" diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 9e585beb4e..d2c7260630 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extensions@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 8a537e04a1..9099d55b62 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 4f1127c1df..c5c51b17a9 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extensions@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 3aff688df0..c97fe0106a 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 45acdd01f4..de8bef911d 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extensions@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 5b60f341c0..3e1ee5e4dd 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index eb064d01e9..b4ee1238cc 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extensions@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 6654581146..b140bf2843 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 35183356be..b0b0816e04 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extensions@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index d1c9ca4d14..707982e2b2 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 30d082afbf..32e2704357 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 8b3ccff30b..a0d3f26e28 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index ae3906a8cc..0b7378a2c2 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index fe53324549..f12d1b444f 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 98a7a14412..db26e070c4 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extensions@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 1e1bb88673..543131df08 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 9d8092ed17..6515c74fbe 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-table@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 811cc7e158..dab6ee5cbe 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 65d047a0a0..d66b033ced 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-table@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 99ddeeb982..12458f24ba 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index d1e4fb639c..c756f49ad5 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-table@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index eb34eb8c98..4693af64d9 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 40f4236ccf..7ab66ba6b2 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index bbb0a08249..f98a3ced5d 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 129602f6c2..b102fde3ef 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 92e796e41e..d0ca914997 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 2ab2643691..d1a6ccb6b2 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- 7ed03fa: Fix: Add correct overload for extension extend types" + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 31426b781b..0bc6541173 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index e97557d59b..7ddcc15d15 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index afed9ba047..6a5d4b055f 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 5de7cc8528..53d0a70ccc 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index d929e9339f..7e85ababee 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index a587e63ec2..ed9b06579b 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 0677914469..0da51cdab2 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index f2fc18513f..8c7a7cb2fc 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 82686ed4f8..0cbdc4a70c 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index f403f0adca..188f9ebb01 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/extension-code-block@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 7f70a0bb07..c65ebca569 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 2c07a7f2db..d01c7cc50b 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 74980b7559..eb9f799763 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index cf9ce48e83..ce5d41fc56 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 81c4e1d4bf..5783087391 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 9235caf9b9..fc110858e8 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index be966a4016..f88a34b985 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 07f5e1e69f..61408becb0 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 636b6735ba..d33b6940da 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 34a5c8de16..d62f61f662 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 196424539e..d52c4c08c0 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index c61c3e4ba5..5c5225e4da 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/extension-text-style@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index c254692ba3..4fd32ae014 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 205dea312c..0e1dc048c4 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 3a206a4253..83659209bd 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index b6d189390b..b797fe0c7c 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.0.4 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.4 +- @tiptap/react@3.0.4 +- @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index b7dfeae01d..9829bfb28f 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index dbf51c06e7..5e90a773bb 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.0.4 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.4 +- @tiptap/vue-2@3.0.4 +- @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 958fa80178..53c6340b18 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index ff588b8a34..5199e868c9 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.0.4 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.4 +- @tiptap/vue-3@3.0.4 +- @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index c5d3514bae..61926fa587 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index cf4c039573..9895b5ad4f 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/extension-collaboration@3.0.4 + - @tiptap/extension-node-range@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index a9f29f0dd1..acb209a283 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index c876c8256c..5941cad1c0 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/suggestion@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index aada835efe..5cbdbaf8db 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 33793d97fb..e404d34458 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/extension-text-style@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 46575bded0..87fd0ca64c 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index d77fb33c04..3de06e042b 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 1ca5eeb874..d000838f62 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index e1f6d23337..9f45a2cfc7 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 4df3e9e121..a4d63f1ef9 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index cca5336665..ccca9dc5f1 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 226c3784b1..74ca5bd84a 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index d4ba276175..10e25b67a7 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 2c3c9c54f5..c7ec951e15 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index bedc2a3110..253df94843 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index d16b4ace38..7ab69dc404 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 1e92e7e09e..e1dee453f4 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 13d6711d4c..b4cd448215 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index e996a507fa..cfcf07ee01 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 0c149c5f63..e72903a87f 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index dfea5d9c2c..3251c622d4 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/extension-text-style@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 253bd87152..80e4863257 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 99f0402459..f9485fe2a1 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 2155bedea2..2357800aa8 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 5872ec12c0..8b963105b8 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 1a6803e9c7..c572f361e0 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index fc0db3e8d5..d752574e25 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 7e7ca93272..cc3f3adb08 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 4fc1a0f5ff..5fc51e533d 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index c8b458d809..91d0178ed8 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 5c713d1430..a28cff5f58 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/suggestion@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 525cc6801d..fdcdbe75bd 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index b0b46e1b8e..99c57aa670 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 599fa6c4ab..c49948a6b0 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 6672d0a15f..8ff121345b 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- @tiptap/extension-list@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 3a2ba88d19..a605f08b9e 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index eafeec4014..fbe36eaa81 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 78f0cb0761..57f19cb0b3 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 6f1da9716c..2431d42a4a 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 1b676050e3..4dd2f6c456 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 22a123413f..df117e81ac 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 71954e2ceb..502daba895 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index ede3303801..a1dcfeb306 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index b39fc947be..651f6aa7ed 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 49b55e8af2..d5762d8e14 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.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 030556a0bd..1ed60110a3 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 7789453103..0ba9118471 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 53c63f464f..e4c6bb1be8 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index a4a54c2c13..31e1939de0 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index f80086997f..368536e7c2 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 7a0dbaf5e7..e78a84114d 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index c18e0fa981..f884097b3d 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 1d54757fd0..0a059ca33b 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 71acc64784..a5f4642b80 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index a30628068c..09b5bc1452 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 4972caa4fb..c390beec72 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index d997ff27c6..ea148853f5 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 65d6c23207..8fbfdd5f6a 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 4e4844e59d..61ebe89541 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 38d64b9898..5858e4fd8b 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 442a9e7e79..e89b03cc2d 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 1e69c4678a..e6f5b81cfb 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 93dfbcb7de..615b0841fe 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 08b7d3c7aa..d8503efcc2 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index fe49541379..17cb3b57eb 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 89a3ed6067..c456207a3c 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index af94146c84..25e1152a58 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.4 + ## 3.0.3 ## 3.0.2 diff --git a/packages/pm/package.json b/packages/pm/package.json index 2049503197..061e6a2c99 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 988810d0f8..94b29b5b9c 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 846dc72491..dfb9ef8d57 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index db39ddae05..01a4a57ce8 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/extension-blockquote@3.0.4 + - @tiptap/extension-bold@3.0.4 + - @tiptap/extension-code@3.0.4 + - @tiptap/extension-code-block@3.0.4 + - @tiptap/extension-document@3.0.4 + - @tiptap/extension-hard-break@3.0.4 + - @tiptap/extension-heading@3.0.4 + - @tiptap/extension-horizontal-rule@3.0.4 + - @tiptap/extension-italic@3.0.4 + - @tiptap/extension-link@3.0.4 + - @tiptap/extension-list@3.0.4 + - @tiptap/extension-paragraph@3.0.4 + - @tiptap/extension-strike@3.0.4 + - @tiptap/extension-text@3.0.4 + - @tiptap/extension-underline@3.0.4 + - @tiptap/extensions@3.0.4 + - @tiptap/extension-list-item@3.0.4 + - @tiptap/extension-list-keymap@3.0.4 + - @tiptap/extension-bullet-list@3.0.4 + - @tiptap/extension-ordered-list@3.0.4 + - @tiptap/extension-dropcursor@3.0.4 + - @tiptap/extension-gapcursor@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 8b8f0515f4..290d8318a4 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 4ae3e7bdc1..d71d76d364 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 42cb36043b..2cba1fc147 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 32eb674f36..5fb6b86562 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 46d5f15266..65091ca789 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 4a40d15a54..7b85350df6 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index f53a5357ca..233ac594d5 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 1446642a2c..c5b22a438a 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.4 + +### Patch Changes + +- Updated dependencies [7ed03fa] + - @tiptap/core@3.0.4 + - @tiptap/pm@3.0.4 + ## 3.0.3 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index de0048554b..f827c85fb1 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.3", + "version": "3.0.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From f8a4e3e0ed778815c688246a519c64b01edb2da1 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 15 Jul 2025 21:09:11 +0200 Subject: [PATCH 277/629] make shouldShow optional on bubble and floating menu (#6648) --- .changeset/rude-students-drive.md | 6 ++++++ packages/extension-bubble-menu/src/bubble-menu-plugin.ts | 2 +- .../extension-floating-menu/src/floating-menu-plugin.ts | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .changeset/rude-students-drive.md diff --git a/.changeset/rude-students-drive.md b/.changeset/rude-students-drive.md new file mode 100644 index 0000000000..bac882afba --- /dev/null +++ b/.changeset/rude-students-drive.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-floating-menu': patch +'@tiptap/extension-bubble-menu': patch +--- + +Refactor: Make shouldShow optional on bubbleMenu and floatingMenu options diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index 9b8e3e1ad2..2d624807c0 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -69,7 +69,7 @@ export interface BubbleMenuPluginProps { * A function that determines whether the menu should be shown or not. * If this function returns `false`, the menu will be hidden, otherwise it will be shown. */ - shouldShow: + shouldShow?: | ((props: { editor: Editor element: HTMLElement diff --git a/packages/extension-floating-menu/src/floating-menu-plugin.ts b/packages/extension-floating-menu/src/floating-menu-plugin.ts index a779c4a540..a9347e0f4b 100644 --- a/packages/extension-floating-menu/src/floating-menu-plugin.ts +++ b/packages/extension-floating-menu/src/floating-menu-plugin.ts @@ -40,7 +40,7 @@ export interface FloatingMenuPluginProps { * A function that determines whether the menu should be shown or not. * If this function returns `false`, the menu will be hidden, otherwise it will be shown. */ - shouldShow: + shouldShow?: | ((props: { editor: Editor view: EditorView From 8b1f41a01d31092a391ae3e0158e60bfb1a7ecd2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 21:11:49 +0200 Subject: [PATCH 278/629] chore(release): publish a new release version (#6649) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/rude-students-drive.md | 6 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 139 files changed, 547 insertions(+), 75 deletions(-) delete mode 100644 .changeset/rude-students-drive.md diff --git a/.changeset/rude-students-drive.md b/.changeset/rude-students-drive.md deleted file mode 100644 index bac882afba..0000000000 --- a/.changeset/rude-students-drive.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-floating-menu': patch -'@tiptap/extension-bubble-menu': patch ---- - -Refactor: Make shouldShow optional on bubbleMenu and floatingMenu options diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index d2c7260630..a4b38ba291 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extensions@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 9099d55b62..33db67a6a9 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index c5c51b17a9..9ba66ae049 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extensions@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index c97fe0106a..e3b70eb6dc 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index de8bef911d..84db22c524 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extensions@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 3e1ee5e4dd..17a65fc3ca 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index b4ee1238cc..7bfaad37ee 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extensions@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index b140bf2843..5801b4a8e8 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index b0b0816e04..5e67462cc2 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extensions@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 707982e2b2..45c9214a1f 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 32e2704357..5d910f3c1d 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-list@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index a0d3f26e28..54eaa78901 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 0b7378a2c2..c87d8f0507 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-list@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index f12d1b444f..cc94c77ec3 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index db26e070c4..ae1e3da291 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extensions@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 543131df08..5d4b0302ef 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 6515c74fbe..74cbbc4a0c 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-table@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index dab6ee5cbe..aad1ac1e36 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index d66b033ced..eee5ac080d 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-table@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 12458f24ba..92be368727 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index c756f49ad5..136ae820c1 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-table@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 4693af64d9..0bae93b0b5 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 7ab66ba6b2..fcb86754a8 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-list@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index f98a3ced5d..ff4cb88cc7 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index b102fde3ef..b7f4d3f497 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-list@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index d0ca914997..702ebb0354 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index d1a6ccb6b2..626cd9683f 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 0bc6541173..5dbb04136d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 7ddcc15d15..9e22fffb7d 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 6a5d4b055f..ccc04de211 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 53d0a70ccc..289e2ee5f5 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 7e85ababee..05e99b28f8 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index ed9b06579b..fcc03bcaf9 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- f8a4e3e: Refactor: Make shouldShow optional on bubbleMenu and floatingMenu options + - @tiptap/core@3.0.5 + - @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 0da51cdab2..d76c6d9e4b 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 8c7a7cb2fc..7c6fbe7e2f 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-list@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 0cbdc4a70c..7cf1d5fbc7 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 188f9ebb01..f8f2aa2f58 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/extension-code-block@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index c65ebca569..55d3e708b8 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index d01c7cc50b..0ef85030d1 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index eb9f799763..1e201faac8 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index ce5d41fc56..90c017e289 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 5783087391..c3729060a9 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index fc110858e8..4e8b943a30 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index f88a34b985..8ffc81d10f 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 61408becb0..81136444ad 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index d33b6940da..6d1f2a128c 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index d62f61f662..a3a8e507d7 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index d52c4c08c0..b9c1d2cfe5 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 5c5225e4da..23c80264dc 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/extension-text-style@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 4fd32ae014..c4f8b332ce 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 0e1dc048c4..32081c57d3 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 83659209bd..536823a80f 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index b797fe0c7c..289597cfc2 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.0.5 + +### Patch Changes + +- @tiptap/react@3.0.5 +- @tiptap/extension-drag-handle@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 9829bfb28f..5ba0ab0e95 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 5e90a773bb..e203b3d504 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.0.5 + +### Patch Changes + +- @tiptap/vue-2@3.0.5 +- @tiptap/extension-drag-handle@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 53c6340b18..205a9bf5fc 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 5199e868c9..4b67b2ac9e 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.0.5 + +### Patch Changes + +- @tiptap/vue-3@3.0.5 +- @tiptap/extension-drag-handle@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 61926fa587..f4795c5637 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 9895b5ad4f..2dc4288082 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/extension-collaboration@3.0.5 +- @tiptap/extension-node-range@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index acb209a283..23f4ca58ff 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 5941cad1c0..62d050c66a 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 +- @tiptap/suggestion@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 5cbdbaf8db..e2299c49e5 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index e404d34458..7eea596408 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/extension-text-style@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 87fd0ca64c..ff37331022 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 3de06e042b..51f0dcc8ba 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- f8a4e3e: Refactor: Make shouldShow optional on bubbleMenu and floatingMenu options + - @tiptap/core@3.0.5 + - @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index d000838f62..b66d3584cf 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 9f45a2cfc7..2949ac0aa3 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index a4d63f1ef9..13fba7bb74 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index ccca9dc5f1..679abe2306 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 74ca5bd84a..635a4c1186 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 10e25b67a7..56e3dc24d0 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index c7ec951e15..3d8fa31f9e 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 253df94843..e93fd8220b 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 7ab69dc404..1d67f2926a 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index e1dee453f4..20245a0d44 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index b4cd448215..bf91902d2d 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index cfcf07ee01..0645db67c1 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index e72903a87f..62fd27f033 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 3251c622d4..cd6ebef81b 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/extension-text-style@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 80e4863257..ca29e715af 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index f9485fe2a1..a838b9b519 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 2357800aa8..bf0cad0833 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 8b963105b8..c488769151 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index c572f361e0..e4e1fd12ec 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index d752574e25..29617e2f04 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index cc3f3adb08..013956e12f 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 5fc51e533d..07d6820de5 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 91d0178ed8..4676c8842d 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index a28cff5f58..12b5b9fb77 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 +- @tiptap/suggestion@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index fdcdbe75bd..a2869dbdd8 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 99c57aa670..d126738f85 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index c49948a6b0..31610d6e41 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 8ff121345b..3e8ade4c66 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-list@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index a605f08b9e..5f65a3e8ce 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index fbe36eaa81..c9ee2d6320 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 57f19cb0b3..d4ffa31887 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 2431d42a4a..cf3688369e 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 4dd2f6c456..3e07e490d1 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index df117e81ac..cb408c062a 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 502daba895..b3888a5e69 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index a1dcfeb306..152c421323 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 651f6aa7ed..950bcd7386 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index d5762d8e14..8b57a50528 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 1ed60110a3..3c3382a8a8 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 0ba9118471..0c997d4db7 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index e4c6bb1be8..6f2143388e 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 31e1939de0..0ed36179c8 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 368536e7c2..c786fc949a 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index e78a84114d..717adc2df8 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index f884097b3d..e04a90d82c 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 0a059ca33b..b766e03d63 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index a5f4642b80..596c393442 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 09b5bc1452..db69a3a732 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index c390beec72..d46e2becbc 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index ea148853f5..f67cb2f565 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 8fbfdd5f6a..6010dd9a98 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 61ebe89541..8440f1a89d 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 5858e4fd8b..fdb83b2640 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index e89b03cc2d..3e5cf70975 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index e6f5b81cfb..43f0f28f80 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 615b0841fe..6bef6bd26c 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index d8503efcc2..615c683b28 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 17cb3b57eb..46b3b9595a 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index c456207a3c..c31c626192 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 25e1152a58..287a7c0239 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.5 + ## 3.0.4 ## 3.0.3 diff --git a/packages/pm/package.json b/packages/pm/package.json index 061e6a2c99..240ae2f26a 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 94b29b5b9c..531674db9c 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index dfb9ef8d57..8037514dea 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 01a4a57ce8..156ddaab86 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.0.5 +- @tiptap/extension-gapcursor@3.0.5 +- @tiptap/extension-list-item@3.0.5 +- @tiptap/extension-list-keymap@3.0.5 +- @tiptap/core@3.0.5 +- @tiptap/extension-blockquote@3.0.5 +- @tiptap/extension-bold@3.0.5 +- @tiptap/extension-bullet-list@3.0.5 +- @tiptap/extension-code@3.0.5 +- @tiptap/extension-code-block@3.0.5 +- @tiptap/extension-document@3.0.5 +- @tiptap/extension-hard-break@3.0.5 +- @tiptap/extension-heading@3.0.5 +- @tiptap/extension-horizontal-rule@3.0.5 +- @tiptap/extension-italic@3.0.5 +- @tiptap/extension-link@3.0.5 +- @tiptap/extension-list@3.0.5 +- @tiptap/extension-ordered-list@3.0.5 +- @tiptap/extension-paragraph@3.0.5 +- @tiptap/extension-strike@3.0.5 +- @tiptap/extension-text@3.0.5 +- @tiptap/extension-underline@3.0.5 +- @tiptap/extensions@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 290d8318a4..fd0938e6ca 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index d71d76d364..015614b6dc 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 2cba1fc147..fbc0d813ce 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 5fb6b86562..0a6f3b9034 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 65091ca789..b565aa6b69 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 7b85350df6..fe2f472c81 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 233ac594d5..5f074be591 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index c5b22a438a..95fbed6d63 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.5 + +### Patch Changes + +- @tiptap/core@3.0.5 +- @tiptap/pm@3.0.5 + ## 3.0.4 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index f827c85fb1..6b07a81c3d 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.4", + "version": "3.0.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 2e71d052a9edc79234531cf61a55ea0a4a16651a Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 15 Jul 2025 23:10:26 +0200 Subject: [PATCH 279/629] fix broken types for extend function chaining (#6651) --- .changeset/brave-zoos-cheat.md | 5 +++++ packages/core/src/Extension.ts | 18 +++++++++++------- packages/core/src/Mark.ts | 17 ++++++++++------- packages/core/src/Node.ts | 17 ++++++++++------- 4 files changed, 36 insertions(+), 21 deletions(-) create mode 100644 .changeset/brave-zoos-cheat.md diff --git a/.changeset/brave-zoos-cheat.md b/.changeset/brave-zoos-cheat.md new file mode 100644 index 0000000000..505f015ded --- /dev/null +++ b/.changeset/brave-zoos-cheat.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Fix: Fix broken types for function chaining when calling extend diff --git a/packages/core/src/Extension.ts b/packages/core/src/Extension.ts index 6e016c4aa4..ba6d9c4593 100644 --- a/packages/core/src/Extension.ts +++ b/packages/core/src/Extension.ts @@ -1,3 +1,4 @@ +import type { Editor } from './Editor.js' import { type ExtendableConfig, Extendable } from './Extendable.js' // eslint-disable-next-line @typescript-eslint/no-empty-object-type @@ -31,18 +32,21 @@ export class Extension extends Extendable< return super.configure(options) as Extension } - extend( - extendedConfig: () => Partial>, - ): Extension - extend( - extendedConfig: Partial>, - ): Extension extend< ExtendedOptions = Options, ExtendedStorage = Storage, ExtendedConfig = ExtensionConfig, >( - extendedConfig?: Partial | (() => Partial), + extendedConfig?: + | (() => Partial) + | (Partial & + ThisType<{ + name: string + options: ExtendedOptions + storage: ExtendedStorage + editor: Editor + type: null + }>), ): Extension { // If the extended config is a function, execute it to get the configuration object const resolvedConfig = typeof extendedConfig === 'function' ? extendedConfig() : extendedConfig diff --git a/packages/core/src/Mark.ts b/packages/core/src/Mark.ts index d9ff69b935..aecbae57aa 100644 --- a/packages/core/src/Mark.ts +++ b/packages/core/src/Mark.ts @@ -188,18 +188,21 @@ export class Mark extends Extendable } - extend( - extendedConfig: () => Partial>, - ): Mark - extend( - extendedConfig: Partial>, - ): Mark extend< ExtendedOptions = Options, ExtendedStorage = Storage, ExtendedConfig = MarkConfig, >( - extendedConfig?: Partial | (() => Partial), + extendedConfig?: + | (() => Partial) + | (Partial & + ThisType<{ + name: string + options: ExtendedOptions + storage: ExtendedStorage + editor: Editor + type: MarkType + }>), ): Mark { // If the extended config is a function, execute it to get the configuration object const resolvedConfig = typeof extendedConfig === 'function' ? extendedConfig() : extendedConfig diff --git a/packages/core/src/Node.ts b/packages/core/src/Node.ts index 1c95db17b7..843e9384dd 100644 --- a/packages/core/src/Node.ts +++ b/packages/core/src/Node.ts @@ -354,18 +354,21 @@ export class Node extends Extendable } - extend( - extendedConfig: () => Partial>, - ): Node - extend( - extendedConfig: Partial>, - ): Node extend< ExtendedOptions = Options, ExtendedStorage = Storage, ExtendedConfig = NodeConfig, >( - extendedConfig?: Partial | (() => Partial), + extendedConfig?: + | (() => Partial) + | (Partial & + ThisType<{ + name: string + options: ExtendedOptions + storage: ExtendedStorage + editor: Editor + type: NodeType + }>), ): Node { // If the extended config is a function, execute it to get the configuration object const resolvedConfig = typeof extendedConfig === 'function' ? extendedConfig() : extendedConfig From ea159ac4ae0833f6789c4af35e7768f3b511fb3a Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 23:11:58 +0200 Subject: [PATCH 280/629] chore(release): publish a new release version (#6654) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/brave-zoos-cheat.md | 5 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 +++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 139 files changed, 593 insertions(+), 74 deletions(-) delete mode 100644 .changeset/brave-zoos-cheat.md diff --git a/.changeset/brave-zoos-cheat.md b/.changeset/brave-zoos-cheat.md deleted file mode 100644 index 505f015ded..0000000000 --- a/.changeset/brave-zoos-cheat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Fix: Fix broken types for function chaining when calling extend diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index a4b38ba291..08494cabcf 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extensions@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 33db67a6a9..dbe3cf14a5 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 9ba66ae049..c2dd38bacd 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extensions@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index e3b70eb6dc..4ccfc48749 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 84db22c524..98db0792b6 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extensions@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 17a65fc3ca..b9061e41a7 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 7bfaad37ee..c61a0cbaf0 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extensions@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 5801b4a8e8..3fcb1c6ac0 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 5e67462cc2..a3847f5470 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extensions@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 45c9214a1f..a327555ee7 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 5d910f3c1d..e11303dd65 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-list@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 54eaa78901..6bc441df80 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index c87d8f0507..ec7d4ecf24 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-list@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index cc94c77ec3..3faf574384 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index ae1e3da291..c374dd8df6 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extensions@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 5d4b0302ef..8b2711ac85 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 74cbbc4a0c..53159d3dda 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-table@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index aad1ac1e36..98e2dfbc02 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index eee5ac080d..3c103ccab3 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-table@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 92be368727..bda4e2c7f9 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 136ae820c1..07c9ba185f 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-table@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 0bae93b0b5..f02f8260e5 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index fcb86754a8..70b9354122 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-list@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index ff4cb88cc7..06c04f1459 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index b7f4d3f497..d7eaecd9d0 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-list@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 702ebb0354..0efef212b2 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 626cd9683f..a1a0bfade4 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- 2e71d05: Fix: Fix broken types for function chaining when calling extend + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 5dbb04136d..1fabb7b3d5 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 9e22fffb7d..0b0f44047a 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index ccc04de211..2a75291066 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 289e2ee5f5..13f8cdb1a5 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 05e99b28f8..fb2116035c 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index fcc03bcaf9..47b4d0a750 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index d76c6d9e4b..356fcf73cf 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 7c6fbe7e2f..f1c48daa46 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-list@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 7cf1d5fbc7..32e88ce49c 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index f8f2aa2f58..25a816ba1f 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/extension-code-block@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 55d3e708b8..a50380ad7e 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 0ef85030d1..bf3ead5bf4 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 1e201faac8..90555f27d0 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 90c017e289..b5d6be5bf8 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index c3729060a9..69848bd71a 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 4e8b943a30..5f081ec249 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 8ffc81d10f..188f45206a 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 81136444ad..22356a46d2 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 6d1f2a128c..9a3c102971 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index a3a8e507d7..6b4a8aec39 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index b9c1d2cfe5..472be8cef6 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 23c80264dc..f92d795ec2 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/extension-text-style@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index c4f8b332ce..661e9156b3 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 32081c57d3..2072783ac0 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 536823a80f..b214405b14 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 289597cfc2..70600eb42a 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.0.6 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.6 +- @tiptap/react@3.0.6 +- @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 5ba0ab0e95..339a601c9a 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index e203b3d504..83aec62d2d 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.0.6 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.6 +- @tiptap/vue-2@3.0.6 +- @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 205a9bf5fc..28643cb310 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 4b67b2ac9e..53573b35bc 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.0.6 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.6 +- @tiptap/vue-3@3.0.6 +- @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index f4795c5637..ea2d393d9e 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 2dc4288082..16a1836051 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/extension-collaboration@3.0.6 + - @tiptap/extension-node-range@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 23f4ca58ff..509b327a48 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 62d050c66a..890f88c26d 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/suggestion@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index e2299c49e5..891093ec35 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 7eea596408..2a897a80c7 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/extension-text-style@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index ff37331022..42d4adcaef 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 51f0dcc8ba..1c1df398a5 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index b66d3584cf..a6d8bf1ba4 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 2949ac0aa3..b46984da0a 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 13fba7bb74..6c72f08c96 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 679abe2306..bd148da4fb 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 635a4c1186..888ca90dcd 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 56e3dc24d0..0fb5afe060 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 3d8fa31f9e..f97db38b27 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index e93fd8220b..4e0f8cbdc9 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 1d67f2926a..b6eeabe7c2 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 20245a0d44..62cc0c6d9a 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index bf91902d2d..fcc9fd4375 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 0645db67c1..7afc27c388 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 62fd27f033..7754b4db41 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index cd6ebef81b..b765c6c9ed 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/extension-text-style@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index ca29e715af..6aaa0087d3 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index a838b9b519..cef4a1bff1 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index bf0cad0833..6fb9154932 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index c488769151..18571de96b 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index e4e1fd12ec..1e3e1cfd7f 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 29617e2f04..dd378dd3ac 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 013956e12f..c951b11bda 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 07d6820de5..319cb62643 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 4676c8842d..3e570a0194 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 12b5b9fb77..a31bc3633c 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/suggestion@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index a2869dbdd8..29b7f0d106 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index d126738f85..dffaaf131d 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 31610d6e41..50e8866de3 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 3e8ade4c66..151dc5dd37 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- @tiptap/extension-list@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 5f65a3e8ce..8065c682ff 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index c9ee2d6320..57a2b0b83c 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index d4ffa31887..8d22ddfe91 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index cf3688369e..ed7ca0e3c4 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 3e07e490d1..2e84c92e10 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index cb408c062a..b8ea744be5 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index b3888a5e69..377536ec38 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 152c421323..5a7bea394d 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 950bcd7386..a5c4f4782a 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 8b57a50528..f85ace95c0 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.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 3c3382a8a8..c52a6cfbc2 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 0c997d4db7..9ab90d889c 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 6f2143388e..25d424604b 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 0ed36179c8..d5d1f1b1c3 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index c786fc949a..e7a571b137 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 717adc2df8..c60f521e65 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index e04a90d82c..9a0b2e9d2a 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index b766e03d63..812fd25798 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 596c393442..9c75c592dd 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index db69a3a732..9125ba83fe 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index d46e2becbc..f66c4ea14d 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index f67cb2f565..6e028c40ec 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 6010dd9a98..edee3d0896 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 8440f1a89d..41ebd71730 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index fdb83b2640..aa8e44fd47 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 3e5cf70975..b947e71474 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 43f0f28f80..49eebd3578 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 6bef6bd26c..0d690c0b8e 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 615c683b28..744c848d72 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 46b3b9595a..5dcea7b555 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index c31c626192..b49e360d01 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 287a7c0239..fecfa0e027 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.6 + ## 3.0.5 ## 3.0.4 diff --git a/packages/pm/package.json b/packages/pm/package.json index 240ae2f26a..6dddb6d80c 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 531674db9c..573e0f9bfe 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 8037514dea..dba3510a97 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 156ddaab86..50fd365f1d 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/extension-blockquote@3.0.6 + - @tiptap/extension-bold@3.0.6 + - @tiptap/extension-code@3.0.6 + - @tiptap/extension-code-block@3.0.6 + - @tiptap/extension-document@3.0.6 + - @tiptap/extension-hard-break@3.0.6 + - @tiptap/extension-heading@3.0.6 + - @tiptap/extension-horizontal-rule@3.0.6 + - @tiptap/extension-italic@3.0.6 + - @tiptap/extension-link@3.0.6 + - @tiptap/extension-list@3.0.6 + - @tiptap/extension-paragraph@3.0.6 + - @tiptap/extension-strike@3.0.6 + - @tiptap/extension-text@3.0.6 + - @tiptap/extension-underline@3.0.6 + - @tiptap/extensions@3.0.6 + - @tiptap/extension-list-item@3.0.6 + - @tiptap/extension-list-keymap@3.0.6 + - @tiptap/extension-bullet-list@3.0.6 + - @tiptap/extension-ordered-list@3.0.6 + - @tiptap/extension-dropcursor@3.0.6 + - @tiptap/extension-gapcursor@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index fd0938e6ca..38e317bf9e 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 015614b6dc..7b9a231cab 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index fbc0d813ce..f3de1df6bb 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 0a6f3b9034..8428a623aa 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index b565aa6b69..40ec08fabf 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index fe2f472c81..9803f3c870 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 5f074be591..78bc936e8a 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 95fbed6d63..aadea89a22 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.6 + +### Patch Changes + +- Updated dependencies [2e71d05] + - @tiptap/core@3.0.6 + - @tiptap/pm@3.0.6 + ## 3.0.5 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 6b07a81c3d..ca50d2a937 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.5", + "version": "3.0.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 6b428538000dfa369a23022d9cfa81126900938e Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 16 Jul 2025 13:11:17 +0200 Subject: [PATCH 281/629] fix broken menus when inline is true (#6658) * fix broken menus when inline is true * remove inline from demos * add missing prop to virtual element --- .changeset/afraid-oranges-smell.md | 6 ++++++ demos/src/Extensions/BubbleMenu/React/index.jsx | 4 ++++ packages/extension-bubble-menu/src/bubble-menu-plugin.ts | 5 ++++- .../extension-floating-menu/src/floating-menu-plugin.ts | 5 ++++- 4 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 .changeset/afraid-oranges-smell.md diff --git a/.changeset/afraid-oranges-smell.md b/.changeset/afraid-oranges-smell.md new file mode 100644 index 0000000000..028d70ee26 --- /dev/null +++ b/.changeset/afraid-oranges-smell.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-floating-menu': patch +'@tiptap/extension-bubble-menu': patch +--- + +Fix: Fix a problem with the inline option and virtual elements missing getClientRects diff --git a/demos/src/Extensions/BubbleMenu/React/index.jsx b/demos/src/Extensions/BubbleMenu/React/index.jsx index cd94a1d90a..f1775e1f6a 100644 --- a/demos/src/Extensions/BubbleMenu/React/index.jsx +++ b/demos/src/Extensions/BubbleMenu/React/index.jsx @@ -27,6 +27,7 @@ export default () => { return ( <> diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index 2d624807c0..319a04561b 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -316,8 +316,10 @@ export class BubbleMenuView implements PluginView { updatePosition() { const { selection } = this.editor.state + const domRect = posToDOMRect(this.view, selection.from, selection.to) let virtualElement = { - getBoundingClientRect: () => posToDOMRect(this.view, selection.from, selection.to), + getBoundingClientRect: () => domRect, + getClientRects: () => [domRect], } // this is a special case for cell selections @@ -344,6 +346,7 @@ export class BubbleMenuView implements PluginView { virtualElement = { getBoundingClientRect: () => clientRect, + getClientRects: () => [clientRect], } } diff --git a/packages/extension-floating-menu/src/floating-menu-plugin.ts b/packages/extension-floating-menu/src/floating-menu-plugin.ts index a9347e0f4b..cf28767e63 100644 --- a/packages/extension-floating-menu/src/floating-menu-plugin.ts +++ b/packages/extension-floating-menu/src/floating-menu-plugin.ts @@ -288,8 +288,11 @@ export class FloatingMenuView { updatePosition() { const { selection } = this.editor.state + const domRect = posToDOMRect(this.view, selection.from, selection.to) + const virtualElement = { - getBoundingClientRect: () => posToDOMRect(this.view, selection.from, selection.to), + getBoundingClientRect: () => domRect, + getClientRects: () => [domRect], } computePosition(virtualElement, this.element, { From 45f1be558d2e4edd5eba8853c3560a5b9b01107b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 16 Jul 2025 13:31:03 +0200 Subject: [PATCH 282/629] chore(release): publish a new release version (#6661) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/afraid-oranges-smell.md | 6 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 139 files changed, 547 insertions(+), 75 deletions(-) delete mode 100644 .changeset/afraid-oranges-smell.md diff --git a/.changeset/afraid-oranges-smell.md b/.changeset/afraid-oranges-smell.md deleted file mode 100644 index 028d70ee26..0000000000 --- a/.changeset/afraid-oranges-smell.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-floating-menu': patch -'@tiptap/extension-bubble-menu': patch ---- - -Fix: Fix a problem with the inline option and virtual elements missing getClientRects diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 08494cabcf..9628d55d00 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extensions@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index dbe3cf14a5..aa6ca3556f 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index c2dd38bacd..bedd0564a6 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extensions@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 4ccfc48749..667d7c9495 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 98db0792b6..88c71fec93 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extensions@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index b9061e41a7..481c221f3a 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index c61a0cbaf0..4de742306d 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extensions@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 3fcb1c6ac0..780b271856 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index a3847f5470..b9c4d2580b 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extensions@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index a327555ee7..acaf52ef02 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index e11303dd65..8101615288 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-list@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 6bc441df80..55a56a3efd 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index ec7d4ecf24..f87c91cfae 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-list@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 3faf574384..7fee509eb0 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index c374dd8df6..2f0c6193f1 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extensions@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 8b2711ac85..1c7dc7725b 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 53159d3dda..30990da0b9 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-table@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 98e2dfbc02..bc64e2104c 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 3c103ccab3..d99e4fd489 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-table@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index bda4e2c7f9..b600901f64 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 07c9ba185f..b675da517f 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-table@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index f02f8260e5..71dba0ad00 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 70b9354122..ffcaf30141 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-list@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 06c04f1459..cf8e120d96 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index d7eaecd9d0..e3aef464fd 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-list@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 0efef212b2..84c1ee056f 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index a1a0bfade4..5ab9007e51 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 1fabb7b3d5..9ab14be248 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 0b0f44047a..4f2b699174 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 2a75291066..35577fde1e 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 13f8cdb1a5..14eb93daf8 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index fb2116035c..f9de8d0aab 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 47b4d0a750..677cf6af88 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- 6b42853: Fix: Fix a problem with the inline option and virtual elements missing getClientRects + - @tiptap/core@3.0.7 + - @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 356fcf73cf..6b7aa82b05 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index f1c48daa46..2757667fd5 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-list@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 32e88ce49c..ef9c178594 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 25a816ba1f..ce5b35779c 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/extension-code-block@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index a50380ad7e..f33721924f 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index bf3ead5bf4..725fdb57fd 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 90555f27d0..39ff1e53c5 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index b5d6be5bf8..e1f3c35df3 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 69848bd71a..a864c0f509 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 5f081ec249..83b8774dac 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 188f45206a..44d1b274eb 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 22356a46d2..652ddba714 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 9a3c102971..c73126a569 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 6b4a8aec39..be95fb3f0a 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 472be8cef6..6b400d95e5 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index f92d795ec2..0171c7ffc7 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/extension-text-style@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 661e9156b3..976a47a0d2 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 2072783ac0..44e6fa12bd 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index b214405b14..83975f752f 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 70600eb42a..d862d25732 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.0.7 + +### Patch Changes + +- @tiptap/react@3.0.7 +- @tiptap/extension-drag-handle@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 339a601c9a..a1fd0a930d 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 83aec62d2d..381f43e2a9 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.0.7 + +### Patch Changes + +- @tiptap/vue-2@3.0.7 +- @tiptap/extension-drag-handle@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 28643cb310..f1ac40b5a7 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 53573b35bc..ac3c9825a7 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.0.7 + +### Patch Changes + +- @tiptap/vue-3@3.0.7 +- @tiptap/extension-drag-handle@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index ea2d393d9e..edca084487 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 16a1836051..09a950e2af 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/extension-collaboration@3.0.7 +- @tiptap/extension-node-range@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 509b327a48..31bb35344e 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 890f88c26d..656133be1b 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 +- @tiptap/suggestion@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 891093ec35..69c94be415 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 2a897a80c7..8bf0859321 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/extension-text-style@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 42d4adcaef..a1fe80ecb6 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 1c1df398a5..524eb92c5f 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- 6b42853: Fix: Fix a problem with the inline option and virtual elements missing getClientRects + - @tiptap/core@3.0.7 + - @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index a6d8bf1ba4..53cdc1bb17 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index b46984da0a..a799684ccf 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 6c72f08c96..9812961f07 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index bd148da4fb..393735c699 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 888ca90dcd..8ede4eaa87 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 0fb5afe060..62cd3131af 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index f97db38b27..b4cc8616f5 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 4e0f8cbdc9..f917e4823f 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index b6eeabe7c2..a32bae9694 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 62cc0c6d9a..06f13b50c2 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index fcc9fd4375..33944e757c 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 7afc27c388..1d418bdb32 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 7754b4db41..4c3147bedd 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index b765c6c9ed..215ded15ca 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/extension-text-style@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 6aaa0087d3..6f65c5d605 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index cef4a1bff1..163c116066 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 6fb9154932..8571472153 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 18571de96b..cee5a13bc6 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 1e3e1cfd7f..bbc7e2983e 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index dd378dd3ac..908641f901 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index c951b11bda..85512be1e5 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 319cb62643..79bf02fa67 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 3e570a0194..a89db430bf 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index a31bc3633c..7b1e7945f5 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 +- @tiptap/suggestion@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 29b7f0d106..fe3eb1d26c 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index dffaaf131d..16f199a56c 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 50e8866de3..d2a0b97951 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 151dc5dd37..f311e43385 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-list@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 8065c682ff..b3f0fe1b2f 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 57a2b0b83c..79a5014d0e 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 8d22ddfe91..57a8f9161f 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index ed7ca0e3c4..65b67a2675 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 2e84c92e10..b5becd4c70 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index b8ea744be5..07a045f366 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 377536ec38..e76573da63 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 5a7bea394d..3c7035765c 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index a5c4f4782a..16c5fcf273 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index f85ace95c0..cdea88bdee 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index c52a6cfbc2..662f02fb84 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 9ab90d889c..5e3940a60d 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 25d424604b..609bb1f868 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index d5d1f1b1c3..accbf6061b 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index e7a571b137..7157229265 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index c60f521e65..556ea04974 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 9a0b2e9d2a..acb99d8c69 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 812fd25798..5b916f0ee5 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 9c75c592dd..d2739fafc1 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 9125ba83fe..506eb2c52f 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index f66c4ea14d..596f2cbb34 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 6e028c40ec..4795ff7909 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index edee3d0896..a25933a2d2 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 41ebd71730..bcbd1caddc 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index aa8e44fd47..0505daa3f8 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index b947e71474..09ea733b10 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 49eebd3578..5bcec717d5 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 0d690c0b8e..aee437933e 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 744c848d72..edec45afb4 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 5dcea7b555..c65e64ebb6 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index b49e360d01..cd992802a9 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index fecfa0e027..7234abeada 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.7 + ## 3.0.6 ## 3.0.5 diff --git a/packages/pm/package.json b/packages/pm/package.json index 6dddb6d80c..7463767a64 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 573e0f9bfe..a30d12d0fd 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index dba3510a97..164933ed26 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 50fd365f1d..3550688f53 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.0.7 +- @tiptap/extension-gapcursor@3.0.7 +- @tiptap/extension-list-item@3.0.7 +- @tiptap/extension-list-keymap@3.0.7 +- @tiptap/core@3.0.7 +- @tiptap/extension-blockquote@3.0.7 +- @tiptap/extension-bold@3.0.7 +- @tiptap/extension-bullet-list@3.0.7 +- @tiptap/extension-code@3.0.7 +- @tiptap/extension-code-block@3.0.7 +- @tiptap/extension-document@3.0.7 +- @tiptap/extension-hard-break@3.0.7 +- @tiptap/extension-heading@3.0.7 +- @tiptap/extension-horizontal-rule@3.0.7 +- @tiptap/extension-italic@3.0.7 +- @tiptap/extension-link@3.0.7 +- @tiptap/extension-list@3.0.7 +- @tiptap/extension-ordered-list@3.0.7 +- @tiptap/extension-paragraph@3.0.7 +- @tiptap/extension-strike@3.0.7 +- @tiptap/extension-text@3.0.7 +- @tiptap/extension-underline@3.0.7 +- @tiptap/extensions@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 38e317bf9e..1f3b510ea8 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 7b9a231cab..016858c86d 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index f3de1df6bb..efc32e49ed 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 8428a623aa..6490cbccd5 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 40ec08fabf..43a5afec4f 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 9803f3c870..da574ad4b7 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 78bc936e8a..8350dcad56 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index aadea89a22..316ad9861d 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.7 + +### Patch Changes + +- @tiptap/core@3.0.7 +- @tiptap/pm@3.0.7 + ## 3.0.6 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index ca50d2a937..53980c44f5 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.6", + "version": "3.0.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 89990e16717a11159cc41698c5572d5991d7cc6b Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sun, 20 Jul 2025 00:40:52 +0200 Subject: [PATCH 283/629] only run deployments on main & release/* branches (#6681) --- .github/workflows/build.yml | 2 -- .github/workflows/publish.yml | 3 +-- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 226fe85f6e..689a2b6c07 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,7 +15,6 @@ on: branches: - main - develop - - next - release/* tags: - '*' @@ -23,7 +22,6 @@ on: branches: - main - develop - - next jobs: build: diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a56539c565..fc3aaf179a 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -7,8 +7,7 @@ on: push: branches: - main - - develop - - next + - release/* # manual trigger for other branches workflow_dispatch: From b4aaa9d50f1913042175fb6ce56a47b70f3cc8d3 Mon Sep 17 00:00:00 2001 From: Alex Casillas Date: Wed, 23 Jul 2025 14:59:51 +0200 Subject: [PATCH 284/629] Fix default react demo on firefox (#6708) --- demos/src/Examples/Default/React/index.tsx | 44 +++++++++++----------- demos/vite.config.ts | 2 - 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/demos/src/Examples/Default/React/index.tsx b/demos/src/Examples/Default/React/index.tsx index bf0b455ff3..fb5f55b1f8 100644 --- a/demos/src/Examples/Default/React/index.tsx +++ b/demos/src/Examples/Default/React/index.tsx @@ -14,28 +14,28 @@ function MenuBar({ editor }: { editor: Editor }) { editor, selector: ctx => { return { - isBold: ctx.editor.isActive('bold'), - canBold: ctx.editor.can().chain().focus().toggleBold().run(), - isItalic: ctx.editor.isActive('italic'), - canItalic: ctx.editor.can().chain().focus().toggleItalic().run(), - isStrike: ctx.editor.isActive('strike'), - canStrike: ctx.editor.can().chain().focus().toggleStrike().run(), - isCode: ctx.editor.isActive('code'), - canCode: ctx.editor.can().chain().focus().toggleCode().run(), - canClearMarks: ctx.editor.can().chain().focus().unsetAllMarks().run(), - isParagraph: ctx.editor.isActive('paragraph'), - isHeading1: ctx.editor.isActive('heading', { level: 1 }), - isHeading2: ctx.editor.isActive('heading', { level: 2 }), - isHeading3: ctx.editor.isActive('heading', { level: 3 }), - isHeading4: ctx.editor.isActive('heading', { level: 4 }), - isHeading5: ctx.editor.isActive('heading', { level: 5 }), - isHeading6: ctx.editor.isActive('heading', { level: 6 }), - isBulletList: ctx.editor.isActive('bulletList'), - isOrderedList: ctx.editor.isActive('orderedList'), - isCodeBlock: ctx.editor.isActive('codeBlock'), - isBlockquote: ctx.editor.isActive('blockquote'), - canUndo: ctx.editor.can().chain().focus().undo().run(), - canRedo: ctx.editor.can().chain().focus().redo().run(), + isBold: ctx.editor.isActive('bold') ?? false, + canBold: ctx.editor.can().chain().toggleBold().run() ?? false, + isItalic: ctx.editor.isActive('italic') ?? false, + canItalic: ctx.editor.can().chain().toggleItalic().run() ?? false, + isStrike: ctx.editor.isActive('strike') ?? false, + canStrike: ctx.editor.can().chain().toggleStrike().run() ?? false, + isCode: ctx.editor.isActive('code') ?? false, + canCode: ctx.editor.can().chain().toggleCode().run() ?? false, + canClearMarks: ctx.editor.can().chain().unsetAllMarks().run() ?? false, + isParagraph: ctx.editor.isActive('paragraph') ?? false, + isHeading1: ctx.editor.isActive('heading', { level: 1 }) ?? false, + isHeading2: ctx.editor.isActive('heading', { level: 2 }) ?? false, + isHeading3: ctx.editor.isActive('heading', { level: 3 }) ?? false, + isHeading4: ctx.editor.isActive('heading', { level: 4 }) ?? false, + isHeading5: ctx.editor.isActive('heading', { level: 5 }) ?? false, + isHeading6: ctx.editor.isActive('heading', { level: 6 }) ?? false, + isBulletList: ctx.editor.isActive('bulletList') ?? false, + isOrderedList: ctx.editor.isActive('orderedList') ?? false, + isCodeBlock: ctx.editor.isActive('codeBlock') ?? false, + isBlockquote: ctx.editor.isActive('blockquote') ?? false, + canUndo: ctx.editor.can().chain().undo().run() ?? false, + canRedo: ctx.editor.can().chain().redo().run() ?? false, } }, }) diff --git a/demos/vite.config.ts b/demos/vite.config.ts index ed0af0a067..45a588df76 100644 --- a/demos/vite.config.ts +++ b/demos/vite.config.ts @@ -54,8 +54,6 @@ const getPackageDependencies = () => { collectPackageInformation('packages') collectPackageInformation('packages-deprecated') - console.log(paths) - // Handle the JSX runtime alias paths.unshift({ find: '@tiptap/core/jsx-runtime', replacement: resolve('../packages/core/src/jsx-runtime.ts') }) paths.unshift({ find: '@tiptap/core/jsx-dev-runtime', replacement: resolve('../packages/core/src/jsx-runtime.ts') }) From be9820910b71efa1b464955a2b387382f911258a Mon Sep 17 00:00:00 2001 From: Alex Casillas Date: Wed, 23 Jul 2025 14:59:51 +0200 Subject: [PATCH 285/629] Fix default react demo on firefox (#6708) --- demos/src/Examples/Default/React/index.tsx | 44 +++++++++++----------- demos/vite.config.ts | 2 - 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/demos/src/Examples/Default/React/index.tsx b/demos/src/Examples/Default/React/index.tsx index bf0b455ff3..fb5f55b1f8 100644 --- a/demos/src/Examples/Default/React/index.tsx +++ b/demos/src/Examples/Default/React/index.tsx @@ -14,28 +14,28 @@ function MenuBar({ editor }: { editor: Editor }) { editor, selector: ctx => { return { - isBold: ctx.editor.isActive('bold'), - canBold: ctx.editor.can().chain().focus().toggleBold().run(), - isItalic: ctx.editor.isActive('italic'), - canItalic: ctx.editor.can().chain().focus().toggleItalic().run(), - isStrike: ctx.editor.isActive('strike'), - canStrike: ctx.editor.can().chain().focus().toggleStrike().run(), - isCode: ctx.editor.isActive('code'), - canCode: ctx.editor.can().chain().focus().toggleCode().run(), - canClearMarks: ctx.editor.can().chain().focus().unsetAllMarks().run(), - isParagraph: ctx.editor.isActive('paragraph'), - isHeading1: ctx.editor.isActive('heading', { level: 1 }), - isHeading2: ctx.editor.isActive('heading', { level: 2 }), - isHeading3: ctx.editor.isActive('heading', { level: 3 }), - isHeading4: ctx.editor.isActive('heading', { level: 4 }), - isHeading5: ctx.editor.isActive('heading', { level: 5 }), - isHeading6: ctx.editor.isActive('heading', { level: 6 }), - isBulletList: ctx.editor.isActive('bulletList'), - isOrderedList: ctx.editor.isActive('orderedList'), - isCodeBlock: ctx.editor.isActive('codeBlock'), - isBlockquote: ctx.editor.isActive('blockquote'), - canUndo: ctx.editor.can().chain().focus().undo().run(), - canRedo: ctx.editor.can().chain().focus().redo().run(), + isBold: ctx.editor.isActive('bold') ?? false, + canBold: ctx.editor.can().chain().toggleBold().run() ?? false, + isItalic: ctx.editor.isActive('italic') ?? false, + canItalic: ctx.editor.can().chain().toggleItalic().run() ?? false, + isStrike: ctx.editor.isActive('strike') ?? false, + canStrike: ctx.editor.can().chain().toggleStrike().run() ?? false, + isCode: ctx.editor.isActive('code') ?? false, + canCode: ctx.editor.can().chain().toggleCode().run() ?? false, + canClearMarks: ctx.editor.can().chain().unsetAllMarks().run() ?? false, + isParagraph: ctx.editor.isActive('paragraph') ?? false, + isHeading1: ctx.editor.isActive('heading', { level: 1 }) ?? false, + isHeading2: ctx.editor.isActive('heading', { level: 2 }) ?? false, + isHeading3: ctx.editor.isActive('heading', { level: 3 }) ?? false, + isHeading4: ctx.editor.isActive('heading', { level: 4 }) ?? false, + isHeading5: ctx.editor.isActive('heading', { level: 5 }) ?? false, + isHeading6: ctx.editor.isActive('heading', { level: 6 }) ?? false, + isBulletList: ctx.editor.isActive('bulletList') ?? false, + isOrderedList: ctx.editor.isActive('orderedList') ?? false, + isCodeBlock: ctx.editor.isActive('codeBlock') ?? false, + isBlockquote: ctx.editor.isActive('blockquote') ?? false, + canUndo: ctx.editor.can().chain().undo().run() ?? false, + canRedo: ctx.editor.can().chain().redo().run() ?? false, } }, }) diff --git a/demos/vite.config.ts b/demos/vite.config.ts index ed0af0a067..45a588df76 100644 --- a/demos/vite.config.ts +++ b/demos/vite.config.ts @@ -54,8 +54,6 @@ const getPackageDependencies = () => { collectPackageInformation('packages') collectPackageInformation('packages-deprecated') - console.log(paths) - // Handle the JSX runtime alias paths.unshift({ find: '@tiptap/core/jsx-runtime', replacement: resolve('../packages/core/src/jsx-runtime.ts') }) paths.unshift({ find: '@tiptap/core/jsx-dev-runtime', replacement: resolve('../packages/core/src/jsx-runtime.ts') }) From e4ca289d9554e32f7abb693414514cdc1cb6d331 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz?= <36490673+Freemantle01@users.noreply.github.com> Date: Wed, 23 Jul 2025 20:28:44 +0200 Subject: [PATCH 286/629] dosc: Fixed the React example for CharacterCount extension (#6700) * Fixed the example for CharacterCount * Refactor fix based on the PR's comments. --- .../Extensions/CharacterCount/React/index.jsx | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/demos/src/Extensions/CharacterCount/React/index.jsx b/demos/src/Extensions/CharacterCount/React/index.jsx index f2d96d70e2..88a6999c1b 100644 --- a/demos/src/Extensions/CharacterCount/React/index.jsx +++ b/demos/src/Extensions/CharacterCount/React/index.jsx @@ -4,8 +4,7 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import { CharacterCount } from '@tiptap/extensions' -import { EditorContent, useEditor } from '@tiptap/react' -import React from 'react' +import { EditorContent, useEditor, useEditorState } from '@tiptap/react' const limit = 280 @@ -26,19 +25,25 @@ export default () => { `, }) + const { charactersCount, wordsCount } = useEditorState({ + editor, + selector: context => ({ + charactersCount: context.editor.storage.characterCount.characters(), + wordsCount: context.editor.storage.characterCount.words(), + }), + }) + if (!editor) { return null } - const percentage = editor ? Math.round((100 / limit) * editor.storage.characterCount.characters()) : 0 + const percentage = editor ? Math.round((100 / limit) * charactersCount) : 0 return ( <> -
+
{ /> - {editor.storage.characterCount.characters()} / {limit} characters + {charactersCount} / {limit} characters
- {editor.storage.characterCount.words()} words + {wordsCount} words
) From 08a8f551d9c42161038bd0c1c93aec2e17fc135c Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 24 Jul 2025 11:40:40 +0200 Subject: [PATCH 287/629] use --strict-peer-dependencies making sure builds are running through sucessfully (#6710) --- .github/workflows/build.yml | 2 +- .github/workflows/publish.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 689a2b6c07..b0073a1c74 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -127,7 +127,7 @@ jobs: - name: Install dependencies id: install-dependencies - run: pnpm install && pnpm exec cypress install + run: pnpm install --strict-peer-dependencies && pnpm exec cypress install - name: Try to build the packages id: build-packages diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index fc3aaf179a..7916ec7ba0 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -57,7 +57,7 @@ jobs: ${{ runner.os }}-turbo- - name: Install Dependencies - run: pnpm i + run: pnpm install --strict-peer-dependencies - name: Setup npmrc run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc From e50fac73bc223ea6f030fe34e4a78d537329d60b Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 24 Jul 2025 11:40:40 +0200 Subject: [PATCH 288/629] use --strict-peer-dependencies making sure builds are running through sucessfully (#6710) --- .github/workflows/build.yml | 2 +- .github/workflows/publish.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 689a2b6c07..b0073a1c74 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -127,7 +127,7 @@ jobs: - name: Install dependencies id: install-dependencies - run: pnpm install && pnpm exec cypress install + run: pnpm install --strict-peer-dependencies && pnpm exec cypress install - name: Try to build the packages id: build-packages diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index fc3aaf179a..7916ec7ba0 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -57,7 +57,7 @@ jobs: ${{ runner.os }}-turbo- - name: Install Dependencies - run: pnpm i + run: pnpm install --strict-peer-dependencies - name: Setup npmrc run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc From 072b110a93862ccf95219fc8ca45f6961bddd904 Mon Sep 17 00:00:00 2001 From: Stephen Kennedy Date: Sat, 26 Jul 2025 09:48:28 +1000 Subject: [PATCH 289/629] Fixed the Vue Drag Handle always appearing on initial page load (#6704) * Fixed the Vue Drag Handle always appearing on initial page load * Corrected changelog approach * Removed issue link --- .changeset/healthy-buckets-reflect.md | 5 +++++ .../extension-drag-handle-vue-3/src/DragHandle.ts | 11 ++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 .changeset/healthy-buckets-reflect.md diff --git a/.changeset/healthy-buckets-reflect.md b/.changeset/healthy-buckets-reflect.md new file mode 100644 index 0000000000..4a6832ec2b --- /dev/null +++ b/.changeset/healthy-buckets-reflect.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-drag-handle-vue-3': patch +--- + +Fixed the Vue 3 Drag Handle so it only appears when the user starts interacting with the text editor. diff --git a/packages/extension-drag-handle-vue-3/src/DragHandle.ts b/packages/extension-drag-handle-vue-3/src/DragHandle.ts index e405b2b8fc..b5a729e5a1 100644 --- a/packages/extension-drag-handle-vue-3/src/DragHandle.ts +++ b/packages/extension-drag-handle-vue-3/src/DragHandle.ts @@ -68,6 +68,15 @@ export const DragHandle = defineComponent({ editor.unregisterPlugin(pluginKey as string) }) - return () => h('div', { ref: root, class: props.class }, slots.default?.()) + return () => + h( + 'div', + { + ref: root, + class: props.class, + style: { visibility: 'hidden', position: 'absolute' }, + }, + slots.default?.(), + ) }, }) From e0567acfcad097f65dd76e87804eff1c9d805320 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 31 Jul 2025 13:11:52 +0200 Subject: [PATCH 290/629] chore: update README to reflect valid subscription for pro extensions (#6745) * chore: update README to reflect valid subscription for pro extensions * add missing . --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8847f56eac..d422143c37 100644 --- a/README.md +++ b/README.md @@ -22,9 +22,10 @@ Tiptap Editor is complemented by the collaboration open-source backend [Hocuspoc The **Pro Extensions** are a set of advanced functionalities that enhance the capabilities of the Tiptap Editor. They are additional features that can be integrated into the base editor to provide more sophisticated editing options. -Key functionalities include collaborative editing, which allows multiple users to edit documents simultaneously, drag-and-drop file management for easier handling of documents and media, and unique node ID assignment. Review the docs right [here](https://tiptap.dev/docs/editor/extensions). +Key functionalities include collaborative editing, commenting, versioning, document conversion and AI related features. +Review the docs right [here](https://tiptap.dev/docs/editor/extensions). -Pro Extensions are free with a [Tiptap account](https://cloud.tiptap.dev/pro-extensions). Once signed up, review the guide in your account. +Pro Extensions need a valid subscription. ### Make your editor collaborative From 990084c70ca41a14cee195d5203f7bb4466bc65d Mon Sep 17 00:00:00 2001 From: Alex Casillas Date: Fri, 1 Aug 2025 10:55:37 +0200 Subject: [PATCH 291/629] Bump linkifyjs dependency to fix the prototype pollution vulnerability (#6749) --- .changeset/calm-colts-study.md | 5 +++++ packages/extension-link/package.json | 2 +- pnpm-lock.yaml | 9 +++++++-- 3 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 .changeset/calm-colts-study.md diff --git a/.changeset/calm-colts-study.md b/.changeset/calm-colts-study.md new file mode 100644 index 0000000000..9deb51131f --- /dev/null +++ b/.changeset/calm-colts-study.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-link': patch +--- + +Bump linkifyjs version to latest to address the recently discovered prototype pollution vulnerability diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index bbc7e2983e..fec64622ab 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -31,7 +31,7 @@ "dist" ], "dependencies": { - "linkifyjs": "^4.2.0" + "linkifyjs": "^4.3.2" }, "devDependencies": { "@tiptap/core": "workspace:^", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9525e1879b..0c3e7e3ddd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -699,8 +699,8 @@ importers: packages/extension-link: dependencies: linkifyjs: - specifier: ^4.2.0 - version: 4.2.0 + specifier: ^4.3.2 + version: 4.3.2 devDependencies: '@tiptap/core': specifier: workspace:^ @@ -5155,6 +5155,9 @@ packages: linkifyjs@4.2.0: resolution: {integrity: sha512-pCj3PrQyATaoTYKHrgWRF3SJwsm61udVh+vuls/Rl6SptiDhgE7ziUIudAedRY9QEfynmM7/RmLEfPUyw1HPCw==} + linkifyjs@4.3.2: + resolution: {integrity: sha512-NT1CJtq3hHIreOianA8aSXn6Cw0JzYOuDQbOrSPe7gqFnCpKP++MQe3ODgO3oh2GJFORkAAdqredOa60z63GbA==} + lint-staged@15.4.1: resolution: {integrity: sha512-P8yJuVRyLrm5KxCtFx+gjI5Bil+wO7wnTl7C3bXhvtTaAFGirzeB24++D0wGoUwxrUKecNiehemgCob9YL39NA==} engines: {node: '>=18.12.0'} @@ -11351,6 +11354,8 @@ snapshots: linkifyjs@4.2.0: {} + linkifyjs@4.3.2: {} + lint-staged@15.4.1: dependencies: chalk: 5.4.1 From ed0dd524d21ef5eb82f4e6f8d85b902f3241925b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 1 Aug 2025 12:06:02 +0200 Subject: [PATCH 292/629] chore(release): publish a new release version (#6750) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/calm-colts-study.md | 5 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 139 files changed, 547 insertions(+), 74 deletions(-) delete mode 100644 .changeset/calm-colts-study.md diff --git a/.changeset/calm-colts-study.md b/.changeset/calm-colts-study.md deleted file mode 100644 index 9deb51131f..0000000000 --- a/.changeset/calm-colts-study.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-link': patch ---- - -Bump linkifyjs version to latest to address the recently discovered prototype pollution vulnerability diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 9628d55d00..f5dfe3e7f5 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extensions@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index aa6ca3556f..4e6d74e1f2 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index bedd0564a6..2e9062b193 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extensions@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 667d7c9495..452d008a4d 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 88c71fec93..e09b533ec2 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extensions@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 481c221f3a..08d9187211 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 4de742306d..376ab6942c 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extensions@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 780b271856..3c9355a66c 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index b9c4d2580b..59c78a08f3 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extensions@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index acaf52ef02..88cc0504bf 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 8101615288..94d66f5254 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-list@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 55a56a3efd..8ea01ffc64 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index f87c91cfae..da40a0f789 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-list@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 7fee509eb0..614381c62d 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 2f0c6193f1..f9535e510d 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extensions@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 1c7dc7725b..8c297489f7 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 30990da0b9..dabc7ffbbe 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-table@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index bc64e2104c..b2dc0fc112 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index d99e4fd489..fd599b03e3 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-table@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index b600901f64..79c08b4639 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index b675da517f..f2058d3490 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-table@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 71dba0ad00..03acf21e76 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index ffcaf30141..233a2b7f41 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-list@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index cf8e120d96..4ca9df6afa 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index e3aef464fd..1f508c8000 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-list@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 84c1ee056f..a69f83d543 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 5ab9007e51..c8013d445e 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 9ab14be248..df4a041914 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 4f2b699174..0b45dc7643 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 35577fde1e..a4fa84abe4 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 14eb93daf8..73961293a1 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index f9de8d0aab..8a825916a0 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 677cf6af88..876ccd2d65 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 6b7aa82b05..c482602fec 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 2757667fd5..912a98d235 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-list@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index ef9c178594..499959e43a 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index ce5b35779c..121fa05ceb 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/extension-code-block@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index f33721924f..77dcf4cbaf 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 725fdb57fd..ad9f99483e 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 39ff1e53c5..565488bcd2 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index e1f3c35df3..e4edc3c221 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index a864c0f509..df0f866532 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 83b8774dac..df03a7d771 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 44d1b274eb..3526eeabf0 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 652ddba714..46f9eb7e05 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index c73126a569..b955f92241 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index be95fb3f0a..370c0d887d 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 6b400d95e5..5d641d3fe0 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 0171c7ffc7..d71e90f9ca 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/extension-text-style@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 976a47a0d2..f282f362da 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 44e6fa12bd..d25aa8177f 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 83975f752f..929ae2100a 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index d862d25732..b7779b861f 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.0.8 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.8 +- @tiptap/pm@3.0.8 +- @tiptap/react@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index a1fd0a930d..89d74d1029 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 381f43e2a9..8ef752ede9 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.0.8 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.8 +- @tiptap/pm@3.0.8 +- @tiptap/vue-2@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index f1ac40b5a7..fcb6dea4de 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index ac3c9825a7..f4378018d9 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.0.8 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.0.8 +- @tiptap/pm@3.0.8 +- @tiptap/vue-3@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index edca084487..907b1ac6b6 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 09a950e2af..d6485329f9 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/extension-collaboration@3.0.8 +- @tiptap/extension-node-range@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 31bb35344e..789403f6ce 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 656133be1b..9e02ab960d 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 +- @tiptap/suggestion@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 69c94be415..103c3e32c3 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 8bf0859321..1cdbfc5601 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/extension-text-style@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index a1fe80ecb6..7a9f5b5232 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 524eb92c5f..95dd7f8f13 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 53cdc1bb17..cd029f1f45 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index a799684ccf..571e015435 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 9812961f07..4820f276db 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 393735c699..09e98075f0 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 8ede4eaa87..6b903618df 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 62cd3131af..711ef512f0 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index b4cc8616f5..3366d16b29 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index f917e4823f..5834df2597 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index a32bae9694..03ca8b070d 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 06f13b50c2..03948a3ed1 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 33944e757c..49f2bbbdd0 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 1d418bdb32..7fed3ad0dd 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 4c3147bedd..c3917721d2 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 215ded15ca..0a18c8244d 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/extension-text-style@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 6f65c5d605..9d8c334c1c 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 163c116066..5ca423d62b 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 8571472153..4096980198 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index cee5a13bc6..4f101889c5 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- 990084c: Bump linkifyjs version to latest to address the recently discovered prototype pollution vulnerability + - @tiptap/core@3.0.8 + - @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index fec64622ab..99c4a1d4d5 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 908641f901..141ac52c10 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 85512be1e5..f5001cc558 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 79bf02fa67..92b18494d6 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index a89db430bf..9d452ae950 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 7b1e7945f5..3be2d089d9 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 +- @tiptap/suggestion@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index fe3eb1d26c..458c7cc313 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 16f199a56c..f3b28f736a 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index d2a0b97951..7eb6b9c837 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index f311e43385..4f62a0ebe0 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/extension-list@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index b3f0fe1b2f..5c6ea51201 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 79a5014d0e..0ede17a292 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 57a8f9161f..073bf5986c 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 65b67a2675..5dc462eb5b 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index b5becd4c70..9ae53cad05 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 07a045f366..11913dcaee 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index e76573da63..bb218f177d 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 3c7035765c..c858ae121d 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 16c5fcf273..9cd7ff9658 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index cdea88bdee..6897627b63 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 662f02fb84..b69ff22dc4 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 5e3940a60d..01eab95b33 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 609bb1f868..f926ebe848 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index accbf6061b..07bd1a53c2 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 7157229265..792a6b7e9d 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 556ea04974..97ac7b4541 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index acb99d8c69..969a51abde 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 5b916f0ee5..7fc96e6065 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index d2739fafc1..807617f4e2 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 506eb2c52f..abbd560859 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 596f2cbb34..65dd3a6438 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 4795ff7909..f07f59de22 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index a25933a2d2..f0812c44fe 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index bcbd1caddc..ea198ed5ba 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 0505daa3f8..18839dd34f 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 09ea733b10..63dc6a060b 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 5bcec717d5..3e46b9935b 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index aee437933e..febdfb6a4b 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index edec45afb4..3dae28f9e9 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index c65e64ebb6..e13e313fc5 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index cd992802a9..77ab93af50 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 7234abeada..5ef5b891b9 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.8 + ## 3.0.7 ## 3.0.6 diff --git a/packages/pm/package.json b/packages/pm/package.json index 7463767a64..ba9e8b1742 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index a30d12d0fd..e2b64eecff 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 164933ed26..3ad0ab9817 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 3550688f53..4a72652f97 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- Updated dependencies [990084c] + - @tiptap/extension-link@3.0.8 + - @tiptap/extension-dropcursor@3.0.8 + - @tiptap/extension-gapcursor@3.0.8 + - @tiptap/extension-list-item@3.0.8 + - @tiptap/extension-list-keymap@3.0.8 + - @tiptap/core@3.0.8 + - @tiptap/extension-blockquote@3.0.8 + - @tiptap/extension-bold@3.0.8 + - @tiptap/extension-bullet-list@3.0.8 + - @tiptap/extension-code@3.0.8 + - @tiptap/extension-code-block@3.0.8 + - @tiptap/extension-document@3.0.8 + - @tiptap/extension-hard-break@3.0.8 + - @tiptap/extension-heading@3.0.8 + - @tiptap/extension-horizontal-rule@3.0.8 + - @tiptap/extension-italic@3.0.8 + - @tiptap/extension-list@3.0.8 + - @tiptap/extension-ordered-list@3.0.8 + - @tiptap/extension-paragraph@3.0.8 + - @tiptap/extension-strike@3.0.8 + - @tiptap/extension-text@3.0.8 + - @tiptap/extension-underline@3.0.8 + - @tiptap/extensions@3.0.8 + - @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 1f3b510ea8..761bef7c21 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 016858c86d..54b0720acd 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index efc32e49ed..6201cf9a43 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 6490cbccd5..e1a590c71b 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 43a5afec4f..93b5e49977 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index da574ad4b7..441e178636 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 8350dcad56..8b9570f7b5 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 316ad9861d..bf187da8e9 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.8 + +### Patch Changes + +- @tiptap/core@3.0.8 +- @tiptap/pm@3.0.8 + ## 3.0.7 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 53980c44f5..06cf67de18 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.7", + "version": "3.0.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 22d60501386ba60713cd955ce5ee0f14e691ba24 Mon Sep 17 00:00:00 2001 From: James Birtles Date: Fri, 1 Aug 2025 13:08:36 +0100 Subject: [PATCH 293/629] Use href attribute from `mark` instead of `node` in renderToMarkdown (#6752) --- .changeset/large-mugs-like.md | 5 +++++ packages/static-renderer/src/pm/markdown/markdown.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/large-mugs-like.md diff --git a/.changeset/large-mugs-like.md b/.changeset/large-mugs-like.md new file mode 100644 index 0000000000..ebce0f2fb2 --- /dev/null +++ b/.changeset/large-mugs-like.md @@ -0,0 +1,5 @@ +--- +'@tiptap/static-renderer': patch +--- + +fix renderToMarkdown rendering a link href's as undefined diff --git a/packages/static-renderer/src/pm/markdown/markdown.ts b/packages/static-renderer/src/pm/markdown/markdown.ts index 67c9773fa5..317d813310 100644 --- a/packages/static-renderer/src/pm/markdown/markdown.ts +++ b/packages/static-renderer/src/pm/markdown/markdown.ts @@ -128,8 +128,8 @@ export function renderToMarkdown({ superscript({ children }) { return `${serializeChildrenToHTMLString(children)}` }, - link({ node, children }) { - return `[${serializeChildrenToHTMLString(children)}](${node.attrs.href})` + link({ mark, children }) { + return `[${serializeChildrenToHTMLString(children)}](${mark.attrs.href})` }, highlight({ children }) { return `==${serializeChildrenToHTMLString(children)}==` From 22fcc31b7cb91a8dff976fc49e15f68c86e48673 Mon Sep 17 00:00:00 2001 From: mweidner037 <17693586+mweidner037@users.noreply.github.com> Date: Fri, 1 Aug 2025 08:27:07 -0400 Subject: [PATCH 294/629] update TaskItem aria-label when node changes (#6737) --- .changeset/lazy-donkeys-taste.md | 5 +++++ packages/extension-list/src/task-item/task-item.ts | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) create mode 100644 .changeset/lazy-donkeys-taste.md diff --git a/.changeset/lazy-donkeys-taste.md b/.changeset/lazy-donkeys-taste.md new file mode 100644 index 0000000000..5e214db6a3 --- /dev/null +++ b/.changeset/lazy-donkeys-taste.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-list': patch +--- + +Update TaskItem aria-label when node changes diff --git a/packages/extension-list/src/task-item/task-item.ts b/packages/extension-list/src/task-item/task-item.ts index aeded0a201..776c727a6a 100644 --- a/packages/extension-list/src/task-item/task-item.ts +++ b/packages/extension-list/src/task-item/task-item.ts @@ -146,13 +146,13 @@ export const TaskItem = Node.create({ const checkbox = document.createElement('input') const content = document.createElement('div') - const updateA11Y = () => { + const updateA11Y = (currentNode: ProseMirrorNode) => { checkbox.ariaLabel = - this.options.a11y?.checkboxLabel?.(node, checkbox.checked) || - `Task item checkbox for ${node.textContent || 'empty task item'}` + this.options.a11y?.checkboxLabel?.(currentNode, checkbox.checked) || + `Task item checkbox for ${currentNode.textContent || 'empty task item'}` } - updateA11Y() + updateA11Y(node) checkboxWrapper.contentEditable = 'false' checkbox.type = 'checkbox' @@ -221,7 +221,7 @@ export const TaskItem = Node.create({ listItem.dataset.checked = updatedNode.attrs.checked checkbox.checked = updatedNode.attrs.checked - updateA11Y() + updateA11Y(updatedNode) return true }, From e011d5d189847bf201dc4227734f245aa1adfd37 Mon Sep 17 00:00:00 2001 From: mweidner037 <17693586+mweidner037@users.noreply.github.com> Date: Fri, 1 Aug 2025 08:28:06 -0400 Subject: [PATCH 295/629] feat: BubbleMenu appendTo option (#6734) * feat: BubbleMenu appendTo option * create changeset --- .changeset/polite-beans-juggle.md | 5 +++++ .../src/bubble-menu-plugin.ts | 18 ++++++++++++++++-- .../extension-bubble-menu/src/bubble-menu.ts | 2 ++ 3 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 .changeset/polite-beans-juggle.md diff --git a/.changeset/polite-beans-juggle.md b/.changeset/polite-beans-juggle.md new file mode 100644 index 0000000000..4f833e80f7 --- /dev/null +++ b/.changeset/polite-beans-juggle.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-bubble-menu': patch +--- + +Add appendTo option diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index 319a04561b..dfa7a85d7c 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -81,6 +81,16 @@ export interface BubbleMenuPluginProps { }) => boolean) | null + /** + * The DOM element to append your menu to. Default is the editor's parent element. + * + * Sometimes the menu needs to be appended to a different DOM context due to accessibility, clipping, or z-index issues. + * + * @type {HTMLElement} + * @default null + */ + appendTo?: HTMLElement + /** * The options for the bubble menu. Those are passed to Floating UI and include options for the placement, offset, flip, shift, arrow, size, autoPlacement, * hide, and inline middlewares. @@ -135,6 +145,8 @@ export class BubbleMenuView implements PluginView { public resizeDelay: number + public appendTo: HTMLElement | undefined + private updateDebounceTimer: number | undefined private resizeDebounceTimer: number | undefined @@ -236,6 +248,7 @@ export class BubbleMenuView implements PluginView { updateDelay = 250, resizeDelay = 60, shouldShow, + appendTo, options, }: BubbleMenuViewProps) { this.editor = editor @@ -243,6 +256,7 @@ export class BubbleMenuView implements PluginView { this.view = view this.updateDelay = updateDelay this.resizeDelay = resizeDelay + this.appendTo = appendTo this.floatingUIOptions = { ...this.floatingUIOptions, @@ -448,8 +462,8 @@ export class BubbleMenuView implements PluginView { this.element.style.visibility = 'visible' this.element.style.opacity = '1' - // attach to editor's parent element - this.view.dom.parentElement?.appendChild(this.element) + // attach to appendTo or editor's parent element + ;(this.appendTo ?? this.view.dom.parentElement)?.appendChild(this.element) if (this.floatingUIOptions.onShow) { this.floatingUIOptions.onShow() diff --git a/packages/extension-bubble-menu/src/bubble-menu.ts b/packages/extension-bubble-menu/src/bubble-menu.ts index 561dae829b..9017804c5e 100644 --- a/packages/extension-bubble-menu/src/bubble-menu.ts +++ b/packages/extension-bubble-menu/src/bubble-menu.ts @@ -24,6 +24,7 @@ export const BubbleMenu = Extension.create({ element: null, pluginKey: 'bubbleMenu', updateDelay: undefined, + appendTo: undefined, shouldShow: null, } }, @@ -40,6 +41,7 @@ export const BubbleMenu = Extension.create({ element: this.options.element, updateDelay: this.options.updateDelay, options: this.options.options, + appendTo: this.options.appendTo, shouldShow: this.options.shouldShow, }), ] From 224cb2c77a7921e62b18f4b510bb314b582926df Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 1 Aug 2025 17:36:48 +0200 Subject: [PATCH 296/629] chore(release): publish a new release version (#6753) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/healthy-buckets-reflect.md | 5 ---- .changeset/large-mugs-like.md | 5 ---- .changeset/lazy-donkeys-taste.md | 5 ---- .changeset/polite-beans-juggle.md | 5 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 7 +++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 7 +++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 7 +++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 7 +++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 7 +++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 7 +++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 142 files changed, 556 insertions(+), 89 deletions(-) delete mode 100644 .changeset/healthy-buckets-reflect.md delete mode 100644 .changeset/large-mugs-like.md delete mode 100644 .changeset/lazy-donkeys-taste.md delete mode 100644 .changeset/polite-beans-juggle.md diff --git a/.changeset/healthy-buckets-reflect.md b/.changeset/healthy-buckets-reflect.md deleted file mode 100644 index 4a6832ec2b..0000000000 --- a/.changeset/healthy-buckets-reflect.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-drag-handle-vue-3': patch ---- - -Fixed the Vue 3 Drag Handle so it only appears when the user starts interacting with the text editor. diff --git a/.changeset/large-mugs-like.md b/.changeset/large-mugs-like.md deleted file mode 100644 index ebce0f2fb2..0000000000 --- a/.changeset/large-mugs-like.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/static-renderer': patch ---- - -fix renderToMarkdown rendering a link href's as undefined diff --git a/.changeset/lazy-donkeys-taste.md b/.changeset/lazy-donkeys-taste.md deleted file mode 100644 index 5e214db6a3..0000000000 --- a/.changeset/lazy-donkeys-taste.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-list': patch ---- - -Update TaskItem aria-label when node changes diff --git a/.changeset/polite-beans-juggle.md b/.changeset/polite-beans-juggle.md deleted file mode 100644 index 4f833e80f7..0000000000 --- a/.changeset/polite-beans-juggle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-bubble-menu': patch ---- - -Add appendTo option diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index f5dfe3e7f5..64d79b9727 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extensions@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 4e6d74e1f2..d73d37303a 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 2e9062b193..feb524087f 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extensions@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 452d008a4d..4542cc83f3 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index e09b533ec2..4d300710c7 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extensions@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 08d9187211..f1693cd45b 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 376ab6942c..a39589c02b 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extensions@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 3c9355a66c..7ed075b154 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 59c78a08f3..fc03196142 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extensions@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 88cc0504bf..a6b93f02a0 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 94d66f5254..e9c3311de9 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- Updated dependencies [22fcc31] + - @tiptap/extension-list@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 8ea01ffc64..e1376ed828 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index da40a0f789..5518d535f3 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- Updated dependencies [22fcc31] + - @tiptap/extension-list@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 614381c62d..b2feb8fdce 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index f9535e510d..25cb3d8ab5 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extensions@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 8c297489f7..a94f028206 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index dabc7ffbbe..74b31193f7 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extension-table@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index b2dc0fc112..bd1d8ded58 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index fd599b03e3..cd85527615 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extension-table@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 79c08b4639..a4c85a6655 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index f2058d3490..71b95977d0 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extension-table@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 03acf21e76..be7ad3fdd0 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 233a2b7f41..7fe6cbf0ae 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- Updated dependencies [22fcc31] + - @tiptap/extension-list@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 4ca9df6afa..4e1ba2264c 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 1f508c8000..3bf095b4eb 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- Updated dependencies [22fcc31] + - @tiptap/extension-list@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index a69f83d543..c5ef2a6d74 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index c8013d445e..aa86883c2d 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index df4a041914..316a7d3ac9 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 0b45dc7643..d1822231fb 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index a4fa84abe4..94cb1d023f 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 73961293a1..72b287d76d 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 8a825916a0..61c01367ca 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 876ccd2d65..593ce1eba6 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- e011d5d: Add appendTo option + - @tiptap/core@3.0.9 + - @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index c482602fec..ddf2f95d12 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 912a98d235..c1ccceaab8 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- Updated dependencies [22fcc31] + - @tiptap/extension-list@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 499959e43a..92abe01e08 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 121fa05ceb..ce22dcc8e8 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/extension-code-block@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 77dcf4cbaf..63666ea01f 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index ad9f99483e..717ea871a0 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 565488bcd2..aa65a4dacb 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index e4edc3c221..00dd74fa5e 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index df0f866532..de905cc2f4 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index df03a7d771..e62c70b8bb 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 3526eeabf0..c16071d5ea 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 46f9eb7e05..bc055569b3 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index b955f92241..007d337c77 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 370c0d887d..d558a4ab7c 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 5d641d3fe0..0ac8a26eab 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index d71e90f9ca..f4d17c31e5 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/extension-text-style@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index f282f362da..0ab8320538 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index d25aa8177f..b1b1c08f28 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 929ae2100a..33fd4d0135 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index b7779b861f..869b9bc1b6 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.0.9 + +### Patch Changes + +- @tiptap/react@3.0.9 +- @tiptap/extension-drag-handle@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 89d74d1029..b8008028f8 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 8ef752ede9..5fa542e72c 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.0.9 + +### Patch Changes + +- @tiptap/vue-2@3.0.9 +- @tiptap/extension-drag-handle@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index fcb6dea4de..9c9269be88 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index f4378018d9..8110d98aa0 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.0.9 + +### Patch Changes + +- 072b110: Fixed the Vue 3 Drag Handle so it only appears when the user starts interacting with the text editor. + - @tiptap/vue-3@3.0.9 + - @tiptap/extension-drag-handle@3.0.9 + - @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 907b1ac6b6..0b5831b479 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index d6485329f9..919f3e86a6 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/extension-collaboration@3.0.9 +- @tiptap/extension-node-range@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 789403f6ce..a08798991f 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 9e02ab960d..5302193faa 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 +- @tiptap/suggestion@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 103c3e32c3..7c369d0fc0 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 1cdbfc5601..dda779cbf0 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/extension-text-style@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 7a9f5b5232..77f590a992 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 95dd7f8f13..5d4f98574a 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index cd029f1f45..98fb8d30e9 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 571e015435..b0d2665dd6 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/extension-text-style@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 4820f276db..8afb986a8b 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 09e98075f0..cca5b7299c 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 6b903618df..5d4de08343 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 711ef512f0..03f00701b8 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 3366d16b29..cd711a19b7 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 5834df2597..cae244e7a8 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 03ca8b070d..87d2edefe6 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 03948a3ed1..1cc2dcebd5 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 49f2bbbdd0..9e13fd898f 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 7fed3ad0dd..82113b4eef 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index c3917721d2..611b09f7f8 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 0a18c8244d..93a0d3f7f8 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/extension-text-style@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 9d8c334c1c..6611743855 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 5ca423d62b..9d4225e74e 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 4096980198..c5d8932719 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 4f101889c5..c3d0938dc4 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 99c4a1d4d5..e732da0f6a 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 141ac52c10..29a86e8c61 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- 22fcc31: Update TaskItem aria-label when node changes + - @tiptap/core@3.0.9 + - @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index f5001cc558..b927ea0a6e 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 92b18494d6..f685045041 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 9d452ae950..293765ff54 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 3be2d089d9..ac572d197e 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 +- @tiptap/suggestion@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 458c7cc313..584dc06c5f 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index f3b28f736a..d5e6e93cc4 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 7eb6b9c837..9c42c4a8b7 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 4f62a0ebe0..e090a7f672 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- Updated dependencies [22fcc31] + - @tiptap/extension-list@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 5c6ea51201..b5e65e06f0 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 0ede17a292..ab2182bcd7 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 073bf5986c..dd39065c3b 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 5dc462eb5b..5f14fefe48 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 9ae53cad05..7d9e4ec3dd 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 11913dcaee..b349cabe4e 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index bb218f177d..90ad00c364 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index c858ae121d..7bf4a51138 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 9cd7ff9658..bab0ee4b2a 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 6897627b63..416534657b 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index b69ff22dc4..1004cccd46 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 01eab95b33..6f24f5b060 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index f926ebe848..197fe86609 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 07bd1a53c2..851afa58d7 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 792a6b7e9d..f536b51f82 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 97ac7b4541..563fca0840 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 969a51abde..67b84c69ff 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 7fc96e6065..91d68bc40a 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 807617f4e2..8ca9e19a27 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index abbd560859..1cb904f509 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 65dd3a6438..71042547ce 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index f07f59de22..2507ff82ca 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index f0812c44fe..1aaa30bd30 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index ea198ed5ba..ad2be69265 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 18839dd34f..492dd1bde3 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 63dc6a060b..b64fefb43d 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 3e46b9935b..32ba975dc5 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index febdfb6a4b..0d24d03863 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 3dae28f9e9..e22814a615 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index e13e313fc5..4757a42422 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 77ab93af50..596ab41ffc 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 5ef5b891b9..b93856122c 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.0.9 + ## 3.0.8 ## 3.0.7 diff --git a/packages/pm/package.json b/packages/pm/package.json index ba9e8b1742..02c321ef37 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index e2b64eecff..fe05a29944 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 3ad0ab9817..e324d5c087 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 4a72652f97..ddad804f9a 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- Updated dependencies [22fcc31] + - @tiptap/extension-list@3.0.9 + - @tiptap/extension-list-item@3.0.9 + - @tiptap/extension-list-keymap@3.0.9 + - @tiptap/extension-bullet-list@3.0.9 + - @tiptap/extension-ordered-list@3.0.9 + - @tiptap/extension-dropcursor@3.0.9 + - @tiptap/extension-gapcursor@3.0.9 + - @tiptap/core@3.0.9 + - @tiptap/extension-blockquote@3.0.9 + - @tiptap/extension-bold@3.0.9 + - @tiptap/extension-code@3.0.9 + - @tiptap/extension-code-block@3.0.9 + - @tiptap/extension-document@3.0.9 + - @tiptap/extension-hard-break@3.0.9 + - @tiptap/extension-heading@3.0.9 + - @tiptap/extension-horizontal-rule@3.0.9 + - @tiptap/extension-italic@3.0.9 + - @tiptap/extension-link@3.0.9 + - @tiptap/extension-paragraph@3.0.9 + - @tiptap/extension-strike@3.0.9 + - @tiptap/extension-text@3.0.9 + - @tiptap/extension-underline@3.0.9 + - @tiptap/extensions@3.0.9 + - @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 761bef7c21..4126c79adb 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 54b0720acd..ebc0598e8d 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- 22d6050: fix renderToMarkdown rendering a link href's as undefined + - @tiptap/core@3.0.9 + - @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 6201cf9a43..685affcca4 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index e1a590c71b..b36dae9cd1 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 93b5e49977..897b4e1018 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 441e178636..23f1929099 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 8b9570f7b5..ec52cab7b3 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index bf187da8e9..f39a9fc79f 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.0.9 + +### Patch Changes + +- @tiptap/core@3.0.9 +- @tiptap/pm@3.0.9 + ## 3.0.8 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 06cf67de18..c494403304 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.8", + "version": "3.0.9", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 978c548eaddf143807ad7790ab8352f33c68226a Mon Sep 17 00:00:00 2001 From: Aslam Date: Sun, 10 Aug 2025 17:04:41 +0700 Subject: [PATCH 297/629] Expose `onDragStart` and `onDragEnd` callbacks for better UI control during node drag (#6786) * feat(drag): expose onDragStart and onDragEnd callbacks for custom drag behavior * add changeset --- .changeset/sour-boats-fix.md | 6 ++++++ .../extension-drag-handle-react/src/DragHandle.tsx | 11 +++++++++-- .../extension-drag-handle/src/drag-handle-plugin.ts | 8 +++++++- 3 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 .changeset/sour-boats-fix.md diff --git a/.changeset/sour-boats-fix.md b/.changeset/sour-boats-fix.md new file mode 100644 index 0000000000..e31b5f0444 --- /dev/null +++ b/.changeset/sour-boats-fix.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-drag-handle-react': minor +'@tiptap/extension-drag-handle': minor +--- + +Expose `onDragStart` and `onDragEnd` callbacks to improve custom drag behavior. This allows better UI control compared to relying on `editor.view.dragging`, especially when using absolute-positioned drag handles. diff --git a/packages/extension-drag-handle-react/src/DragHandle.tsx b/packages/extension-drag-handle-react/src/DragHandle.tsx index ed2419cb0f..73b678aeeb 100644 --- a/packages/extension-drag-handle-react/src/DragHandle.tsx +++ b/packages/extension-drag-handle-react/src/DragHandle.tsx @@ -24,6 +24,8 @@ export const DragHandle = (props: DragHandleProps) => { editor, pluginKey = dragHandlePluginDefaultKey, onNodeChange, + onElementDragStart, + onElementDragEnd, computePositionConfig = defaultComputePositionConfig, } = props const [element, setElement] = useState(null) @@ -52,7 +54,12 @@ export const DragHandle = (props: DragHandleProps) => { editor, element, pluginKey, - computePositionConfig: { ...defaultComputePositionConfig, ...computePositionConfig }, + computePositionConfig: { + ...defaultComputePositionConfig, + ...computePositionConfig, + }, + onElementDragStart, + onElementDragEnd, onNodeChange, }) plugin.current = initPlugin.plugin @@ -68,7 +75,7 @@ export const DragHandle = (props: DragHandleProps) => { initPlugin = null } } - }, [element, editor, onNodeChange, pluginKey, computePositionConfig]) + }, [element, editor, onNodeChange, pluginKey, computePositionConfig, onElementDragStart, onElementDragEnd]) return (
diff --git a/packages/extension-drag-handle/src/drag-handle-plugin.ts b/packages/extension-drag-handle/src/drag-handle-plugin.ts index af9f32566b..5d0a83b6a1 100644 --- a/packages/extension-drag-handle/src/drag-handle-plugin.ts +++ b/packages/extension-drag-handle/src/drag-handle-plugin.ts @@ -60,6 +60,8 @@ export interface DragHandlePluginProps { editor: Editor element: HTMLElement onNodeChange?: (data: { editor: Editor; node: Node | null; pos: number }) => void + onElementDragStart?: (e: DragEvent) => void + onElementDragEnd?: (e: DragEvent) => void computePositionConfig?: ComputePositionConfig } @@ -71,6 +73,8 @@ export const DragHandlePlugin = ({ editor, computePositionConfig, onNodeChange, + onElementDragStart, + onElementDragEnd, }: DragHandlePluginProps) => { const wrapper = document.createElement('div') let locked = false @@ -117,6 +121,7 @@ export const DragHandlePlugin = ({ } function onDragStart(e: DragEvent) { + onElementDragStart?.(e) // Push this to the end of the event cue // Fixes bug where incorrect drag pos is returned if drag handle has position: absolute // @ts-ignore @@ -129,7 +134,8 @@ export const DragHandlePlugin = ({ }, 0) } - function onDragEnd() { + function onDragEnd(e: DragEvent) { + onElementDragEnd?.(e) hideHandle() if (element) { element.style.pointerEvents = 'auto' From 2718eeacbd3c6e3722c00c2bf7fd26e82a2e9ec2 Mon Sep 17 00:00:00 2001 From: Phoebe Gao Date: Sun, 10 Aug 2025 03:12:44 -0700 Subject: [PATCH 298/629] feat(BubbleMenu): add support for bubble menus on node selections (#6774) * feat(BubbleMenu): add support for bubble menus on node selections * chore: lint * chore: add changeset * Update .changeset/sour-dogs-move.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/sour-dogs-move.md | 5 +++++ .../src/bubble-menu-plugin.ts | 19 ++++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 .changeset/sour-dogs-move.md diff --git a/.changeset/sour-dogs-move.md b/.changeset/sour-dogs-move.md new file mode 100644 index 0000000000..7506512495 --- /dev/null +++ b/.changeset/sour-dogs-move.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-bubble-menu': patch +--- + +Fixed bubble menus having invalid positions on node selections diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index dfa7a85d7c..903d80c2a1 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -13,7 +13,7 @@ import { import type { Editor } from '@tiptap/core' import { isTextSelection, posToDOMRect } from '@tiptap/core' import type { EditorState, PluginView } from '@tiptap/pm/state' -import { Plugin, PluginKey } from '@tiptap/pm/state' +import { NodeSelection, Plugin, PluginKey } from '@tiptap/pm/state' import { CellSelection } from '@tiptap/pm/tables' import type { EditorView } from '@tiptap/pm/view' @@ -336,6 +336,23 @@ export class BubbleMenuView implements PluginView { getClientRects: () => [domRect], } + if (selection instanceof NodeSelection) { + let node = this.view.nodeDOM(selection.from) as HTMLElement + + const nodeViewWrapper = node.dataset.nodeViewWrapper ? node : node.querySelector('[data-node-view-wrapper]') + + if (nodeViewWrapper) { + node = nodeViewWrapper as HTMLElement + } + + if (node) { + virtualElement = { + getBoundingClientRect: () => node.getBoundingClientRect(), + getClientRects: () => [node.getBoundingClientRect()], + } + } + } + // this is a special case for cell selections if (selection instanceof CellSelection) { const { $anchorCell, $headCell } = selection From c0d33fde989566cd08ce07740e0742d68e5ab646 Mon Sep 17 00:00:00 2001 From: Tsogt Otgonbaatar Date: Sun, 10 Aug 2025 18:15:10 +0800 Subject: [PATCH 299/629] fix: update markdown table rendering and add tests for static rendering (#6692) * fix: update markdown table rendering and add tests for static rendering * revert version bump * Update .changeset/good-flies-listen.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/good-flies-listen.md | 5 + packages/static-renderer/package.json | 2 +- .../src/pm/markdown/markdown.ts | 3 +- .../static-renderer/md-string.spec.ts | 257 ++++++++++++++++++ 4 files changed, 265 insertions(+), 2 deletions(-) create mode 100644 .changeset/good-flies-listen.md create mode 100644 tests/cypress/integration/static-renderer/md-string.spec.ts diff --git a/.changeset/good-flies-listen.md b/.changeset/good-flies-listen.md new file mode 100644 index 0000000000..bd7f51f08a --- /dev/null +++ b/.changeset/good-flies-listen.md @@ -0,0 +1,5 @@ +--- +'@tiptap/static-renderer': patch +--- + +Fixed a bug causing invalid number of columns being created while converting tables to Markdown \ No newline at end of file diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 685affcca4..6a58975cf6 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -94,4 +94,4 @@ "build": "tsup", "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" } -} +} \ No newline at end of file diff --git a/packages/static-renderer/src/pm/markdown/markdown.ts b/packages/static-renderer/src/pm/markdown/markdown.ts index 317d813310..679eb7e044 100644 --- a/packages/static-renderer/src/pm/markdown/markdown.ts +++ b/packages/static-renderer/src/pm/markdown/markdown.ts @@ -78,7 +78,8 @@ export function renderToMarkdown({ return `\n${serializeChildrenToHTMLString(children)}\n` } - return `\n${serializeChildrenToHTMLString(children[0])}| ${new Array(node.childCount - 2).fill('---').join(' | ')} |\n${serializeChildrenToHTMLString(children.slice(1))}\n` + const columnCount = node.children[0].childCount + return `\n${serializeChildrenToHTMLString(children[0])}| ${new Array(columnCount).fill('---').join(' | ')} |\n${serializeChildrenToHTMLString(children.slice(1))}\n` }, tableRow({ children }) { if (Array.isArray(children)) { diff --git a/tests/cypress/integration/static-renderer/md-string.spec.ts b/tests/cypress/integration/static-renderer/md-string.spec.ts new file mode 100644 index 0000000000..a16b87b6ec --- /dev/null +++ b/tests/cypress/integration/static-renderer/md-string.spec.ts @@ -0,0 +1,257 @@ +/// + +import { TableKit } from '@tiptap/extension-table' +import StarterKit from '@tiptap/starter-kit' +import { renderToMarkdown } from '@tiptap/static-renderer/pm/markdown' + +describe('static render json to string (no prosemirror)', () => { + it('should return empty string for empty content', () => { + const json = { + type: 'doc', + content: [], + } + const md = renderToMarkdown({ + content: json, + extensions: [StarterKit, TableKit], + }) + expect(md).to.eq('') + }) + + it('should render empty paragraph', () => { + const json = { + type: 'doc', + content: [], + } + const md = renderToMarkdown({ + content: json, + extensions: [StarterKit, TableKit], + }) + expect(md).to.eq('\n\n') + }) + + it('should render a simple paragraph', () => { + const json = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Hello, world!', + }, + ], + }, + ], + } + const md = renderToMarkdown({ + content: json, + extensions: [StarterKit, TableKit], + }) + expect(md).to.eq('\nHello, world!\n') + }) + + it('should render a simple table', () => { + const json = { + type: 'doc', + content: [ + { + type: 'table', + content: [ + { + type: 'tableRow', + content: [ + { + type: 'tableHeader', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Col 1', + }, + ], + }, + ], + }, + { + type: 'tableHeader', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Col 2', + }, + ], + }, + ], + }, + { + type: 'tableHeader', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Col 3', + }, + ], + }, + ], + }, + ], + }, + { + type: 'tableRow', + content: [ + { + type: 'tableCell', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Row 1 1', + }, + ], + }, + ], + }, + { + type: 'tableCell', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: '112', + }, + ], + }, + ], + }, + { + type: 'tableCell', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: '1334', + }, + ], + }, + ], + }, + ], + }, + { + type: 'tableRow', + content: [ + { + type: 'tableCell', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Row 2 1', + }, + ], + }, + ], + }, + { + type: 'tableCell', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: '115', + }, + ], + }, + ], + }, + { + type: 'tableCell', + attrs: { + colspan: 1, + rowspan: 1, + colwidth: null, + }, + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: '4', + }, + ], + }, + ], + }, + ], + }, + ], + }, + ], + } + const md = renderToMarkdown({ content: json, extensions: [StarterKit, TableKit] }) + + expect(md).to.eq( + '\n| Col 1 | Col 2 | Col 3 |\n| --- | --- | --- |\n| Row 1 1 | 112 | 1334 |\n| Row 2 1 | 115 | 4 |\n\n', + ) + }) +}) From 0943a520b0f06d9f8169fe63ebfea2722342fed8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E5=B9=B3?= Date: Sun, 10 Aug 2025 18:30:06 +0800 Subject: [PATCH 300/629] fix: Allow overriding default options of renderToMarkdown function (#6761) * fix: options overwrite * Update .changeset/honest-pumpkins-smash.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/honest-pumpkins-smash.md | 5 +++++ packages/static-renderer/src/pm/markdown/markdown.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/honest-pumpkins-smash.md diff --git a/.changeset/honest-pumpkins-smash.md b/.changeset/honest-pumpkins-smash.md new file mode 100644 index 0000000000..20a5a5c508 --- /dev/null +++ b/.changeset/honest-pumpkins-smash.md @@ -0,0 +1,5 @@ +--- +'@tiptap/static-renderer': patch +--- + +Fixed an issue preventing overriding the default options of the static renderer's `renderToMarkdown` function. diff --git a/packages/static-renderer/src/pm/markdown/markdown.ts b/packages/static-renderer/src/pm/markdown/markdown.ts index 679eb7e044..dceed58ef8 100644 --- a/packages/static-renderer/src/pm/markdown/markdown.ts +++ b/packages/static-renderer/src/pm/markdown/markdown.ts @@ -21,6 +21,7 @@ export function renderToMarkdown({ content, extensions, options: { + ...options, nodeMapping: { bulletList({ children }) { return `\n${serializeChildrenToHTMLString(children)}` @@ -137,7 +138,6 @@ export function renderToMarkdown({ }, ...options?.markMapping, }, - ...options, }, }) } From 43747ce0e7d4286a61d4937468aa6fc6a6d0a8c1 Mon Sep 17 00:00:00 2001 From: Takuto Mori Gump Date: Sun, 10 Aug 2025 19:34:40 +0900 Subject: [PATCH 301/629] =?UTF-8?q?=F0=9F=A9=B9=20fix:=20skip=20processing?= =?UTF-8?q?=20when=20emojis=20are=20present=20during=20IME=20conversion=20?= =?UTF-8?q?(#6759)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 🩹 fix: skip processing when emojis are present during IME conversion * Create many-timers-argue.md * Update .changeset/many-timers-argue.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/many-timers-argue.md | 5 +++++ packages/extension-emoji/src/emoji.ts | 4 ++++ 2 files changed, 9 insertions(+) create mode 100644 .changeset/many-timers-argue.md diff --git a/.changeset/many-timers-argue.md b/.changeset/many-timers-argue.md new file mode 100644 index 0000000000..ca061a9304 --- /dev/null +++ b/.changeset/many-timers-argue.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-emoji": patch +--- + +Fixed a problem where the emoji extension would interfer with editor's in composing mode (for example in IME conversion) diff --git a/packages/extension-emoji/src/emoji.ts b/packages/extension-emoji/src/emoji.ts index 33e80e3920..6d5a8a80b6 100644 --- a/packages/extension-emoji/src/emoji.ts +++ b/packages/extension-emoji/src/emoji.ts @@ -389,6 +389,10 @@ export const Emoji = Node.create({ // replace text emojis with emoji node on any change appendTransaction: (transactions, oldState, newState) => { + // Skip processing during IME composition + if (this.editor.view.composing) { + return + } const docChanges = transactions.some(transaction => transaction.docChanged) && !oldState.doc.eq(newState.doc) if (!docChanges) { From c8682522e4e982dbb887187730ca12b7d036b5be Mon Sep 17 00:00:00 2001 From: Harrison Lo Date: Sun, 10 Aug 2025 03:59:15 -0700 Subject: [PATCH 302/629] fix(extension-mathematics): compatibility issues and migration util regex (#6731) * fix(extension-mathematics): replace negative lookbehind regex for better compatibility * fix(extension-mathematics): migration regex * fix(extension-mathematics) InlineMath input rule regex * fix(extension-mathematics): InlineMath regex capturing group * Create dirty-candles-tie.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/dirty-candles-tie.md | 5 +++++ packages/extension-mathematics/src/extensions/InlineMath.ts | 4 ++-- packages/extension-mathematics/src/utils.ts | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 .changeset/dirty-candles-tie.md diff --git a/.changeset/dirty-candles-tie.md b/.changeset/dirty-candles-tie.md new file mode 100644 index 0000000000..4e2dd3af78 --- /dev/null +++ b/.changeset/dirty-candles-tie.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-mathematics": patch +--- + +Fixed an issue with the mathematics regex using modern negative lookups causing crashes in older Safari versions. diff --git a/packages/extension-mathematics/src/extensions/InlineMath.ts b/packages/extension-mathematics/src/extensions/InlineMath.ts index ce6ea458a4..9c18025058 100644 --- a/packages/extension-mathematics/src/extensions/InlineMath.ts +++ b/packages/extension-mathematics/src/extensions/InlineMath.ts @@ -184,9 +184,9 @@ export const InlineMath = Node.create({ addInputRules() { return [ new InputRule({ - find: /(? { - const [, latex] = match + const latex = match[3] const { tr } = state const start = range.from const end = range.to diff --git a/packages/extension-mathematics/src/utils.ts b/packages/extension-mathematics/src/utils.ts index b1f52f5d7f..1daf1cfe58 100644 --- a/packages/extension-mathematics/src/utils.ts +++ b/packages/extension-mathematics/src/utils.ts @@ -13,7 +13,7 @@ import type { Transaction } from '@tiptap/pm/state' * - `This is $100$ dollars.` will not match (as it is not a math expression) * - `This is $x^2 + y^2 = z^2$ and $100$ dollars.` will match both math expressions */ -export const mathMigrationRegex = /(? Date: Sun, 10 Aug 2025 14:36:25 +0200 Subject: [PATCH 303/629] chore(release): publish a new release version (#6791) correct versions Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/dirty-candles-tie.md | 5 ---- .changeset/good-flies-listen.md | 5 ---- .changeset/honest-pumpkins-smash.md | 5 ---- .changeset/many-timers-argue.md | 5 ---- .changeset/sour-boats-fix.md | 6 ---- .changeset/sour-dogs-move.md | 5 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 13 +++++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 13 +++++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 9 ++++++ packages/static-renderer/package.json | 4 +-- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 144 files changed, 562 insertions(+), 101 deletions(-) delete mode 100644 .changeset/dirty-candles-tie.md delete mode 100644 .changeset/good-flies-listen.md delete mode 100644 .changeset/honest-pumpkins-smash.md delete mode 100644 .changeset/many-timers-argue.md delete mode 100644 .changeset/sour-boats-fix.md delete mode 100644 .changeset/sour-dogs-move.md diff --git a/.changeset/dirty-candles-tie.md b/.changeset/dirty-candles-tie.md deleted file mode 100644 index 4e2dd3af78..0000000000 --- a/.changeset/dirty-candles-tie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-mathematics": patch ---- - -Fixed an issue with the mathematics regex using modern negative lookups causing crashes in older Safari versions. diff --git a/.changeset/good-flies-listen.md b/.changeset/good-flies-listen.md deleted file mode 100644 index bd7f51f08a..0000000000 --- a/.changeset/good-flies-listen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/static-renderer': patch ---- - -Fixed a bug causing invalid number of columns being created while converting tables to Markdown \ No newline at end of file diff --git a/.changeset/honest-pumpkins-smash.md b/.changeset/honest-pumpkins-smash.md deleted file mode 100644 index 20a5a5c508..0000000000 --- a/.changeset/honest-pumpkins-smash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/static-renderer': patch ---- - -Fixed an issue preventing overriding the default options of the static renderer's `renderToMarkdown` function. diff --git a/.changeset/many-timers-argue.md b/.changeset/many-timers-argue.md deleted file mode 100644 index ca061a9304..0000000000 --- a/.changeset/many-timers-argue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-emoji": patch ---- - -Fixed a problem where the emoji extension would interfer with editor's in composing mode (for example in IME conversion) diff --git a/.changeset/sour-boats-fix.md b/.changeset/sour-boats-fix.md deleted file mode 100644 index e31b5f0444..0000000000 --- a/.changeset/sour-boats-fix.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-drag-handle-react': minor -'@tiptap/extension-drag-handle': minor ---- - -Expose `onDragStart` and `onDragEnd` callbacks to improve custom drag behavior. This allows better UI control compared to relying on `editor.view.dragging`, especially when using absolute-positioned drag handles. diff --git a/.changeset/sour-dogs-move.md b/.changeset/sour-dogs-move.md deleted file mode 100644 index 7506512495..0000000000 --- a/.changeset/sour-dogs-move.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-bubble-menu': patch ---- - -Fixed bubble menus having invalid positions on node selections diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 64d79b9727..eab7273ccb 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extensions@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index d73d37303a..2c2b868b8e 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index feb524087f..14243b9802 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extensions@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 4542cc83f3..3928d1108b 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 4d300710c7..34855a3c46 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extensions@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index f1693cd45b..b87a82df94 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index a39589c02b..3022b92f53 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extensions@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 7ed075b154..721ccc8218 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index fc03196142..63b6c069fc 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extensions@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index a6b93f02a0..56a671d6c8 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index e9c3311de9..ee827547a3 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-list@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index e1376ed828..ee872682da 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 5518d535f3..7002518a3e 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-list@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index b2feb8fdce..7cae863087 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 25cb3d8ab5..5ee27dc7b5 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extensions@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index a94f028206..3e18a616d8 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 74b31193f7..bc43a9d481 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-table@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index bd1d8ded58..1e69b7c14f 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index cd85527615..da70443747 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-table@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index a4c85a6655..9eafac07c9 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 71b95977d0..d1c1c8d2fc 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-table@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index be7ad3fdd0..525c9c09b3 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 7fe6cbf0ae..b2e625c239 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-list@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 4e1ba2264c..ff7f717d77 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 3bf095b4eb..9f9eb5e80c 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-list@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index c5ef2a6d74..f18df11687 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index aa86883c2d..5bf6d1a6d3 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 316a7d3ac9..a026e1883d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index d1822231fb..b37963e9f8 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 94cb1d023f..1286d8ac18 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 72b287d76d..ccb46e24ba 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 61c01367ca..a6f0d10df2 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 593ce1eba6..b0607726e6 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- 2718eea: Fixed bubble menus having invalid positions on node selections + - @tiptap/core@3.1.0 + - @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index ddf2f95d12..191b881ffe 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index c1ccceaab8..d19e2a08a9 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-list@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 92abe01e08..0f0ef6a9ca 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index ce22dcc8e8..899973302f 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/extension-code-block@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 63666ea01f..fb76f96718 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 717ea871a0..a65dab5911 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index aa65a4dacb..3104a18226 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 00dd74fa5e..36e101f7e5 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index de905cc2f4..5661f07578 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index e62c70b8bb..3b181a2698 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index c16071d5ea..2b44720d70 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index bc055569b3..dcf005b776 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 007d337c77..d383550195 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index d558a4ab7c..277f143c25 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 0ac8a26eab..76ba87d8a5 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index f4d17c31e5..8ecf2b8897 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/extension-text-style@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 0ab8320538..b7158d0975 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index b1b1c08f28..38d8cf394f 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 33fd4d0135..284dc03047 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 869b9bc1b6..9aa6854a94 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,18 @@ # @tiptap/extension-drag-handle-react +## 3.1.0 + +### Minor Changes + +- 978c548: Expose `onDragStart` and `onDragEnd` callbacks to improve custom drag behavior. This allows better UI control compared to relying on `editor.view.dragging`, especially when using absolute-positioned drag handles. + +### Patch Changes + +- Updated dependencies [978c548] + - @tiptap/extension-drag-handle@3.1.0 + - @tiptap/react@3.1.0 + - @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index b8008028f8..ce8e4f1847 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 5fa542e72c..c65a1971e5 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.1.0 + +### Patch Changes + +- Updated dependencies [978c548] + - @tiptap/extension-drag-handle@3.1.0 + - @tiptap/vue-2@3.1.0 + - @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 9c9269be88..33b349e8f9 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 8110d98aa0..73c2ffd36a 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.1.0 + +### Patch Changes + +- Updated dependencies [978c548] + - @tiptap/extension-drag-handle@3.1.0 + - @tiptap/vue-3@3.1.0 + - @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 0b5831b479..6463db2601 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 919f3e86a6..22f2589db1 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,18 @@ # @tiptap/extension-drag-handle +## 3.1.0 + +### Minor Changes + +- 978c548: Expose `onDragStart` and `onDragEnd` callbacks to improve custom drag behavior. This allows better UI control compared to relying on `editor.view.dragging`, especially when using absolute-positioned drag handles. + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/extension-collaboration@3.1.0 +- @tiptap/extension-node-range@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index a08798991f..4311348205 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 5302193faa..f25702d3f0 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.1.0 + +### Patch Changes + +- 43747ce: Fixed a problem where the emoji extension would interfer with editor's in composing mode (for example in IME conversion) + - @tiptap/core@3.1.0 + - @tiptap/pm@3.1.0 + - @tiptap/suggestion@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 7c369d0fc0..c202bbc345 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index dda779cbf0..724420c6c0 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/extension-text-style@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 77f590a992..a289e4c14d 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 5d4f98574a..03f143198d 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 98fb8d30e9..70944b335f 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index b0d2665dd6..8f7a71ab09 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 8afb986a8b..3ff916c0a0 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index cca5b7299c..71a7ea3cd0 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 5d4de08343..23122e98af 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 03f00701b8..d0640976a2 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index cd711a19b7..b3aed17264 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index cae244e7a8..829f1a2f46 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 87d2edefe6..cf0f83e01a 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 1cc2dcebd5..a3a5262e72 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 9e13fd898f..2e62f5f0bc 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 82113b4eef..020c48ab8a 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 611b09f7f8..7ee43195c5 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 93a0d3f7f8..c7f8a48d3d 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/extension-text-style@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 6611743855..037c58f868 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 9d4225e74e..f9a545fa3c 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index c5d8932719..1a928fcb40 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index c3d0938dc4..c145a3166a 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index e732da0f6a..e77fa281ea 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 29a86e8c61..13ce29bdea 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index b927ea0a6e..f5aea7cc9e 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index f685045041..f819ce0668 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.1.0 + +### Patch Changes + +- c868252: Fixed an issue with the mathematics regex using modern negative lookups causing crashes in older Safari versions. + - @tiptap/core@3.1.0 + - @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 293765ff54..165128abad 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index ac572d197e..4138aa911d 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 +- @tiptap/suggestion@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 584dc06c5f..da4f8549cd 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index d5e6e93cc4..d3c76e4f1d 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 9c42c4a8b7..88dde77dca 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index e090a7f672..dadae8fbe1 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-list@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index b5e65e06f0..30b262ecc7 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index ab2182bcd7..a6c5ae2899 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index dd39065c3b..33dc6ee264 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 5f14fefe48..e6d466820d 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 7d9e4ec3dd..94182e2118 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index b349cabe4e..e1238d8542 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 90ad00c364..a056fc2784 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 7bf4a51138..18aaf390fa 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index bab0ee4b2a..2e69bd20c1 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 416534657b..c7b8e76281 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 1004cccd46..8765c935e1 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 6f24f5b060..d94e3f7505 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 197fe86609..bbc73f1187 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 851afa58d7..b0a148570f 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index f536b51f82..1a0124a7ae 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 563fca0840..9cb0b1fe61 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 67b84c69ff..ab65bc582b 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 91d68bc40a..a7f8605750 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 8ca9e19a27..848984a7c7 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 1cb904f509..b9d1d149ed 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 71042547ce..8538f76861 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 2507ff82ca..079cf7586e 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 1aaa30bd30..126262c3f2 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index ad2be69265..f0455ac377 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 492dd1bde3..f6f2f1aa13 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index b64fefb43d..b0e76fb89b 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 32ba975dc5..3ba31a34c5 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 0d24d03863..b7ab848a52 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index e22814a615..a255112fd9 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 4757a42422..13ea00b005 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 596ab41ffc..b707d1d28e 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index b93856122c..35347eb31b 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.1.0 + ## 3.0.9 ## 3.0.8 diff --git a/packages/pm/package.json b/packages/pm/package.json index 02c321ef37..8e3e984bf9 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index fe05a29944..a68de68eba 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index e324d5c087..8eab983fa7 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index ddad804f9a..f0222fe7ee 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.1.0 +- @tiptap/extension-gapcursor@3.1.0 +- @tiptap/extension-list-item@3.1.0 +- @tiptap/extension-list-keymap@3.1.0 +- @tiptap/core@3.1.0 +- @tiptap/extension-blockquote@3.1.0 +- @tiptap/extension-bold@3.1.0 +- @tiptap/extension-bullet-list@3.1.0 +- @tiptap/extension-code@3.1.0 +- @tiptap/extension-code-block@3.1.0 +- @tiptap/extension-document@3.1.0 +- @tiptap/extension-hard-break@3.1.0 +- @tiptap/extension-heading@3.1.0 +- @tiptap/extension-horizontal-rule@3.1.0 +- @tiptap/extension-italic@3.1.0 +- @tiptap/extension-link@3.1.0 +- @tiptap/extension-list@3.1.0 +- @tiptap/extension-ordered-list@3.1.0 +- @tiptap/extension-paragraph@3.1.0 +- @tiptap/extension-strike@3.1.0 +- @tiptap/extension-text@3.1.0 +- @tiptap/extension-underline@3.1.0 +- @tiptap/extensions@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 4126c79adb..83db7bdb30 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index ebc0598e8d..57b9cb26f4 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- c0d33fd: Fixed a bug causing invalid number of columns being created while converting tables to Markdown +- 0943a52: Fixed an issue preventing overriding the default options of the static renderer's `renderToMarkdown` function. + - @tiptap/core@3.1.0 + - @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 6a58975cf6..79b5b74f76 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -94,4 +94,4 @@ "build": "tsup", "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" } -} \ No newline at end of file +} diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index b36dae9cd1..1f33f4dfd7 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 897b4e1018..d78675cc38 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 23f1929099..8fbbbbe6c7 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index ec52cab7b3..fb05aa3356 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index f39a9fc79f..ecae20cc04 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.1.0 + +### Patch Changes + +- @tiptap/core@3.1.0 +- @tiptap/pm@3.1.0 + ## 3.0.9 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index c494403304..1a963bdeaf 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.0.9", + "version": "3.1.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 0dc17f412c20544ebdb18eddab8f55fcd4a88c88 Mon Sep 17 00:00:00 2001 From: Aslam Date: Sun, 10 Aug 2025 22:08:59 +0700 Subject: [PATCH 304/629] fix(unique-id): look for provider in collaborationCaret extension (#6765) * fix(unique-id): look for provider in collaborationCaret extension * Support both collaboration and collaborationCaret extensions --- .changeset/dry-walls-rule.md | 5 +++++ packages/extension-unique-id/src/unique-id.ts | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 .changeset/dry-walls-rule.md diff --git a/.changeset/dry-walls-rule.md b/.changeset/dry-walls-rule.md new file mode 100644 index 0000000000..c68ad8a3bf --- /dev/null +++ b/.changeset/dry-walls-rule.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-unique-id': patch +--- + +Fix UniqueID extension creating unwanted nodes on page refresh by looking for collaboration provider in the correct extension (collaborationCaret instead of collaboration) diff --git a/packages/extension-unique-id/src/unique-id.ts b/packages/extension-unique-id/src/unique-id.ts index 686a262ec1..f514257f4c 100644 --- a/packages/extension-unique-id/src/unique-id.ts +++ b/packages/extension-unique-id/src/unique-id.ts @@ -55,7 +55,9 @@ export const UniqueID = Extension.create({ // check initial content for missing ids onCreate() { - const collab = this.editor.extensionManager.extensions.find(ext => ext.name === 'collaboration') + const collaboration = this.editor.extensionManager.extensions.find(ext => ext.name === 'collaboration') + const collaborationCaret = this.editor.extensionManager.extensions.find(ext => ext.name === 'collaborationCaret') + const collab = collaboration || collaborationCaret const provider = collab?.options ? collab.options.provider : undefined const createIds = () => { From a1c5d21b23df731993dc8d4ab19df9a3a38c9983 Mon Sep 17 00:00:00 2001 From: Jure Triglav Date: Sun, 10 Aug 2025 17:13:47 +0200 Subject: [PATCH 305/629] Add the option of supplying a provider, so that collab provider related logic can work (#6773) Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- packages/extension-collaboration/src/collaboration.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/extension-collaboration/src/collaboration.ts b/packages/extension-collaboration/src/collaboration.ts index 7d99737caf..6aa74c770b 100644 --- a/packages/extension-collaboration/src/collaboration.ts +++ b/packages/extension-collaboration/src/collaboration.ts @@ -56,6 +56,12 @@ export interface CollaborationOptions { */ fragment?: XmlFragment | null + /** + * The collaboration provider. + * @default null + */ + provider?: any | null + /** * Fired when the content from Yjs is initially rendered to Tiptap. */ @@ -86,6 +92,7 @@ export const Collaboration = Extension.create Date: Tue, 12 Aug 2025 03:00:32 +0530 Subject: [PATCH 306/629] fix(core): handle missing DOM remove method in test environments (#6777) (#6779) * fix: improve CSS removal logic with error handling for test environments * fix: resolve Editor.unmount() failure in test environments due to missing DOM remove() method * fix: correct changeset to only patch @tiptap/core * fix: add changeset for Editor.unmount() failure in test environments * fix: remove duplicate changeset, keep only patch version --- .changeset/rude-eggs-prove.md | 5 +++++ packages/core/src/Editor.ts | 15 ++++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 .changeset/rude-eggs-prove.md diff --git a/.changeset/rude-eggs-prove.md b/.changeset/rude-eggs-prove.md new file mode 100644 index 0000000000..f17c4769cf --- /dev/null +++ b/.changeset/rude-eggs-prove.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': minor +--- + +Fix Editor.unmount() failing in test environments due to missing DOM remove() method diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 592b4858d9..622dd19131 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -182,7 +182,20 @@ export class Editor extends EventEmitter { } this.editorView = null this.isInitialized = false - this.css?.remove() + + // Safely remove CSS element with fallback for test environments + if (this.css) { + try { + if (typeof this.css.remove === 'function') { + this.css.remove() + } else if (this.css.parentNode) { + this.css.parentNode.removeChild(this.css) + } + } catch (error) { + // Silently handle any unexpected DOM removal errors in test environments + console.warn('Failed to remove CSS element:', error) + } + } this.css = null } From 55474a478b24de96637b4cb03ff2091cc1e5c0d2 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 14 Aug 2025 10:58:01 +0200 Subject: [PATCH 307/629] add pnpm-patch to fix unwanted peerDependency major release bumping (#6814) --- package.json | 5 +++++ patches/@changesets__assemble-release-plan.patch | 15 +++++++++++++++ pnpm-lock.yaml | 11 ++++++++--- 3 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 patches/@changesets__assemble-release-plan.patch diff --git a/package.json b/package.json index d72e47d900..0a04390693 100644 --- a/package.json +++ b/package.json @@ -85,5 +85,10 @@ "prettier --write", "eslint --fix --quiet --no-error-on-unmatched-pattern" ] + }, + "pnpm": { + "patchedDependencies": { + "@changesets/assemble-release-plan": "patches/@changesets__assemble-release-plan.patch" + } } } diff --git a/patches/@changesets__assemble-release-plan.patch b/patches/@changesets__assemble-release-plan.patch new file mode 100644 index 0000000000..b81597cf3c --- /dev/null +++ b/patches/@changesets__assemble-release-plan.patch @@ -0,0 +1,15 @@ +diff --git a/dist/changesets-assemble-release-plan.cjs.js b/dist/changesets-assemble-release-plan.cjs.js +index e32a5e5d39c3bd920201b5694632d2b44c92d486..a829860f5e001ce610d7f93daf3da015528e6405 100644 +--- a/dist/changesets-assemble-release-plan.cjs.js ++++ b/dist/changesets-assemble-release-plan.cjs.js +@@ -344,6 +344,10 @@ function shouldBumpMajor({ + preInfo, + onlyUpdatePeerDependentsWhenOutOfRange + }) { ++ if (depType === "peerDependencies") { ++ return false; ++ } ++ + // we check if it is a peerDependency because if it is, our dependent bump type might need to be major. + return depType === "peerDependencies" && nextRelease.type !== "none" && nextRelease.type !== "patch" && ( // 1. If onlyUpdatePeerDependentsWhenOutOfRange set to true, bump major if the version is leaving the range. + // 2. If onlyUpdatePeerDependentsWhenOutOfRange set to false, bump major regardless whether or not the version is leaving the range. diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0c3e7e3ddd..a572f087f1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,6 +4,11 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +patchedDependencies: + '@changesets/assemble-release-plan': + hash: k7lv6yvbsp2zaevp6zj5au6glm + path: patches/@changesets__assemble-release-plan.patch + importers: .: @@ -7654,7 +7659,7 @@ snapshots: resolve-from: 5.0.0 semver: 7.6.3 - '@changesets/assemble-release-plan@6.0.5': + '@changesets/assemble-release-plan@6.0.5(patch_hash=k7lv6yvbsp2zaevp6zj5au6glm)': dependencies: '@changesets/errors': 0.2.0 '@changesets/get-dependents-graph': 2.1.2 @@ -7670,7 +7675,7 @@ snapshots: '@changesets/cli@2.27.11': dependencies: '@changesets/apply-release-plan': 7.0.7 - '@changesets/assemble-release-plan': 6.0.5 + '@changesets/assemble-release-plan': 6.0.5(patch_hash=k7lv6yvbsp2zaevp6zj5au6glm) '@changesets/changelog-git': 0.2.0 '@changesets/config': 3.0.5 '@changesets/errors': 0.2.0 @@ -7721,7 +7726,7 @@ snapshots: '@changesets/get-release-plan@4.0.6': dependencies: - '@changesets/assemble-release-plan': 6.0.5 + '@changesets/assemble-release-plan': 6.0.5(patch_hash=k7lv6yvbsp2zaevp6zj5au6glm) '@changesets/config': 3.0.5 '@changesets/pre': 2.0.1 '@changesets/read': 0.6.2 From 71db1f26e8a998c1675f183d99eee4291f45e50f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 14 Aug 2025 11:13:23 +0200 Subject: [PATCH 308/629] chore(release): publish a new release version (#6792) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/dry-walls-rule.md | 5 ---- .changeset/rude-eggs-prove.md | 5 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 10 +++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 9 ++++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 140 files changed, 597 insertions(+), 79 deletions(-) delete mode 100644 .changeset/dry-walls-rule.md delete mode 100644 .changeset/rude-eggs-prove.md diff --git a/.changeset/dry-walls-rule.md b/.changeset/dry-walls-rule.md deleted file mode 100644 index c68ad8a3bf..0000000000 --- a/.changeset/dry-walls-rule.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-unique-id': patch ---- - -Fix UniqueID extension creating unwanted nodes on page refresh by looking for collaboration provider in the correct extension (collaborationCaret instead of collaboration) diff --git a/.changeset/rude-eggs-prove.md b/.changeset/rude-eggs-prove.md deleted file mode 100644 index f17c4769cf..0000000000 --- a/.changeset/rude-eggs-prove.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': minor ---- - -Fix Editor.unmount() failing in test environments due to missing DOM remove() method diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index eab7273ccb..7be9f32eef 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extensions@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 2c2b868b8e..1a64459638 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 14243b9802..bcbd058e18 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extensions@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 3928d1108b..394c35f4f3 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 34855a3c46..cbeed17bd8 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extensions@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index b87a82df94..d97a9a98d4 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 3022b92f53..771dfbeace 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extensions@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 721ccc8218..c27b99d7db 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 63b6c069fc..1d807ff473 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extensions@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 56a671d6c8..012664a979 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index ee827547a3..b1117db74d 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-list@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index ee872682da..338d0119ae 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 7002518a3e..2e7e499907 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-list@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 7cae863087..8c206ff3b2 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 5ee27dc7b5..63877f95b8 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extensions@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 3e18a616d8..5e5d7e19a8 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index bc43a9d481..b14bc314b1 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-table@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 1e69b7c14f..057eb346db 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index da70443747..0faceba415 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-table@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 9eafac07c9..ef7ac10f5b 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index d1c1c8d2fc..14265ebdaa 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-table@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 525c9c09b3..97d606fdad 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index b2e625c239..0885320d68 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-list@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index ff7f717d77..02b1dc2bed 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 9f9eb5e80c..231829e7f2 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-list@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index f18df11687..92f450d4c8 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 5bf6d1a6d3..e0efe071e3 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.2.0 + +### Minor Changes + +- 5056e3e: Fix Editor.unmount() failing in test environments due to missing DOM remove() method + +### Patch Changes + +- @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index a026e1883d..81039ade7c 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index b37963e9f8..b87e1d987b 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 1286d8ac18..f651d55d29 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index ccb46e24ba..7b02594455 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index a6f0d10df2..43daf1ebc6 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index b0607726e6..9690b0340c 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 191b881ffe..98e84d892c 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index d19e2a08a9..a752ff06e6 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-list@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 0f0ef6a9ca..f628ff0740 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 899973302f..71fb5f6c15 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/extension-code-block@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index fb76f96718..a23e85640f 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index a65dab5911..b19b99126e 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 3104a18226..d097f565a1 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 36e101f7e5..6ee31e87db 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 5661f07578..50a3980458 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 3b181a2698..a9c86f2740 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 2b44720d70..656469d887 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index dcf005b776..68e08c97cc 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index d383550195..b925d60046 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 277f143c25..aebeb9841e 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 76ba87d8a5..2234641b16 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 8ecf2b8897..ee76b43aed 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/extension-text-style@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index b7158d0975..ac54670e9d 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 38d8cf394f..9b4fd8901e 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 284dc03047..98afb5555d 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 9aa6854a94..aa0ef0f367 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.2.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.0 +- @tiptap/react@3.2.0 +- @tiptap/pm@3.2.0 + ## 3.1.0 ### Minor Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index ce8e4f1847..2786acc123 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index c65a1971e5..42634d2910 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.2.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.0 +- @tiptap/vue-2@3.2.0 +- @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 33b349e8f9..4ddcd3b1f4 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 73c2ffd36a..b601e7eca3 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.2.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.0 +- @tiptap/vue-3@3.2.0 +- @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 6463db2601..8fe71217f1 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 22f2589db1..2cdb32692f 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/extension-collaboration@3.2.0 + - @tiptap/extension-node-range@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Minor Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 4311348205..6bf435871e 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index f25702d3f0..d0054c4ffe 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/suggestion@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index c202bbc345..e30bf475cb 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 724420c6c0..0642acc367 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/extension-text-style@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index a289e4c14d..b106709935 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 03f143198d..41926e2bec 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 70944b335f..c7fce5d00a 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 8f7a71ab09..e1ea625562 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 3ff916c0a0..d5a545ebc6 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 71a7ea3cd0..6aa4eb8b8e 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 23122e98af..dd7ec304ed 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index d0640976a2..83db5dc001 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index b3aed17264..81acf5a308 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 829f1a2f46..33c7b9f390 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index cf0f83e01a..1100fc4c27 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index a3a5262e72..4e84986e92 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 2e62f5f0bc..a40fe3dde5 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 020c48ab8a..704edc16ba 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 7ee43195c5..69ff3dd273 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index c7f8a48d3d..ef210556b3 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/extension-text-style@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 037c58f868..87f1e16d63 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index f9a545fa3c..24735db403 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 1a928fcb40..3d3cff5ee8 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index c145a3166a..41d5dd4629 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index e77fa281ea..4b682cf895 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 13ce29bdea..b9402ed56f 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index f5aea7cc9e..1ee4718048 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index f819ce0668..ff33af8beb 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 165128abad..3ff8dec340 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 4138aa911d..75608aeb77 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/suggestion@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index da4f8549cd..729c86af9e 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index d3c76e4f1d..09d7ef2c64 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 88dde77dca..2b06172701 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index dadae8fbe1..9507bbd9a3 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- @tiptap/extension-list@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 30b262ecc7..4fcf0f294e 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index a6c5ae2899..c963c321b7 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 33dc6ee264..76c248febd 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index e6d466820d..3ef6c57b0b 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 94182e2118..1c0d264269 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index e1238d8542..6e581826d6 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index a056fc2784..b2b0f76dd1 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 18aaf390fa..ac5dd666b0 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 2e69bd20c1..4bb92be5bf 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index c7b8e76281..2410d260c6 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.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 8765c935e1..435bcd906b 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index d94e3f7505..7acf682928 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index bbc73f1187..9940ced74e 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index b0a148570f..8c31e34694 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 1a0124a7ae..d11375bc03 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 9cb0b1fe61..cc8302e5ca 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index ab65bc582b..5c1539d7e7 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index a7f8605750..aca53685fb 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 848984a7c7..3f5c89dd0a 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index b9d1d149ed..980926ba8a 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 8538f76861..b1b524ca92 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 079cf7586e..4298a52731 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 126262c3f2..4ad169c58d 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index f0455ac377..dab9e68fd9 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-unique-id +## 3.2.0 + +### Patch Changes + +- 0dc17f4: Fix UniqueID extension creating unwanted nodes on page refresh by looking for collaboration provider in the correct extension (collaborationCaret instead of collaboration) +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index f6f2f1aa13..2fed36bf66 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index b0e76fb89b..8db84ff079 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 3ba31a34c5..330118797a 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index b7ab848a52..7ebe02b6cf 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index a255112fd9..ad279403cd 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 13ea00b005..01aee19930 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index b707d1d28e..492c66f924 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 35347eb31b..c5d4431576 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.2.0 + ## 3.1.0 ## 3.0.9 diff --git a/packages/pm/package.json b/packages/pm/package.json index 8e3e984bf9..23989b54c9 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index a68de68eba..89b9c7b0ee 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 8eab983fa7..50b3ab6c50 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index f0222fe7ee..554858d899 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/extension-blockquote@3.2.0 + - @tiptap/extension-bold@3.2.0 + - @tiptap/extension-code@3.2.0 + - @tiptap/extension-code-block@3.2.0 + - @tiptap/extension-document@3.2.0 + - @tiptap/extension-hard-break@3.2.0 + - @tiptap/extension-heading@3.2.0 + - @tiptap/extension-horizontal-rule@3.2.0 + - @tiptap/extension-italic@3.2.0 + - @tiptap/extension-link@3.2.0 + - @tiptap/extension-list@3.2.0 + - @tiptap/extension-paragraph@3.2.0 + - @tiptap/extension-strike@3.2.0 + - @tiptap/extension-text@3.2.0 + - @tiptap/extension-underline@3.2.0 + - @tiptap/extensions@3.2.0 + - @tiptap/extension-list-item@3.2.0 + - @tiptap/extension-list-keymap@3.2.0 + - @tiptap/extension-bullet-list@3.2.0 + - @tiptap/extension-ordered-list@3.2.0 + - @tiptap/extension-dropcursor@3.2.0 + - @tiptap/extension-gapcursor@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 83db7bdb30..8abe9f20a3 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 57b9cb26f4..d9ff9c4d81 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 79b5b74f76..5e606f2e1e 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 1f33f4dfd7..b3e9f97610 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index d78675cc38..32f56570ae 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 8fbbbbe6c7..de65792f41 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index fb05aa3356..26f6d8830a 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index ecae20cc04..418e804a84 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.0 + +### Patch Changes + +- Updated dependencies [5056e3e] + - @tiptap/core@3.2.0 + - @tiptap/pm@3.2.0 + ## 3.1.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 1a963bdeaf..a1305993f0 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.1.0", + "version": "3.2.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From bbf2b2597857209c973216c6be87da69718a0a43 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 16 Aug 2025 20:05:34 +0200 Subject: [PATCH 309/629] added VS Code Copilot instructions (#6826) --- .github/instructions/tiptap.instructions.md | 228 ++++++++++++++++++++ .gitignore | 4 + 2 files changed, 232 insertions(+) create mode 100644 .github/instructions/tiptap.instructions.md diff --git a/.github/instructions/tiptap.instructions.md b/.github/instructions/tiptap.instructions.md new file mode 100644 index 0000000000..d876570d80 --- /dev/null +++ b/.github/instructions/tiptap.instructions.md @@ -0,0 +1,228 @@ +--- +applyTo: '**' +--- + +# Tiptap + +This document explains how to work on the Tiptap monorepo in VS Code. It covers repo layout, local dev, linting and formatting, tests, docs, and release workflow. It is written to be friendly for both humans and AI coding assistants. + +--- + +## What is Tiptap + +Tiptap is a headless rich text editor toolkit built on ProseMirror. It ships a small Core and many opt-in Extensions so you can compose exactly the editor you need for React, Vue, or vanilla apps. The project is optimized for user experience and developer experience. APIs are predictable, behavior is testable, and everything should be documented with JSDoc and runnable examples so we can generate API docs automatically. + +Key points for AI assistants: + +* Treat Tiptap as a collection of focused packages that together form an editor system. +* Do not assume a single framework. Many packages are framework agnostic, with separate bindings for React and Vue. +* Favor small pure utilities and deterministic code. Side effects should be explicit. + +--- + +## Repository layout + +``` +. +├─ packages/ # Core and all first-party extensions +│ ├─ core/ # Editor core (@tiptap/core) +│ ├─ extension-*/ # Individual extensions +│ ├─ pm/ # ProseMirror related internals and helpers +│ └─ ... # Shared utilities, framework bindings, etc. +├─ demos/ # Vite app for live examples +│ ├─ react/ # React demos +│ └─ vue/ # Vue demos +├─ tests/ # Cypress e2e tests that run against the demos +├─ .changeset/ # Changesets for versioning and changelogs +└─ .github/ # Workflows and docs like this file +``` + +Notes: + +* All packages we publish or use live under `packages/*`. +* The `demos/` folder contains a Vite app. It automatically discovers and parses React and Vue demos so they appear in the UI without manual wiring. +* Cypress tests in `tests/` expect the demos to be available on `http://localhost:3000`. + +## NPM scripts + +Scripts defined at the repo root: + +* `pnpm dev` - start the demos on port 3000 +* `pnpm build` - build all packages via Turborepo +* `pnpm lint` - run eslint checks +* `pnpm lint:fix` - run prettier + eslint fix +* `pnpm test:open` - open Cypress against `tests/` +* `pnpm test:run` - run Cypress in headless mode +* `pnpm test` - build then run all tests +* `pnpm serve` - build and serve the demos on port 3000 +* `pnpm publish` - build and publish with Changesets +* `pnpm reset` - remove caches, build artifacts, and reinstall deps + +--- + +## Linting & formatting + +* ESLint config is at **`.eslintrc.js`** in the repo root. +* Prettier config is at **`.prettierrc`** (or `prettier.config.json`). +* Husky and lint-staged run automatically on commits. + +Run manually: + +```bash +pnpm lint +pnpm lint:fix +``` + +--- + +## Demos + +* Demos are a Vite app in `demos/`. +* React and Vue examples live in `demos/react` and `demos/vue`. They are automatically parsed into the app. +* Start in dev mode: + + ```bash + pnpm dev + ``` +* Build static output and serve locally: + + ```bash + pnpm serve + ``` + +When adding a demo, keep it small and self-contained, with imports from published package names (`@tiptap/...`). + +--- + +## Testing with Cypress + +* Cypress lives in `tests/` and drives the demos in a browser. +* Tests assume the app is running on `http://localhost:3000`. + +Workflow: + +```bash +pnpm dev # terminal A +pnpm test:open # terminal B +``` + +or for headless CI runs: + +```bash +pnpm test:run +``` + +--- + +## Documentation style + +We focus heavily on **User Experience** and **Developer Experience**. Every public API must be documented with JSDoc, including: + +* `@param` and `@returns` annotations +* Argument descriptions +* At least one runnable example + +This ensures our automated API docs are complete and examples are usable without extra context. + +Example: + +````ts +/** + * Toggle bold mark on the current selection. + * + * Example + * ```ts + * editor.chain().focus().toggleBold().run() + * ``` + * + * @param editor - The editor instance + * @returns true if the command was applied + */ +export function toggleBold(editor: Editor): boolean { + // ... +} +```` + +--- + +## Versioning and releases with Changesets + +* Run `pnpm changeset` to create a new changeset (choose packages + bump type). +* Run `pnpm version` to update versions and changelogs. +* Maintainers publish with `pnpm publish`. + +Changelogs must describe **user-facing changes**. Avoid internal noise. + +--- + +## Cleaning and resetting + +* `pnpm run clean:packages` - remove build artifacts +* `pnpm run clean:packs` - remove generated tarballs +* `pnpm reset` - full reset of caches, node\_modules, and lockfiles + +--- + +## Principles + +* Keep packages modular and framework-agnostic where possible. +* Breaking changes require a major bump and a clear migration path. +* Always add or update demos and tests when introducing a feature. +* Code should be deterministic, documented, and tested. + +--- + +## Extra guidance (short additions) + +To make these instructions easier for automated agents and new contributors, the sections below add a few operational details and guardrails that speed up safe, repeatable changes. + +### Environment + +- Recommended Node version: >=18.x. Use a node version manager (nvm, fnm) or Corepack to pin a runtime. +- Recommended package manager: pnpm (use the repo's lockfile). If you see unexpected errors, run `pnpm reset`. + +### Where to edit packages + +Packages live under `packages/*`. Public entry points are typically `packages//src/index.ts` and are referenced by the package's `package.json` (`main`/`module`/`exports`). Prefer editing `src/` files and keep package diffs focused. For framework bindings check `packages/react/` and `packages/vue-2/` or `packages/vue-3/`. + +### Demos auto-discovery rules + +The demos app discovers examples automatically. When adding a demo: +- Keep demo files small and self-contained. Import from published package names (for example `@tiptap/extension-foo`). +- Name demo files clearly; follow existing naming conventions in `demos/`. + +### Validation checklist (run locally before opening a PR) + +Run the following to validate changes quickly: + +```bash +pnpm lint +pnpm build +pnpm test # runs unit and/or cypress where configured +pnpm dev # optionally run the demos and open http://localhost:3000 +``` + +If a single package is failing types, run a targeted build for that package (e.g. `pnpm -w -F @tiptap/core build`), or run `pnpm build` at the repo root. + +### PR checklist + +- All checks pass (lint/build/tests). +- Changeset added for user-facing changes (`pnpm changeset`). +- Demo added/updated for UI-visible changes. +- Short, clear PR description and changelog entry that explains why the change is needed. + +### Guidance for automated agents and AI assistants + +- Make single-purpose, small diffs. Avoid sweeping changes in one PR. +- Always run the validation checklist above after edits. +- Add or update a demo and tests for user-visible behavior. For deterministic behaviour, favour unit tests over fragile e2e tests where possible. +- Add a Changeset for any user-facing change. Do not change public APIs without a major bump; document migration steps in the PR description. + +### Troubleshooting notes + +- If CI fails with dependency or lockfile errors, run `pnpm reset` locally and re-run the build. +- For flaky Cypress tests, run the demo locally with `pnpm dev` and reproduce the failing test in `pnpm test:open`. + +--- + +These additions are intentionally short so they are easy to follow and scriptable by tools and agents. If you'd like, I can apply a slightly different tone or expand any section into more detail (for example, exact node/pnpm version pinning or demo naming patterns). diff --git a/.gitignore b/.gitignore index 3494886c2e..a2da949a44 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,7 @@ demos/*.tgz # demo directories demos/src/Dev/** !demos/src/Dev/.gitkeep + +# instructions +.github/instructions/* +!.github/instructions/tiptap.instructions.md From fa9d99148c44728ad82c8038f28bc4aa94691974 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 16 Aug 2025 20:21:52 +0200 Subject: [PATCH 310/629] fix(demos/marks-link): use useEditorState in React demo to fix isActive lag (#6626) (#6827) Replace direct calls to editor.isActive('link') with a reactive selector via useEditorState so the Set/Unset link buttons reflect the current active state immediately in React demos. Matches Vue behaviour and prevents the 'one render behind' issue reported in #6626. --- demos/src/Marks/Link/React/index.jsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/demos/src/Marks/Link/React/index.jsx b/demos/src/Marks/Link/React/index.jsx index 9be78813f6..a9e9a9fbaa 100644 --- a/demos/src/Marks/Link/React/index.jsx +++ b/demos/src/Marks/Link/React/index.jsx @@ -5,7 +5,7 @@ import Document from '@tiptap/extension-document' import Link from '@tiptap/extension-link' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { EditorContent, useEditor } from '@tiptap/react' +import { EditorContent, useEditor, useEditorState } from '@tiptap/react' import React, { useCallback } from 'react' export default () => { @@ -110,6 +110,13 @@ export default () => { } }, [editor]) + const editorState = useEditorState({ + editor, + selector: ctx => ({ + isLink: ctx.editor.isActive('link'), + }), + }) + if (!editor) { return null } @@ -118,10 +125,10 @@ export default () => { <>
- -
From 5ac9171f0611e483b214a5ed00bad18d5407c102 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 16 Aug 2025 20:22:27 +0200 Subject: [PATCH 311/629] fix(demos/marks-link): use useEditorState in React demo to fix isActive lag (#6626) (#6827) (#6828) Replace direct calls to editor.isActive('link') with a reactive selector via useEditorState so the Set/Unset link buttons reflect the current active state immediately in React demos. Matches Vue behaviour and prevents the 'one render behind' issue reported in #6626. --- demos/src/Marks/Link/React/index.jsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/demos/src/Marks/Link/React/index.jsx b/demos/src/Marks/Link/React/index.jsx index 9be78813f6..a9e9a9fbaa 100644 --- a/demos/src/Marks/Link/React/index.jsx +++ b/demos/src/Marks/Link/React/index.jsx @@ -5,7 +5,7 @@ import Document from '@tiptap/extension-document' import Link from '@tiptap/extension-link' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { EditorContent, useEditor } from '@tiptap/react' +import { EditorContent, useEditor, useEditorState } from '@tiptap/react' import React, { useCallback } from 'react' export default () => { @@ -110,6 +110,13 @@ export default () => { } }, [editor]) + const editorState = useEditorState({ + editor, + selector: ctx => ({ + isLink: ctx.editor.isActive('link'), + }), + }) + if (!editor) { return null } @@ -118,10 +125,10 @@ export default () => { <>
- -
From 8df5b50905d14b4c0d5531c2c04324eaca506b2d Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 16 Aug 2025 22:31:54 +0200 Subject: [PATCH 312/629] fix(tests): update test for empty paragraph rendering in md-string.spec.ts (#6830) --- .../cypress/integration/static-renderer/md-string.spec.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/cypress/integration/static-renderer/md-string.spec.ts b/tests/cypress/integration/static-renderer/md-string.spec.ts index a16b87b6ec..9f1c3f76bd 100644 --- a/tests/cypress/integration/static-renderer/md-string.spec.ts +++ b/tests/cypress/integration/static-renderer/md-string.spec.ts @@ -20,7 +20,12 @@ describe('static render json to string (no prosemirror)', () => { it('should render empty paragraph', () => { const json = { type: 'doc', - content: [], + content: [ + { + type: 'paragraph', + content: [], + }, + ], } const md = renderToMarkdown({ content: json, From 9fccafafffd9b36858f0c51ecf5af135e2e84b5a Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 16 Aug 2025 22:32:33 +0200 Subject: [PATCH 313/629] Merge develop into main (#6831) * fix(demos/marks-link): use useEditorState in React demo to fix isActive lag (#6626) (#6827) Replace direct calls to editor.isActive('link') with a reactive selector via useEditorState so the Set/Unset link buttons reflect the current active state immediately in React demos. Matches Vue behaviour and prevents the 'one render behind' issue reported in #6626. * fix(tests): update test for empty paragraph rendering in md-string.spec.ts (#6830) --- .../cypress/integration/static-renderer/md-string.spec.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/cypress/integration/static-renderer/md-string.spec.ts b/tests/cypress/integration/static-renderer/md-string.spec.ts index a16b87b6ec..9f1c3f76bd 100644 --- a/tests/cypress/integration/static-renderer/md-string.spec.ts +++ b/tests/cypress/integration/static-renderer/md-string.spec.ts @@ -20,7 +20,12 @@ describe('static render json to string (no prosemirror)', () => { it('should render empty paragraph', () => { const json = { type: 'doc', - content: [], + content: [ + { + type: 'paragraph', + content: [], + }, + ], } const md = renderToMarkdown({ content: json, From 5c5d1fb9c07521d1f7c6b73ab5ce76392e950745 Mon Sep 17 00:00:00 2001 From: Max <59724861+oxymc@users.noreply.github.com> Date: Wed, 20 Aug 2025 17:41:32 +0300 Subject: [PATCH 314/629] Fix: generateHTML on server (#6803) * fix(package): update exports to include browser and node specific paths * fix(package): correct structure of exports in package.json * fix(package): add missing import types definition in exports --- packages/html/package.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/html/package.json b/packages/html/package.json index 492c66f924..f2e9840482 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -18,7 +18,11 @@ "import": "./dist/index.d.ts", "require": "./dist/index.d.cts" }, - "import": "./dist/index.js", + "import": { + "browser": "./dist/index.js", + "node": "./dist/server/index.js", + "default": "./dist/index.js" + }, "require": "./dist/index.cjs" }, "./server": { From 6a2873f371309340d15763ead943ec6eaf8c804b Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 21 Aug 2025 11:45:41 +0200 Subject: [PATCH 315/629] fix(NodeView): ensure drag previews work correctly in Safari by using an offscreen clone (#6852) --- .changeset/fix-safari-drag-image.md | 10 +++++++ packages/core/src/NodeView.ts | 42 ++++++++++++++++++++++++++++- 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 .changeset/fix-safari-drag-image.md diff --git a/.changeset/fix-safari-drag-image.md b/.changeset/fix-safari-drag-image.md new file mode 100644 index 0000000000..c2f62c0382 --- /dev/null +++ b/.changeset/fix-safari-drag-image.md @@ -0,0 +1,10 @@ +--- +"@tiptap/core": patch +--- + +Ensure drag previews for node views work correctly in Safari by attaching +an offscreen clone of the node to the DOM while calling +`setDragImage`, and by preserving the original element's pixel +`width`/`height` so the preview matches the original. This prevents +Safari from immediately cancelling the drag when a detached element is +used as the drag image. diff --git a/packages/core/src/NodeView.ts b/packages/core/src/NodeView.ts index b168f087ee..59466e8831 100644 --- a/packages/core/src/NodeView.ts +++ b/packages/core/src/NodeView.ts @@ -100,7 +100,47 @@ export class NodeView< const clonedNode = this.dom.cloneNode(true) as HTMLElement - event.dataTransfer?.setDragImage(clonedNode, x, y) + // Preserve the visual size of the original when using the clone as + // the drag image. + try { + const domBox = this.dom.getBoundingClientRect() + clonedNode.style.width = `${Math.round(domBox.width)}px` + clonedNode.style.height = `${Math.round(domBox.height)}px` + clonedNode.style.boxSizing = 'border-box' + // Ensure the clone doesn't capture pointer events while offscreen + clonedNode.style.pointerEvents = 'none' + } catch { + // ignore measurement errors (e.g. if element not in DOM) + } + + // Some browsers (notably Safari) require the element passed to + // setDragImage to be present in the DOM. Using a detached node can + // cause the drag to immediately end. + let dragImageWrapper: HTMLElement | null = null + + try { + dragImageWrapper = document.createElement('div') + dragImageWrapper.style.position = 'absolute' + dragImageWrapper.style.top = '-9999px' + dragImageWrapper.style.left = '-9999px' + dragImageWrapper.style.pointerEvents = 'none' + dragImageWrapper.appendChild(clonedNode) + document.body.appendChild(dragImageWrapper) + + event.dataTransfer?.setDragImage(clonedNode, x, y) + } finally { + // Remove the wrapper on the next tick so the browser can use the + // element as the drag image. A 0ms timeout is enough in practice. + if (dragImageWrapper) { + setTimeout(() => { + try { + dragImageWrapper?.remove() + } catch { + // ignore removal errors + } + }, 0) + } + } const pos = this.getPos() From 11d430c9aed67575d852407a9a03fd1e7e783457 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 21 Aug 2025 11:52:37 +0200 Subject: [PATCH 316/629] chore(release): publish a new release version (#6853) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/fix-safari-drag-image.md | 10 ------- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 12 ++++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 139 files changed, 598 insertions(+), 79 deletions(-) delete mode 100644 .changeset/fix-safari-drag-image.md diff --git a/.changeset/fix-safari-drag-image.md b/.changeset/fix-safari-drag-image.md deleted file mode 100644 index c2f62c0382..0000000000 --- a/.changeset/fix-safari-drag-image.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Ensure drag previews for node views work correctly in Safari by attaching -an offscreen clone of the node to the DOM while calling -`setDragImage`, and by preserving the original element's pixel -`width`/`height` so the preview matches the original. This prevents -Safari from immediately cancelling the drag when a detached element is -used as the drag image. diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 7be9f32eef..4a861f25f6 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extensions@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 1a64459638..e757f0c456 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index bcbd058e18..0cf57283bd 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extensions@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 394c35f4f3..60b111a69a 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index cbeed17bd8..b2451e0773 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extensions@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index d97a9a98d4..086c978b87 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 771dfbeace..0d946f9293 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extensions@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index c27b99d7db..3f2156d451 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 1d807ff473..94b17bfb62 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extensions@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 012664a979..36a7f7159d 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index b1117db74d..c35131dd53 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-list@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 338d0119ae..d4524a8b7a 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 2e7e499907..5883c37011 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-list@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 8c206ff3b2..2b997b8675 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 63877f95b8..53c61f9d52 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extensions@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 5e5d7e19a8..ee3890b9c4 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index b14bc314b1..6e909707da 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-table@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 057eb346db..29c0abe1e9 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 0faceba415..08b38af74a 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-table@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index ef7ac10f5b..bf85e46057 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 14265ebdaa..10401e3c07 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-table@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 97d606fdad..9c5df34535 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 0885320d68..e684abbcad 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-list@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 02b1dc2bed..67a7317e39 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 231829e7f2..87e3502f4f 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-list@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 92f450d4c8..753fdf474e 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index e0efe071e3..f3d71d2228 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- 6a2873f: Ensure drag previews for node views work correctly in Safari by attaching + an offscreen clone of the node to the DOM while calling + `setDragImage`, and by preserving the original element's pixel + `width`/`height` so the preview matches the original. This prevents + Safari from immediately cancelling the drag when a detached element is + used as the drag image. + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 81039ade7c..791905348d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index b87e1d987b..96984fd594 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index f651d55d29..954070ebef 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 7b02594455..7cf9a04808 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 43daf1ebc6..e71feb32b9 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 9690b0340c..4c4d38f0a2 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 98e84d892c..a8a8cff491 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index a752ff06e6..545ad5a05d 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-list@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index f628ff0740..733b90cc81 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 71fb5f6c15..6985d36c72 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/extension-code-block@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index a23e85640f..60485a1732 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index b19b99126e..24260b16e8 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index d097f565a1..f447231984 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 6ee31e87db..e38e9dfdc2 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 50a3980458..399ccedf74 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index a9c86f2740..c51150a67b 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 656469d887..a2ccc0cb88 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 68e08c97cc..936d8f8dbb 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index b925d60046..97d74d19ee 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index aebeb9841e..d06ed0b3d5 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 2234641b16..9bc26bad3e 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index ee76b43aed..fb2da1ee1f 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/extension-text-style@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index ac54670e9d..a4fd782730 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 9b4fd8901e..61f079475a 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 98afb5555d..fcbe49ffdf 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index aa0ef0f367..aeb4303600 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.2.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.1 +- @tiptap/react@3.2.1 +- @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 2786acc123..e4581e41e1 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 42634d2910..bddc68d549 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.2.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.1 +- @tiptap/vue-2@3.2.1 +- @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 4ddcd3b1f4..f0ff9098e0 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index b601e7eca3..0cd0189449 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.2.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.1 +- @tiptap/vue-3@3.2.1 +- @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 8fe71217f1..95724fb10e 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 2cdb32692f..16a8778b92 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/extension-collaboration@3.2.1 + - @tiptap/extension-node-range@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 6bf435871e..6e6190e3dc 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index d0054c4ffe..35f78e032b 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/suggestion@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index e30bf475cb..7feff4c826 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 0642acc367..8928e143ac 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/extension-text-style@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index b106709935..848f40548f 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 41926e2bec..a46f8b9ba4 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index c7fce5d00a..d21fe4c2b0 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index e1ea625562..1c334fd602 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index d5a545ebc6..e296d0d361 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 6aa4eb8b8e..a61559a22a 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index dd7ec304ed..7df5400722 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 83db5dc001..97dcca2577 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 81acf5a308..b1dc90566a 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 33c7b9f390..b784883e83 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 1100fc4c27..0021669dc2 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 4e84986e92..93d537b735 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index a40fe3dde5..fb705ff1b6 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 704edc16ba..9cc404dd8e 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 69ff3dd273..df91339007 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index ef210556b3..a393a81577 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/extension-text-style@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 87f1e16d63..fb638486ed 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 24735db403..39274914d0 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 3d3cff5ee8..1a85c40ec3 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 41d5dd4629..6e4bc37c32 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 4b682cf895..6d461da548 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index b9402ed56f..6247b32878 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 1ee4718048..2e541b950d 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index ff33af8beb..4fd678a18b 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 3ff8dec340..2bee3891c3 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 75608aeb77..312e317f86 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/suggestion@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 729c86af9e..136d4bc452 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 09d7ef2c64..487c0cf7d9 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 2b06172701..cab688c157 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 9507bbd9a3..206a690097 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- @tiptap/extension-list@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 4fcf0f294e..413f599763 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index c963c321b7..f732095750 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 76c248febd..9668d7bddf 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 3ef6c57b0b..2203267cac 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 1c0d264269..a5363def2a 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 6e581826d6..55aca6d300 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index b2b0f76dd1..3e280b6ab8 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index ac5dd666b0..7ea824dd02 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 4bb92be5bf..859290ee47 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 2410d260c6..787180f201 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.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 435bcd906b..1c12d9ee1d 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 7acf682928..c2f960bee8 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 9940ced74e..7ed5e0b7d7 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 8c31e34694..e6ba7e1519 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index d11375bc03..e6f70c0a8f 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index cc8302e5ca..19be9a65c7 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 5c1539d7e7..6029db9a56 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index aca53685fb..dd651cd32a 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 3f5c89dd0a..d3720ef345 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 980926ba8a..11b1fa38ee 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index b1b524ca92..1c68562202 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 4298a52731..2dbe6305a3 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 4ad169c58d..a7e27c5b78 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index dab9e68fd9..bd01362207 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 2fed36bf66..4acaf44755 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 8db84ff079..1ea5525188 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 330118797a..a7642ff201 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 7ebe02b6cf..fab0fdb1ac 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index ad279403cd..916c0988d8 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 01aee19930..e2ca4cc25c 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 492c66f924..b4df6fa54c 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index c5d4431576..fc9c33cc65 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.2.1 + ## 3.2.0 ## 3.1.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index 23989b54c9..f208f8e41d 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 89b9c7b0ee..10d93d3417 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 50b3ab6c50..fbdb54c305 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 554858d899..b5b0ddff16 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/extension-blockquote@3.2.1 + - @tiptap/extension-bold@3.2.1 + - @tiptap/extension-code@3.2.1 + - @tiptap/extension-code-block@3.2.1 + - @tiptap/extension-document@3.2.1 + - @tiptap/extension-hard-break@3.2.1 + - @tiptap/extension-heading@3.2.1 + - @tiptap/extension-horizontal-rule@3.2.1 + - @tiptap/extension-italic@3.2.1 + - @tiptap/extension-link@3.2.1 + - @tiptap/extension-list@3.2.1 + - @tiptap/extension-paragraph@3.2.1 + - @tiptap/extension-strike@3.2.1 + - @tiptap/extension-text@3.2.1 + - @tiptap/extension-underline@3.2.1 + - @tiptap/extensions@3.2.1 + - @tiptap/extension-list-item@3.2.1 + - @tiptap/extension-list-keymap@3.2.1 + - @tiptap/extension-bullet-list@3.2.1 + - @tiptap/extension-ordered-list@3.2.1 + - @tiptap/extension-dropcursor@3.2.1 + - @tiptap/extension-gapcursor@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 8abe9f20a3..b2025e33a4 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index d9ff9c4d81..90c34c8253 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 5e606f2e1e..17d32f1ba5 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index b3e9f97610..7bf0c6fc9e 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 32f56570ae..1056ea8b6e 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index de65792f41..14021bb232 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 26f6d8830a..5d3dac9b71 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 418e804a84..a6024f109e 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.1 + +### Patch Changes + +- Updated dependencies [6a2873f] + - @tiptap/core@3.2.1 + - @tiptap/pm@3.2.1 + ## 3.2.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index a1305993f0..dbd6c03f81 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.2.0", + "version": "3.2.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 688abd52ffea89db9df4f384f81f1029f058ac93 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 22 Aug 2025 13:48:05 +0200 Subject: [PATCH 317/629] feat(unique-id): add node parameter to generateID (#6858) * feat(unique-id): add node parameter to generateID for improved ID generation * Update add-node-param-to-generate-id.md * feat(unique-id): update generateID to accept context object for enhanced ID generation --- .changeset/add-node-param-to-generate-id.md | 15 +++++++++++++++ packages/extension-unique-id/src/unique-id.ts | 15 ++++++++++----- 2 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 .changeset/add-node-param-to-generate-id.md diff --git a/.changeset/add-node-param-to-generate-id.md b/.changeset/add-node-param-to-generate-id.md new file mode 100644 index 0000000000..053a6d2274 --- /dev/null +++ b/.changeset/add-node-param-to-generate-id.md @@ -0,0 +1,15 @@ +--- +"@tiptap/extension-unique-id": patch +--- + +Change the `generateID` option to accept a context object: `{ node, pos }`. + +This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. + +The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: + +``` +editor.use(UniqueID, { + generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, +}) +``` diff --git a/packages/extension-unique-id/src/unique-id.ts b/packages/extension-unique-id/src/unique-id.ts index f514257f4c..fd9fbdc912 100644 --- a/packages/extension-unique-id/src/unique-id.ts +++ b/packages/extension-unique-id/src/unique-id.ts @@ -7,10 +7,15 @@ import { v4 as uuidv4 } from 'uuid' import { findDuplicates } from './helpers/findDuplicates.js' +export type UniqueIDGenerationContext = { + node: ProseMirrorNode + pos: number +} + export interface UniqueIDOptions { attributeName: string types: string[] - generateID: () => any + generateID: (ctx: UniqueIDGenerationContext) => any filterTransaction: ((transaction: Transaction) => boolean) | null } @@ -71,7 +76,7 @@ export const UniqueID = Extension.create({ nodesWithoutId.forEach(({ node, pos }) => { tr.setNodeMarkup(pos, undefined, { ...node.attrs, - [attributeName]: generateID(), + [attributeName]: generateID({ node, pos }), }) }) @@ -150,7 +155,7 @@ export const UniqueID = Extension.create({ if (id === null) { tr.setNodeMarkup(pos, undefined, { ...node.attrs, - [attributeName]: generateID(), + [attributeName]: generateID({ node, pos }), }) return @@ -169,7 +174,7 @@ export const UniqueID = Extension.create({ return } - const generatedId = generateID() + const generatedId = generateID({ node, pos }) tr.setNodeMarkup(pos, undefined, { ...node.attrs, @@ -190,7 +195,7 @@ export const UniqueID = Extension.create({ if (newNode) { tr.setNodeMarkup(pos, undefined, { ...node.attrs, - [attributeName]: generateID(), + [attributeName]: generateID({ node, pos }), }) } }) From 1cab7ff2f80d2984e9b5d5c07134d0560d63a3a0 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 22 Aug 2025 13:59:59 +0200 Subject: [PATCH 318/629] Merge Develop to Main (#6859) * fix(demos/marks-link): use useEditorState in React demo to fix isActive lag (#6626) (#6827) Replace direct calls to editor.isActive('link') with a reactive selector via useEditorState so the Set/Unset link buttons reflect the current active state immediately in React demos. Matches Vue behaviour and prevents the 'one render behind' issue reported in #6626. * fix(tests): update test for empty paragraph rendering in md-string.spec.ts (#6830) * Fix: generateHTML on server (#6803) * fix(package): update exports to include browser and node specific paths * fix(package): correct structure of exports in package.json * fix(package): add missing import types definition in exports * feat(unique-id): add node parameter to generateID (#6858) * feat(unique-id): add node parameter to generateID for improved ID generation * Update add-node-param-to-generate-id.md * feat(unique-id): update generateID to accept context object for enhanced ID generation --------- Co-authored-by: Max <59724861+oxymc@users.noreply.github.com> --- .changeset/add-node-param-to-generate-id.md | 15 +++++++++++++++ packages/extension-unique-id/src/unique-id.ts | 15 ++++++++++----- packages/html/package.json | 6 +++++- 3 files changed, 30 insertions(+), 6 deletions(-) create mode 100644 .changeset/add-node-param-to-generate-id.md diff --git a/.changeset/add-node-param-to-generate-id.md b/.changeset/add-node-param-to-generate-id.md new file mode 100644 index 0000000000..053a6d2274 --- /dev/null +++ b/.changeset/add-node-param-to-generate-id.md @@ -0,0 +1,15 @@ +--- +"@tiptap/extension-unique-id": patch +--- + +Change the `generateID` option to accept a context object: `{ node, pos }`. + +This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. + +The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: + +``` +editor.use(UniqueID, { + generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, +}) +``` diff --git a/packages/extension-unique-id/src/unique-id.ts b/packages/extension-unique-id/src/unique-id.ts index f514257f4c..fd9fbdc912 100644 --- a/packages/extension-unique-id/src/unique-id.ts +++ b/packages/extension-unique-id/src/unique-id.ts @@ -7,10 +7,15 @@ import { v4 as uuidv4 } from 'uuid' import { findDuplicates } from './helpers/findDuplicates.js' +export type UniqueIDGenerationContext = { + node: ProseMirrorNode + pos: number +} + export interface UniqueIDOptions { attributeName: string types: string[] - generateID: () => any + generateID: (ctx: UniqueIDGenerationContext) => any filterTransaction: ((transaction: Transaction) => boolean) | null } @@ -71,7 +76,7 @@ export const UniqueID = Extension.create({ nodesWithoutId.forEach(({ node, pos }) => { tr.setNodeMarkup(pos, undefined, { ...node.attrs, - [attributeName]: generateID(), + [attributeName]: generateID({ node, pos }), }) }) @@ -150,7 +155,7 @@ export const UniqueID = Extension.create({ if (id === null) { tr.setNodeMarkup(pos, undefined, { ...node.attrs, - [attributeName]: generateID(), + [attributeName]: generateID({ node, pos }), }) return @@ -169,7 +174,7 @@ export const UniqueID = Extension.create({ return } - const generatedId = generateID() + const generatedId = generateID({ node, pos }) tr.setNodeMarkup(pos, undefined, { ...node.attrs, @@ -190,7 +195,7 @@ export const UniqueID = Extension.create({ if (newNode) { tr.setNodeMarkup(pos, undefined, { ...node.attrs, - [attributeName]: generateID(), + [attributeName]: generateID({ node, pos }), }) } }) diff --git a/packages/html/package.json b/packages/html/package.json index b4df6fa54c..257d91d45c 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -18,7 +18,11 @@ "import": "./dist/index.d.ts", "require": "./dist/index.d.cts" }, - "import": "./dist/index.js", + "import": { + "browser": "./dist/index.js", + "node": "./dist/server/index.js", + "default": "./dist/index.js" + }, "require": "./dist/index.cjs" }, "./server": { From 1a232042ba67c77b4fc663f8383603e0cf4907e1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 22 Aug 2025 14:04:06 +0200 Subject: [PATCH 319/629] chore(release): publish a new release version (#6860) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/add-node-param-to-generate-id.md | 15 ---------- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 19 ++++++++++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 139 files changed, 557 insertions(+), 84 deletions(-) delete mode 100644 .changeset/add-node-param-to-generate-id.md diff --git a/.changeset/add-node-param-to-generate-id.md b/.changeset/add-node-param-to-generate-id.md deleted file mode 100644 index 053a6d2274..0000000000 --- a/.changeset/add-node-param-to-generate-id.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -"@tiptap/extension-unique-id": patch ---- - -Change the `generateID` option to accept a context object: `{ node, pos }`. - -This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. - -The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: - -``` -editor.use(UniqueID, { - generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, -}) -``` diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 4a861f25f6..943277cbf5 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extensions@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index e757f0c456..44ac0cce58 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 0cf57283bd..be796b6e96 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extensions@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 60b111a69a..f6e4a5e912 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index b2451e0773..fafe1682fe 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extensions@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 086c978b87..282b883805 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 0d946f9293..9edb60b0d9 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extensions@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 3f2156d451..b0118c4cf3 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 94b17bfb62..e1fe64726a 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extensions@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 36a7f7159d..bb238d53ed 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index c35131dd53..ac4b7814e5 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-list@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index d4524a8b7a..469087096f 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 5883c37011..ea9e17ee2c 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-list@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 2b997b8675..512e993a92 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 53c61f9d52..30d7677e14 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extensions@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index ee3890b9c4..83bff9ac9c 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 6e909707da..e1338bcebd 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-table@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 29c0abe1e9..6f3e71b486 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 08b38af74a..a50048994f 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-table@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index bf85e46057..ca039e52e0 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 10401e3c07..cff04c1e16 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-table@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 9c5df34535..d605925871 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index e684abbcad..5cb46d83e1 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-list@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 67a7317e39..841402080c 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 87e3502f4f..61b85dad2a 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-list@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 753fdf474e..a5a5710958 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index f3d71d2228..2dfc5f9e78 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 791905348d..ff5b0199e3 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 96984fd594..0d85c81b8e 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 954070ebef..444bf66fb7 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 7cf9a04808..b9f080032f 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index e71feb32b9..c5dc3d6c14 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 4c4d38f0a2..7ab4bed347 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index a8a8cff491..ac94c14b3e 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 545ad5a05d..1b18d0d910 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-list@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 733b90cc81..5679f09037 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 6985d36c72..2778db2e68 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/extension-code-block@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 60485a1732..4c3179f61d 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 24260b16e8..c63beb5e17 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index f447231984..820dfc2a3e 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index e38e9dfdc2..8a51a1a153 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 399ccedf74..1f1613347e 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index c51150a67b..aba3652d13 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index a2ccc0cb88..609fc6317e 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 936d8f8dbb..3eb1d2be34 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 97d74d19ee..4533049608 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index d06ed0b3d5..73787c80e1 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-text-style@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 9bc26bad3e..50d03916a9 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index fb2da1ee1f..2fce25aa9f 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/extension-text-style@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index a4fd782730..e2e095b8b6 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 61f079475a..ae5fc406e2 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index fcbe49ffdf..542ebffa13 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index aeb4303600..99ccd406e8 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.2.2 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.2 +- @tiptap/pm@3.2.2 +- @tiptap/react@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index e4581e41e1..e581d2afbc 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index bddc68d549..1768cf27b0 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.2.2 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.2 +- @tiptap/pm@3.2.2 +- @tiptap/vue-2@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index f0ff9098e0..3493279913 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 0cd0189449..69c800db2e 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.2.2 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.2.2 +- @tiptap/pm@3.2.2 +- @tiptap/vue-3@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 95724fb10e..29c1760253 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 16a8778b92..97598eb9ef 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/extension-collaboration@3.2.2 +- @tiptap/extension-node-range@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 6e6190e3dc..57fb26e2bb 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 35f78e032b..3cffcf9141 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 +- @tiptap/suggestion@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 7feff4c826..0fb7f5b4e4 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 8928e143ac..5057875bcb 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/extension-text-style@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 848f40548f..8aaf7024c9 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index a46f8b9ba4..8c2762ceee 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index d21fe4c2b0..ae0a43e557 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 1c334fd602..fff56a839a 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-text-style@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index e296d0d361..294f5485ee 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index a61559a22a..7add57d24f 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 7df5400722..f12b171d2b 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 97dcca2577..aa6ec782c2 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index b1dc90566a..9e0ac5bce9 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index b784883e83..4d0bbbb79e 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 0021669dc2..c342c65b75 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 93d537b735..a294bbdb93 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index fb705ff1b6..cc82fce8f2 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 9cc404dd8e..df20e6d66e 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index df91339007..f29c0dad25 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index a393a81577..8e4c4ac8dc 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/extension-text-style@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index fb638486ed..3857299b63 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 39274914d0..0ba5221eb2 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 1a85c40ec3..f90cb06c99 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 6e4bc37c32..062d98cf0c 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 6d461da548..5fcbb2f229 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 6247b32878..5d5151883c 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 2e541b950d..832be59ac5 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 4fd678a18b..2d8191d958 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 2bee3891c3..bff5b9a8eb 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 312e317f86..3d935c6fa6 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 +- @tiptap/suggestion@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 136d4bc452..88f1bb2c9b 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 487c0cf7d9..fb8924de47 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index cab688c157..a54d6b7be1 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 206a690097..4bebcf3560 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-list@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 413f599763..063b8e6533 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index f732095750..1be5ef3445 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 9668d7bddf..0318719b9a 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 2203267cac..a4c967b7f7 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index a5363def2a..ecdc797601 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 55aca6d300..3931053b0f 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 3e280b6ab8..981f82ffd1 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 7ea824dd02..5c0223c238 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 859290ee47..117a8531ff 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 787180f201..6acfb1dcbf 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 1c12d9ee1d..beaf2ffa48 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index c2f960bee8..1b95dcea20 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 7ed5e0b7d7..008447114b 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index e6ba7e1519..61b1a6d92f 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index e6f70c0a8f..57d6011480 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 19be9a65c7..fee3bccc7b 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 6029db9a56..53e5cea02d 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index dd651cd32a..88c7bc716c 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index d3720ef345..5b75e96821 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 11b1fa38ee..1ba197ea19 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 1c68562202..18b53c567c 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 2dbe6305a3..b45bcb7bb0 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index a7e27c5b78..a6580b88b6 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index bd01362207..2b5142d9d4 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,24 @@ # @tiptap/extension-unique-id +## 3.2.2 + +### Patch Changes + +- 1cab7ff: Change the `generateID` option to accept a context object: `{ node, pos }`. + + This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. + + The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: + + ``` + editor.use(UniqueID, { + generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, + }) + ``` + + - @tiptap/core@3.2.2 + - @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 4acaf44755..9bce1d3f30 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 1ea5525188..cc050ce1de 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index a7642ff201..656555a400 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index fab0fdb1ac..996f11d2d0 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 916c0988d8..e7deec648e 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index e2ca4cc25c..6d356a8751 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 257d91d45c..609ab4d2f8 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index fc9c33cc65..d380e886a4 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.2.2 + ## 3.2.1 ## 3.2.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index f208f8e41d..99bba8b8b2 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 10d93d3417..d65b60fd5e 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index fbdb54c305..3f97013bff 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index b5b0ddff16..19f8cdd837 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.2.2 +- @tiptap/extension-gapcursor@3.2.2 +- @tiptap/extension-list-item@3.2.2 +- @tiptap/extension-list-keymap@3.2.2 +- @tiptap/core@3.2.2 +- @tiptap/extension-blockquote@3.2.2 +- @tiptap/extension-bold@3.2.2 +- @tiptap/extension-bullet-list@3.2.2 +- @tiptap/extension-code@3.2.2 +- @tiptap/extension-code-block@3.2.2 +- @tiptap/extension-document@3.2.2 +- @tiptap/extension-hard-break@3.2.2 +- @tiptap/extension-heading@3.2.2 +- @tiptap/extension-horizontal-rule@3.2.2 +- @tiptap/extension-italic@3.2.2 +- @tiptap/extension-link@3.2.2 +- @tiptap/extension-list@3.2.2 +- @tiptap/extension-ordered-list@3.2.2 +- @tiptap/extension-paragraph@3.2.2 +- @tiptap/extension-strike@3.2.2 +- @tiptap/extension-text@3.2.2 +- @tiptap/extension-underline@3.2.2 +- @tiptap/extensions@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index b2025e33a4..6667856bca 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 90c34c8253..5509f9b69a 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 17d32f1ba5..a82758b48e 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 7bf0c6fc9e..22e2882b34 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 1056ea8b6e..e4c0fd4d05 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 14021bb232..ae5bd6e31e 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 5d3dac9b71..f346d0d777 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index a6024f109e..0a79413387 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.2.2 + +### Patch Changes + +- @tiptap/core@3.2.2 +- @tiptap/pm@3.2.2 + ## 3.2.1 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index dbd6c03f81..cebd93aa4f 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.2.1", + "version": "3.2.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From e11d1130571edfca977f19119f816db9d67f4770 Mon Sep 17 00:00:00 2001 From: bdbch Date: Fri, 22 Aug 2025 14:06:54 +0200 Subject: [PATCH 320/629] update CHANGELOG.md --- packages/extension-unique-id/CHANGELOG.md | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 2b5142d9d4..eed74bae4d 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -8,13 +8,7 @@ This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. - The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: - - ``` - editor.use(UniqueID, { - generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, - }) - ``` + The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. - @tiptap/core@3.2.2 - @tiptap/pm@3.2.2 From d146cc4be63c320ef0f4526b870c7b2a476ac857 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 23 Aug 2025 14:34:37 +0200 Subject: [PATCH 321/629] fix(core): make input and paste rules respect extension priority (#6832) * fix(core): make input and paste rules respect extension priority by registering them per-extension * fix(core): streamline plugin creation for input and paste rules --- .changeset/input-rules-respect-priority.md | 36 ++++++++++++++++++++ packages/core/src/ExtensionManager.ts | 38 ++++++++++++---------- 2 files changed, 56 insertions(+), 18 deletions(-) create mode 100644 .changeset/input-rules-respect-priority.md diff --git a/.changeset/input-rules-respect-priority.md b/.changeset/input-rules-respect-priority.md new file mode 100644 index 0000000000..5255832d2e --- /dev/null +++ b/.changeset/input-rules-respect-priority.md @@ -0,0 +1,36 @@ +--- +"@tiptap/core": minor +--- + +Make input rules and paste rules respect extension `priority` by registering +them per-extension instead of aggregating them into a single global plugin. + +Why +--- +Previously all `addInputRules()` and `addPasteRules()` were gathered into one +global plugin which ran before the other plugins. That caused conflicts where +some extensions (for example mention/suggestion with `#`) could not preempt the +built-in heading input rule. + +What changed +--- +- Input and paste rules are now created and registered at the position of the + owning extension. This makes their execution order follow the extension + sorting/`priority` mechanism. +- Behavior is more predictable: extensions with higher `priority` can now take + precedence over lower priority extensions' input/paste rules. + +Migration & compatibility +--- +- This is a behavioral change. If you relied on the old global ordering (input + rules always running before other plugins), you may observe different + outcomes. In most cases this is desirable and fixes conflicts (like the + `#` mention vs. heading shortcut), but be aware of the change. +- If you need to force the previous behavior for a specific rule, you can: + - Register the rule as a ProseMirror plugin via `addProseMirrorPlugins()` on + the extension and place it where you want it to run. + - Adjust the extension `priority` value so the extension sits earlier or + later in the ordering. + +If you have any questions or see regressions after upgrading, please open an +issue with a small repro and we'll help triage. diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts index 0810c7b62d..f571cd624c 100644 --- a/packages/core/src/ExtensionManager.ts +++ b/packages/core/src/ExtensionManager.ts @@ -18,10 +18,8 @@ import { splitExtensions, } from './helpers/index.js' import { type MarkConfig, type NodeConfig, type Storage, getMarkType, updateMarkViewAttributes } from './index.js' -import type { InputRule } from './InputRule.js' import { inputRulesPlugin } from './InputRule.js' import { Mark } from './Mark.js' -import type { PasteRule } from './PasteRule.js' import { pasteRulesPlugin } from './PasteRule.js' import type { AnyConfig, Extensions, RawCommands } from './types.js' import { callOrReturn } from './utilities/callOrReturn.js' @@ -89,9 +87,6 @@ export class ExtensionManager { // based on the `priority` option. const extensions = sortExtensions([...this.extensions].reverse()) - const inputRules: InputRule[] = [] - const pasteRules: PasteRule[] = [] - const allPlugins = extensions .map(extension => { const context = { @@ -134,13 +129,30 @@ export class ExtensionManager { const addInputRules = getExtensionField(extension, 'addInputRules', context) if (isExtensionRulesEnabled(extension, editor.options.enableInputRules) && addInputRules) { - inputRules.push(...addInputRules()) + const rules = addInputRules() + + if (rules && rules.length) { + const inputResult = inputRulesPlugin({ + editor, + rules, + }) + + const inputPlugins = Array.isArray(inputResult) ? inputResult : [inputResult] + + plugins.push(...inputPlugins) + } } const addPasteRules = getExtensionField(extension, 'addPasteRules', context) if (isExtensionRulesEnabled(extension, editor.options.enablePasteRules) && addPasteRules) { - pasteRules.push(...addPasteRules()) + const rules = addPasteRules() + + if (rules && rules.length) { + const pasteRules = pasteRulesPlugin({ editor, rules }) + + plugins.push(...pasteRules) + } } const addProseMirrorPlugins = getExtensionField( @@ -159,17 +171,7 @@ export class ExtensionManager { }) .flat() - return [ - inputRulesPlugin({ - editor, - rules: inputRules, - }), - ...pasteRulesPlugin({ - editor, - rules: pasteRules, - }), - ...allPlugins, - ] + return allPlugins } /** From 9ba5ec3fb58f6777e5ee9918812372b3e09648e3 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 23 Aug 2025 15:25:16 +0200 Subject: [PATCH 322/629] fix(core): improve paste rule handling and guard against empty ranges (#6829) * fix(core): improve paste rule handling and guard against empty ranges * Update packages/core/src/PasteRule.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix(core): enhance paste rule handling to skip non-textual nodes * fix(core): improve node validation in paste rule processing * fix text retrieval logic --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- ...iendly-pancakes-fix-paste-rule-nodeview.md | 14 +++++++++++ packages/core/src/PasteRule.ts | 23 ++++++++++++++++--- 2 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 .changeset/friendly-pancakes-fix-paste-rule-nodeview.md diff --git a/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md b/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md new file mode 100644 index 0000000000..e5a6c55e07 --- /dev/null +++ b/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md @@ -0,0 +1,14 @@ +--- +"@tiptap/core": patch +--- + +Fix paste rule handling for node views and defensively guard empty ranges. + +This patch ensures paste rules can correctly inspect node content when +node-specific size metadata (`nodeSize`) is present, falling back to +`node.content.size` when needed. It also skips empty or invalid node ranges +before calling `textBetween`, preventing runtime errors originating from +internal Fragment/Node traversals (for example: "Cannot read properties of +undefined (reading 'nodeSize')"). + +The change is a defensive bugfix; it does not change public APIs. diff --git a/packages/core/src/PasteRule.ts b/packages/core/src/PasteRule.ts index d4877aff6a..7e6ffa1026 100644 --- a/packages/core/src/PasteRule.ts +++ b/packages/core/src/PasteRule.ts @@ -112,13 +112,30 @@ function run(config: { const handlers: (void | null)[] = [] state.doc.nodesBetween(from, to, (node, pos) => { - if (!node.isTextblock || node.type.spec.code) { + // Skip code blocks and non-textual nodes. + // Be defensive: `node` may be a Fragment without a `type`. Only text, + // inline, or textblock nodes are processed by paste rules. + if (node.type?.spec?.code || !(node.isText || node.isTextblock || node.isInline)) { return } + // For textblock and inline/text nodes, compute the range relative to the node. + // Prefer `node.nodeSize` when available (some Node shapes expose this), + // otherwise fall back to `node.content?.size`. Default to 0 if neither exists. + const contentSize = node.content?.size ?? node.nodeSize ?? 0 const resolvedFrom = Math.max(from, pos) - const resolvedTo = Math.min(to, pos + node.content.size) - const textToMatch = node.textBetween(resolvedFrom - pos, resolvedTo - pos, undefined, '\ufffc') + const resolvedTo = Math.min(to, pos + contentSize) + + // If the resolved range is empty or invalid for this node, skip it. This + // avoids calling `textBetween` with start > end which can cause internal + // Fragment/Node traversal to access undefined `nodeSize` values. + if (resolvedFrom >= resolvedTo) { + return + } + + const textToMatch = node.isText + ? node.text || '' + : node.textBetween(resolvedFrom - pos, resolvedTo - pos, undefined, '\ufffc') const matches = pasteRuleMatcherHandler(textToMatch, rule.find, pasteEvent) From 0a916d97bd83df9f94f0eb08e949a5d6a5499d3a Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 23 Aug 2025 16:06:23 +0200 Subject: [PATCH 323/629] feat(suggestion): add safe API to exit suggestions (#6833) * feat(suggestion): add safe API to exit suggestions and remove decorations * fix(renderer): ensure ReactRenderer.destroy() removes DOM element to prevent leaks * fix(suggestion): improve click handler management to prevent memory leaks * fix(suggestion): refactor clientRect handling to improve performance and reduce DOM lookups --- .changeset/add-exit-meta-to-suggestion.md | 10 + ...emove-react-renderer-element-on-destroy.md | 8 + .../Examples/MultiMention/React/styles.scss | 35 ++++ packages/react/src/ReactRenderer.tsx | 10 + packages/suggestion/src/index.ts | 4 +- packages/suggestion/src/suggestion.ts | 194 ++++++++++++++++-- 6 files changed, 247 insertions(+), 14 deletions(-) create mode 100644 .changeset/add-exit-meta-to-suggestion.md create mode 100644 .changeset/remove-react-renderer-element-on-destroy.md diff --git a/.changeset/add-exit-meta-to-suggestion.md b/.changeset/add-exit-meta-to-suggestion.md new file mode 100644 index 0000000000..fcb54890d2 --- /dev/null +++ b/.changeset/add-exit-meta-to-suggestion.md @@ -0,0 +1,10 @@ +--- +"@tiptap/suggestion": patch +--- + +Add a safe API to exit suggestions and remove decorations. + +- Dispatching a metadata-only transaction with `{ exit: true }` will now reliably deactivate the suggestion plugin and remove inline decorations. +- Pressing Escape now triggers renderer.onExit and dispatches the exit meta, so suggestions close immediately without needing document edits. +- Clicking outside the editor will also close active suggestions. +- Exported `exitSuggestion(view, pluginKey?)` helper to programmatically close suggestions safely. diff --git a/.changeset/remove-react-renderer-element-on-destroy.md b/.changeset/remove-react-renderer-element-on-destroy.md new file mode 100644 index 0000000000..2b44bed124 --- /dev/null +++ b/.changeset/remove-react-renderer-element-on-destroy.md @@ -0,0 +1,8 @@ +--- +"@tiptap/react": patch +--- + +Ensure `ReactRenderer.destroy()` removes the renderer DOM element when present. + +- When consumers append a `ReactRenderer`'s `.element` to the DOM (for example many demos append it to `document.body`), previously calling `destroy()` removed the portal renderer but left the DOM node in place which could lead to accumulating `.react-renderer` elements. +- `destroy()` now also removes the element from its parent node if present, preventing leaked DOM nodes / React roots. diff --git a/demos/src/Examples/MultiMention/React/styles.scss b/demos/src/Examples/MultiMention/React/styles.scss index 10fcd73b2a..ef91d9b9ba 100644 --- a/demos/src/Examples/MultiMention/React/styles.scss +++ b/demos/src/Examples/MultiMention/React/styles.scss @@ -14,4 +14,39 @@ content: '\200B'; } } + + /* Suggestion inline decoration styles (created by @tiptap/suggestion) + Visible highlight to help see the active suggestion range in demos */ + [data-decoration-id] { + /* Reuse theme variables from demos setup for consistent look */ + background-color: var(--purple-light); + border-bottom: 2px dashed var(--purple-contrast); + border-radius: 0.2rem; + padding: 0 0.18rem; + box-decoration-break: clone; + } + + /* When the decoration is empty (no query), add a subtle hint */ + [data-decoration-id].is-empty::after { + content: '\00A0'; + border-bottom: 1px dotted var(--gray-3); + } + + /* Make suggestion decoration visually match mention nodes */ + .suggestion { + background-color: var(--purple-light); + border-radius: 0.4rem; + box-decoration-break: clone; + color: var(--purple); + padding: 0.1rem 0.3rem; + } + + .suggestion::after { + content: '\200B'; + } + + .suggestion.is-empty::after { + content: '\00A0'; + border-bottom: 1px dotted rgba(31, 41, 55, 0.12); + } } diff --git a/packages/react/src/ReactRenderer.tsx b/packages/react/src/ReactRenderer.tsx index 5ff9de26f0..b9c584ca09 100644 --- a/packages/react/src/ReactRenderer.tsx +++ b/packages/react/src/ReactRenderer.tsx @@ -242,6 +242,16 @@ export class ReactRenderer = object> const editor = this.editor as EditorWithContentComponent editor?.contentComponent?.removeRenderer(this.id) + // If the consumer appended the element to the document (for example + // many demos append the renderer element to document.body), make sure + // we remove it here to avoid leaking DOM nodes / React roots. + try { + if (this.element && this.element.parentNode) { + this.element.parentNode.removeChild(this.element) + } + } catch { + // ignore DOM removal errors + } } /** diff --git a/packages/suggestion/src/index.ts b/packages/suggestion/src/index.ts index 4f760332c5..0327039d21 100644 --- a/packages/suggestion/src/index.ts +++ b/packages/suggestion/src/index.ts @@ -1,6 +1,8 @@ -import { Suggestion } from './suggestion.js' +import { exitSuggestion, Suggestion } from './suggestion.js' export * from './findSuggestionMatch.js' export * from './suggestion.js' +export { exitSuggestion } + export default Suggestion diff --git a/packages/suggestion/src/suggestion.ts b/packages/suggestion/src/suggestion.ts index 6ba5b5114d..35c2440e9c 100644 --- a/packages/suggestion/src/suggestion.ts +++ b/packages/suggestion/src/suggestion.ts @@ -6,6 +6,11 @@ import { Decoration, DecorationSet } from '@tiptap/pm/view' import { findSuggestionMatch as defaultFindSuggestionMatch } from './findSuggestionMatch.js' +// Track document click handlers per EditorView instance to avoid accidental +// leaks when multiple editors are created/destroyed. WeakMap ensures handlers +// don't keep views alive. +const clickHandlerMap: WeakMap void> = new WeakMap() + export interface SuggestionOptions { /** * The plugin key for the suggestion plugin. @@ -205,10 +210,109 @@ export function Suggestion({ let props: SuggestionProps | undefined const renderer = render?.() + // Helper to create a clientRect callback for a given decoration node. + // Returns null when no decoration node is present. Uses the pluginKey's + // state to resolve the current decoration node on demand, avoiding a + // duplicated implementation in multiple places. + const clientRectFor = (view: EditorView, decorationNode: Element | null) => { + if (!decorationNode) { + return null + } + + return () => { + const state = pluginKey.getState(editor.state) + const decorationId = state?.decorationId + const currentDecorationNode = view.dom.querySelector(`[data-decoration-id="${decorationId}"]`) + + return currentDecorationNode?.getBoundingClientRect() || null + } + } + // small helper used internally by the view to dispatch an exit + function dispatchExit(view: EditorView, pluginKeyRef: PluginKey) { + try { + // Try to call renderer.onExit so consumer renderers (for example the + // demos' ReactRenderer) can clean up and unmount immediately. This + // covers paths where we only dispatch a metadata transaction (like + // click-outside) and ensures we don't leak DOM nodes / React roots. + const state = pluginKey.getState(view.state) + const decorationNode = state?.decorationId + ? view.dom.querySelector(`[data-decoration-id="${state.decorationId}"]`) + : null + + const exitProps: SuggestionProps = { + // @ts-ignore editor is available in closure + editor, + range: state?.range || { from: 0, to: 0 }, + query: state?.query || null, + text: state?.text || null, + items: [], + command: commandProps => { + return command({ editor, range: state?.range || { from: 0, to: 0 }, props: commandProps as any }) + }, + decorationNode, + clientRect: clientRectFor(view, decorationNode), + } + + renderer?.onExit?.(exitProps) + } catch { + // ignore errors from consumer renderers + } + + const tr = view.state.tr.setMeta(pluginKeyRef, { exit: true }) + // Dispatch a metadata-only transaction to signal the plugin to exit + view.dispatch(tr) + } + const plugin: Plugin = new Plugin({ key: pluginKey, - view() { + view(editorView: EditorView) { + const ensureClickHandler = (view: EditorView) => { + if (clickHandlerMap.has(view)) { + return + } + + const handler = (event: MouseEvent) => { + if (!props) { + return + } + + const decorationNode = props.decorationNode + const target = event.target as Element | null + + if (!decorationNode) { + return + } + + if (target && decorationNode.contains(target)) { + return + } + + if (target && view.dom.contains(target)) { + return + } + + if (target && target.closest && target.closest('.react-renderer')) { + return + } + + dispatchExit(view, pluginKey) + } + + document.addEventListener('mousedown', handler, true) + clickHandlerMap.set(view, handler) + } + + const removeClickHandler = (view: EditorView) => { + const handler = clickHandlerMap.get(view) + if (!handler) { + return + } + + document.removeEventListener('mousedown', handler, true) + clickHandlerMap.delete(view) + } + return { update: async (view, prevState) => { const prev = this.key?.getState(prevState) @@ -246,17 +350,7 @@ export function Suggestion({ }) }, decorationNode, - // virtual node for positioning - // this can be used for building popups without a DOM node - clientRect: decorationNode - ? () => { - // because of `items` can be asynchrounous we’ll search for the current decoration node - const { decorationId } = this.key?.getState(editor.state) // eslint-disable-line - const currentDecorationNode = view.dom.querySelector(`[data-decoration-id="${decorationId}"]`) - - return currentDecorationNode?.getBoundingClientRect() || null - } - : null, + clientRect: clientRectFor(view, decorationNode), } if (handleStart) { @@ -285,9 +379,18 @@ export function Suggestion({ if (handleStart) { renderer?.onStart?.(props) } + + // Install / remove click handler depending on suggestion active state + if (next.active) { + ensureClickHandler(view) + } else { + removeClickHandler(editorView) + } }, destroy: () => { + removeClickHandler(editorView) + if (!props) { return } @@ -329,6 +432,21 @@ export function Suggestion({ const { empty, from } = selection const next = { ...prev } + // If a transaction carries the exit meta for this plugin, immediately + // deactivate the suggestion. This allows metadata-only transactions + // (dispatched by escape or programmatic exit) to deterministically + // clear decorations without changing the document. + const meta = transaction.getMeta(pluginKey) + if (meta && meta.exit) { + next.active = false + next.decorationId = null + next.range = { from: 0, to: 0 } + next.query = null + next.text = null + + return next + } + next.composing = composing // We can only be suggesting if the view is editable, and: @@ -394,7 +512,47 @@ export function Suggestion({ return false } - return renderer?.onKeyDown?.({ view, event, range }) || false + // If Escape is pressed, call onExit and dispatch a metadata-only + // transaction to unset the suggestion state. This provides a safe + // and deterministic way to exit the suggestion without altering the + // document (avoids transaction mapping/mismatch issues). + if (event.key === 'Escape' || event.key === 'Esc') { + const state = plugin.getState(view.state) + const cachedNode = props?.decorationNode ?? null + const decorationNode = + cachedNode ?? + (state?.decorationId ? view.dom.querySelector(`[data-decoration-id="${state.decorationId}"]`) : null) + + const exitProps: SuggestionProps = { + editor, + range: state.range, + query: state.query, + text: state.text, + items: [], + command: commandProps => { + return command({ editor, range: state.range, props: commandProps as any }) + }, + decorationNode, + // If we have a cached decoration node, use it for the clientRect + // to avoid another DOM lookup. If not, leave clientRect null and + // let consumer decide if they want to query. + clientRect: decorationNode + ? () => { + return decorationNode.getBoundingClientRect() || null + } + : null, + } + + renderer?.onExit?.(exitProps) + + // dispatch metadata-only transaction to unset the plugin state + dispatchExit(view, pluginKey) + + return true + } + + const handled = renderer?.onKeyDown?.({ view, event, range }) || false + return handled }, // Setup decorator on the currently active suggestion. @@ -426,3 +584,13 @@ export function Suggestion({ return plugin } + +/** + * Programmatically exit a suggestion plugin by dispatching a metadata-only + * transaction. This is the safe, recommended API to remove suggestion + * decorations without touching the document or causing mapping errors. + */ +export function exitSuggestion(view: EditorView, pluginKeyRef: PluginKey = SuggestionPluginKey) { + const tr = view.state.tr.setMeta(pluginKeyRef, { exit: true }) + view.dispatch(tr) +} From 5423726741312e78e13d6bf356e6934538da0f95 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 23 Aug 2025 16:26:03 +0200 Subject: [PATCH 324/629] Develop to Main (#6862) * fix(demos/marks-link): use useEditorState in React demo to fix isActive lag (#6626) (#6827) Replace direct calls to editor.isActive('link') with a reactive selector via useEditorState so the Set/Unset link buttons reflect the current active state immediately in React demos. Matches Vue behaviour and prevents the 'one render behind' issue reported in #6626. * fix(tests): update test for empty paragraph rendering in md-string.spec.ts (#6830) * Fix: generateHTML on server (#6803) * fix(package): update exports to include browser and node specific paths * fix(package): correct structure of exports in package.json * fix(package): add missing import types definition in exports * feat(unique-id): add node parameter to generateID (#6858) * feat(unique-id): add node parameter to generateID for improved ID generation * Update add-node-param-to-generate-id.md * feat(unique-id): update generateID to accept context object for enhanced ID generation * fix(core): make input and paste rules respect extension priority (#6832) * fix(core): make input and paste rules respect extension priority by registering them per-extension * fix(core): streamline plugin creation for input and paste rules * fix(core): improve paste rule handling and guard against empty ranges (#6829) * fix(core): improve paste rule handling and guard against empty ranges * Update packages/core/src/PasteRule.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix(core): enhance paste rule handling to skip non-textual nodes * fix(core): improve node validation in paste rule processing * fix text retrieval logic --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * feat(suggestion): add safe API to exit suggestions (#6833) * feat(suggestion): add safe API to exit suggestions and remove decorations * fix(renderer): ensure ReactRenderer.destroy() removes DOM element to prevent leaks * fix(suggestion): improve click handler management to prevent memory leaks * fix(suggestion): refactor clientRect handling to improve performance and reduce DOM lookups --------- Co-authored-by: Max <59724861+oxymc@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/add-exit-meta-to-suggestion.md | 10 + .changeset/add-node-param-to-generate-id.md | 15 ++ ...iendly-pancakes-fix-paste-rule-nodeview.md | 14 ++ .changeset/input-rules-respect-priority.md | 36 ++++ ...emove-react-renderer-element-on-destroy.md | 8 + .../Examples/MultiMention/React/styles.scss | 35 ++++ packages/core/src/ExtensionManager.ts | 38 ++-- packages/core/src/PasteRule.ts | 23 ++- packages/react/src/ReactRenderer.tsx | 10 + packages/suggestion/src/index.ts | 4 +- packages/suggestion/src/suggestion.ts | 194 ++++++++++++++++-- 11 files changed, 352 insertions(+), 35 deletions(-) create mode 100644 .changeset/add-exit-meta-to-suggestion.md create mode 100644 .changeset/add-node-param-to-generate-id.md create mode 100644 .changeset/friendly-pancakes-fix-paste-rule-nodeview.md create mode 100644 .changeset/input-rules-respect-priority.md create mode 100644 .changeset/remove-react-renderer-element-on-destroy.md diff --git a/.changeset/add-exit-meta-to-suggestion.md b/.changeset/add-exit-meta-to-suggestion.md new file mode 100644 index 0000000000..fcb54890d2 --- /dev/null +++ b/.changeset/add-exit-meta-to-suggestion.md @@ -0,0 +1,10 @@ +--- +"@tiptap/suggestion": patch +--- + +Add a safe API to exit suggestions and remove decorations. + +- Dispatching a metadata-only transaction with `{ exit: true }` will now reliably deactivate the suggestion plugin and remove inline decorations. +- Pressing Escape now triggers renderer.onExit and dispatches the exit meta, so suggestions close immediately without needing document edits. +- Clicking outside the editor will also close active suggestions. +- Exported `exitSuggestion(view, pluginKey?)` helper to programmatically close suggestions safely. diff --git a/.changeset/add-node-param-to-generate-id.md b/.changeset/add-node-param-to-generate-id.md new file mode 100644 index 0000000000..053a6d2274 --- /dev/null +++ b/.changeset/add-node-param-to-generate-id.md @@ -0,0 +1,15 @@ +--- +"@tiptap/extension-unique-id": patch +--- + +Change the `generateID` option to accept a context object: `{ node, pos }`. + +This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. + +The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: + +``` +editor.use(UniqueID, { + generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, +}) +``` diff --git a/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md b/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md new file mode 100644 index 0000000000..e5a6c55e07 --- /dev/null +++ b/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md @@ -0,0 +1,14 @@ +--- +"@tiptap/core": patch +--- + +Fix paste rule handling for node views and defensively guard empty ranges. + +This patch ensures paste rules can correctly inspect node content when +node-specific size metadata (`nodeSize`) is present, falling back to +`node.content.size` when needed. It also skips empty or invalid node ranges +before calling `textBetween`, preventing runtime errors originating from +internal Fragment/Node traversals (for example: "Cannot read properties of +undefined (reading 'nodeSize')"). + +The change is a defensive bugfix; it does not change public APIs. diff --git a/.changeset/input-rules-respect-priority.md b/.changeset/input-rules-respect-priority.md new file mode 100644 index 0000000000..5255832d2e --- /dev/null +++ b/.changeset/input-rules-respect-priority.md @@ -0,0 +1,36 @@ +--- +"@tiptap/core": minor +--- + +Make input rules and paste rules respect extension `priority` by registering +them per-extension instead of aggregating them into a single global plugin. + +Why +--- +Previously all `addInputRules()` and `addPasteRules()` were gathered into one +global plugin which ran before the other plugins. That caused conflicts where +some extensions (for example mention/suggestion with `#`) could not preempt the +built-in heading input rule. + +What changed +--- +- Input and paste rules are now created and registered at the position of the + owning extension. This makes their execution order follow the extension + sorting/`priority` mechanism. +- Behavior is more predictable: extensions with higher `priority` can now take + precedence over lower priority extensions' input/paste rules. + +Migration & compatibility +--- +- This is a behavioral change. If you relied on the old global ordering (input + rules always running before other plugins), you may observe different + outcomes. In most cases this is desirable and fixes conflicts (like the + `#` mention vs. heading shortcut), but be aware of the change. +- If you need to force the previous behavior for a specific rule, you can: + - Register the rule as a ProseMirror plugin via `addProseMirrorPlugins()` on + the extension and place it where you want it to run. + - Adjust the extension `priority` value so the extension sits earlier or + later in the ordering. + +If you have any questions or see regressions after upgrading, please open an +issue with a small repro and we'll help triage. diff --git a/.changeset/remove-react-renderer-element-on-destroy.md b/.changeset/remove-react-renderer-element-on-destroy.md new file mode 100644 index 0000000000..2b44bed124 --- /dev/null +++ b/.changeset/remove-react-renderer-element-on-destroy.md @@ -0,0 +1,8 @@ +--- +"@tiptap/react": patch +--- + +Ensure `ReactRenderer.destroy()` removes the renderer DOM element when present. + +- When consumers append a `ReactRenderer`'s `.element` to the DOM (for example many demos append it to `document.body`), previously calling `destroy()` removed the portal renderer but left the DOM node in place which could lead to accumulating `.react-renderer` elements. +- `destroy()` now also removes the element from its parent node if present, preventing leaked DOM nodes / React roots. diff --git a/demos/src/Examples/MultiMention/React/styles.scss b/demos/src/Examples/MultiMention/React/styles.scss index 10fcd73b2a..ef91d9b9ba 100644 --- a/demos/src/Examples/MultiMention/React/styles.scss +++ b/demos/src/Examples/MultiMention/React/styles.scss @@ -14,4 +14,39 @@ content: '\200B'; } } + + /* Suggestion inline decoration styles (created by @tiptap/suggestion) + Visible highlight to help see the active suggestion range in demos */ + [data-decoration-id] { + /* Reuse theme variables from demos setup for consistent look */ + background-color: var(--purple-light); + border-bottom: 2px dashed var(--purple-contrast); + border-radius: 0.2rem; + padding: 0 0.18rem; + box-decoration-break: clone; + } + + /* When the decoration is empty (no query), add a subtle hint */ + [data-decoration-id].is-empty::after { + content: '\00A0'; + border-bottom: 1px dotted var(--gray-3); + } + + /* Make suggestion decoration visually match mention nodes */ + .suggestion { + background-color: var(--purple-light); + border-radius: 0.4rem; + box-decoration-break: clone; + color: var(--purple); + padding: 0.1rem 0.3rem; + } + + .suggestion::after { + content: '\200B'; + } + + .suggestion.is-empty::after { + content: '\00A0'; + border-bottom: 1px dotted rgba(31, 41, 55, 0.12); + } } diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts index 0810c7b62d..f571cd624c 100644 --- a/packages/core/src/ExtensionManager.ts +++ b/packages/core/src/ExtensionManager.ts @@ -18,10 +18,8 @@ import { splitExtensions, } from './helpers/index.js' import { type MarkConfig, type NodeConfig, type Storage, getMarkType, updateMarkViewAttributes } from './index.js' -import type { InputRule } from './InputRule.js' import { inputRulesPlugin } from './InputRule.js' import { Mark } from './Mark.js' -import type { PasteRule } from './PasteRule.js' import { pasteRulesPlugin } from './PasteRule.js' import type { AnyConfig, Extensions, RawCommands } from './types.js' import { callOrReturn } from './utilities/callOrReturn.js' @@ -89,9 +87,6 @@ export class ExtensionManager { // based on the `priority` option. const extensions = sortExtensions([...this.extensions].reverse()) - const inputRules: InputRule[] = [] - const pasteRules: PasteRule[] = [] - const allPlugins = extensions .map(extension => { const context = { @@ -134,13 +129,30 @@ export class ExtensionManager { const addInputRules = getExtensionField(extension, 'addInputRules', context) if (isExtensionRulesEnabled(extension, editor.options.enableInputRules) && addInputRules) { - inputRules.push(...addInputRules()) + const rules = addInputRules() + + if (rules && rules.length) { + const inputResult = inputRulesPlugin({ + editor, + rules, + }) + + const inputPlugins = Array.isArray(inputResult) ? inputResult : [inputResult] + + plugins.push(...inputPlugins) + } } const addPasteRules = getExtensionField(extension, 'addPasteRules', context) if (isExtensionRulesEnabled(extension, editor.options.enablePasteRules) && addPasteRules) { - pasteRules.push(...addPasteRules()) + const rules = addPasteRules() + + if (rules && rules.length) { + const pasteRules = pasteRulesPlugin({ editor, rules }) + + plugins.push(...pasteRules) + } } const addProseMirrorPlugins = getExtensionField( @@ -159,17 +171,7 @@ export class ExtensionManager { }) .flat() - return [ - inputRulesPlugin({ - editor, - rules: inputRules, - }), - ...pasteRulesPlugin({ - editor, - rules: pasteRules, - }), - ...allPlugins, - ] + return allPlugins } /** diff --git a/packages/core/src/PasteRule.ts b/packages/core/src/PasteRule.ts index d4877aff6a..7e6ffa1026 100644 --- a/packages/core/src/PasteRule.ts +++ b/packages/core/src/PasteRule.ts @@ -112,13 +112,30 @@ function run(config: { const handlers: (void | null)[] = [] state.doc.nodesBetween(from, to, (node, pos) => { - if (!node.isTextblock || node.type.spec.code) { + // Skip code blocks and non-textual nodes. + // Be defensive: `node` may be a Fragment without a `type`. Only text, + // inline, or textblock nodes are processed by paste rules. + if (node.type?.spec?.code || !(node.isText || node.isTextblock || node.isInline)) { return } + // For textblock and inline/text nodes, compute the range relative to the node. + // Prefer `node.nodeSize` when available (some Node shapes expose this), + // otherwise fall back to `node.content?.size`. Default to 0 if neither exists. + const contentSize = node.content?.size ?? node.nodeSize ?? 0 const resolvedFrom = Math.max(from, pos) - const resolvedTo = Math.min(to, pos + node.content.size) - const textToMatch = node.textBetween(resolvedFrom - pos, resolvedTo - pos, undefined, '\ufffc') + const resolvedTo = Math.min(to, pos + contentSize) + + // If the resolved range is empty or invalid for this node, skip it. This + // avoids calling `textBetween` with start > end which can cause internal + // Fragment/Node traversal to access undefined `nodeSize` values. + if (resolvedFrom >= resolvedTo) { + return + } + + const textToMatch = node.isText + ? node.text || '' + : node.textBetween(resolvedFrom - pos, resolvedTo - pos, undefined, '\ufffc') const matches = pasteRuleMatcherHandler(textToMatch, rule.find, pasteEvent) diff --git a/packages/react/src/ReactRenderer.tsx b/packages/react/src/ReactRenderer.tsx index 5ff9de26f0..b9c584ca09 100644 --- a/packages/react/src/ReactRenderer.tsx +++ b/packages/react/src/ReactRenderer.tsx @@ -242,6 +242,16 @@ export class ReactRenderer = object> const editor = this.editor as EditorWithContentComponent editor?.contentComponent?.removeRenderer(this.id) + // If the consumer appended the element to the document (for example + // many demos append the renderer element to document.body), make sure + // we remove it here to avoid leaking DOM nodes / React roots. + try { + if (this.element && this.element.parentNode) { + this.element.parentNode.removeChild(this.element) + } + } catch { + // ignore DOM removal errors + } } /** diff --git a/packages/suggestion/src/index.ts b/packages/suggestion/src/index.ts index 4f760332c5..0327039d21 100644 --- a/packages/suggestion/src/index.ts +++ b/packages/suggestion/src/index.ts @@ -1,6 +1,8 @@ -import { Suggestion } from './suggestion.js' +import { exitSuggestion, Suggestion } from './suggestion.js' export * from './findSuggestionMatch.js' export * from './suggestion.js' +export { exitSuggestion } + export default Suggestion diff --git a/packages/suggestion/src/suggestion.ts b/packages/suggestion/src/suggestion.ts index 6ba5b5114d..35c2440e9c 100644 --- a/packages/suggestion/src/suggestion.ts +++ b/packages/suggestion/src/suggestion.ts @@ -6,6 +6,11 @@ import { Decoration, DecorationSet } from '@tiptap/pm/view' import { findSuggestionMatch as defaultFindSuggestionMatch } from './findSuggestionMatch.js' +// Track document click handlers per EditorView instance to avoid accidental +// leaks when multiple editors are created/destroyed. WeakMap ensures handlers +// don't keep views alive. +const clickHandlerMap: WeakMap void> = new WeakMap() + export interface SuggestionOptions { /** * The plugin key for the suggestion plugin. @@ -205,10 +210,109 @@ export function Suggestion({ let props: SuggestionProps | undefined const renderer = render?.() + // Helper to create a clientRect callback for a given decoration node. + // Returns null when no decoration node is present. Uses the pluginKey's + // state to resolve the current decoration node on demand, avoiding a + // duplicated implementation in multiple places. + const clientRectFor = (view: EditorView, decorationNode: Element | null) => { + if (!decorationNode) { + return null + } + + return () => { + const state = pluginKey.getState(editor.state) + const decorationId = state?.decorationId + const currentDecorationNode = view.dom.querySelector(`[data-decoration-id="${decorationId}"]`) + + return currentDecorationNode?.getBoundingClientRect() || null + } + } + // small helper used internally by the view to dispatch an exit + function dispatchExit(view: EditorView, pluginKeyRef: PluginKey) { + try { + // Try to call renderer.onExit so consumer renderers (for example the + // demos' ReactRenderer) can clean up and unmount immediately. This + // covers paths where we only dispatch a metadata transaction (like + // click-outside) and ensures we don't leak DOM nodes / React roots. + const state = pluginKey.getState(view.state) + const decorationNode = state?.decorationId + ? view.dom.querySelector(`[data-decoration-id="${state.decorationId}"]`) + : null + + const exitProps: SuggestionProps = { + // @ts-ignore editor is available in closure + editor, + range: state?.range || { from: 0, to: 0 }, + query: state?.query || null, + text: state?.text || null, + items: [], + command: commandProps => { + return command({ editor, range: state?.range || { from: 0, to: 0 }, props: commandProps as any }) + }, + decorationNode, + clientRect: clientRectFor(view, decorationNode), + } + + renderer?.onExit?.(exitProps) + } catch { + // ignore errors from consumer renderers + } + + const tr = view.state.tr.setMeta(pluginKeyRef, { exit: true }) + // Dispatch a metadata-only transaction to signal the plugin to exit + view.dispatch(tr) + } + const plugin: Plugin = new Plugin({ key: pluginKey, - view() { + view(editorView: EditorView) { + const ensureClickHandler = (view: EditorView) => { + if (clickHandlerMap.has(view)) { + return + } + + const handler = (event: MouseEvent) => { + if (!props) { + return + } + + const decorationNode = props.decorationNode + const target = event.target as Element | null + + if (!decorationNode) { + return + } + + if (target && decorationNode.contains(target)) { + return + } + + if (target && view.dom.contains(target)) { + return + } + + if (target && target.closest && target.closest('.react-renderer')) { + return + } + + dispatchExit(view, pluginKey) + } + + document.addEventListener('mousedown', handler, true) + clickHandlerMap.set(view, handler) + } + + const removeClickHandler = (view: EditorView) => { + const handler = clickHandlerMap.get(view) + if (!handler) { + return + } + + document.removeEventListener('mousedown', handler, true) + clickHandlerMap.delete(view) + } + return { update: async (view, prevState) => { const prev = this.key?.getState(prevState) @@ -246,17 +350,7 @@ export function Suggestion({ }) }, decorationNode, - // virtual node for positioning - // this can be used for building popups without a DOM node - clientRect: decorationNode - ? () => { - // because of `items` can be asynchrounous we’ll search for the current decoration node - const { decorationId } = this.key?.getState(editor.state) // eslint-disable-line - const currentDecorationNode = view.dom.querySelector(`[data-decoration-id="${decorationId}"]`) - - return currentDecorationNode?.getBoundingClientRect() || null - } - : null, + clientRect: clientRectFor(view, decorationNode), } if (handleStart) { @@ -285,9 +379,18 @@ export function Suggestion({ if (handleStart) { renderer?.onStart?.(props) } + + // Install / remove click handler depending on suggestion active state + if (next.active) { + ensureClickHandler(view) + } else { + removeClickHandler(editorView) + } }, destroy: () => { + removeClickHandler(editorView) + if (!props) { return } @@ -329,6 +432,21 @@ export function Suggestion({ const { empty, from } = selection const next = { ...prev } + // If a transaction carries the exit meta for this plugin, immediately + // deactivate the suggestion. This allows metadata-only transactions + // (dispatched by escape or programmatic exit) to deterministically + // clear decorations without changing the document. + const meta = transaction.getMeta(pluginKey) + if (meta && meta.exit) { + next.active = false + next.decorationId = null + next.range = { from: 0, to: 0 } + next.query = null + next.text = null + + return next + } + next.composing = composing // We can only be suggesting if the view is editable, and: @@ -394,7 +512,47 @@ export function Suggestion({ return false } - return renderer?.onKeyDown?.({ view, event, range }) || false + // If Escape is pressed, call onExit and dispatch a metadata-only + // transaction to unset the suggestion state. This provides a safe + // and deterministic way to exit the suggestion without altering the + // document (avoids transaction mapping/mismatch issues). + if (event.key === 'Escape' || event.key === 'Esc') { + const state = plugin.getState(view.state) + const cachedNode = props?.decorationNode ?? null + const decorationNode = + cachedNode ?? + (state?.decorationId ? view.dom.querySelector(`[data-decoration-id="${state.decorationId}"]`) : null) + + const exitProps: SuggestionProps = { + editor, + range: state.range, + query: state.query, + text: state.text, + items: [], + command: commandProps => { + return command({ editor, range: state.range, props: commandProps as any }) + }, + decorationNode, + // If we have a cached decoration node, use it for the clientRect + // to avoid another DOM lookup. If not, leave clientRect null and + // let consumer decide if they want to query. + clientRect: decorationNode + ? () => { + return decorationNode.getBoundingClientRect() || null + } + : null, + } + + renderer?.onExit?.(exitProps) + + // dispatch metadata-only transaction to unset the plugin state + dispatchExit(view, pluginKey) + + return true + } + + const handled = renderer?.onKeyDown?.({ view, event, range }) || false + return handled }, // Setup decorator on the currently active suggestion. @@ -426,3 +584,13 @@ export function Suggestion({ return plugin } + +/** + * Programmatically exit a suggestion plugin by dispatching a metadata-only + * transaction. This is the safe, recommended API to remove suggestion + * decorations without touching the document or causing mapping errors. + */ +export function exitSuggestion(view: EditorView, pluginKeyRef: PluginKey = SuggestionPluginKey) { + const tr = view.state.tr.setMeta(pluginKeyRef, { exit: true }) + view.dispatch(tr) +} From ba8d13fa83e17689b03a1fdee131fb870b0e4586 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 23 Aug 2025 16:29:11 +0200 Subject: [PATCH 325/629] chore(release): publish a new release version (#6863) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/add-exit-meta-to-suggestion.md | 10 ---- .changeset/add-node-param-to-generate-id.md | 15 ------ ...iendly-pancakes-fix-paste-rule-nodeview.md | 14 ----- .changeset/input-rules-respect-priority.md | 36 ------------- ...emove-react-renderer-element-on-destroy.md | 8 --- .../extension-character-count/CHANGELOG.md | 6 +++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 +++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 +++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 +++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 +++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 +++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 +++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 +++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 +++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 +++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 +++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 +++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 +++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 52 +++++++++++++++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 8 +++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 9 ++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 +++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 10 ++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 9 ++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 8 +++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 9 ++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 9 ++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 +++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 10 ++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 8 +++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 ++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 11 ++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 11 ++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 10 ++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 9 ++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 +++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 8 +++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 8 +++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 8 +++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 9 ++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 8 +++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 10 ++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 8 +++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 9 ++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 9 ++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 9 ++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 11 ++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 9 ++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 +++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 8 +++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 8 +++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 9 ++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 9 ++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 9 ++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 9 ++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 8 +++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 8 +++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 8 +++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 8 +++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 8 +++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 21 ++++++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 8 +++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 9 ++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 9 ++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 14 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 9 ++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 16 ++++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 9 ++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 9 ++++ packages/vue-3/package.json | 2 +- 143 files changed, 712 insertions(+), 152 deletions(-) delete mode 100644 .changeset/add-exit-meta-to-suggestion.md delete mode 100644 .changeset/add-node-param-to-generate-id.md delete mode 100644 .changeset/friendly-pancakes-fix-paste-rule-nodeview.md delete mode 100644 .changeset/input-rules-respect-priority.md delete mode 100644 .changeset/remove-react-renderer-element-on-destroy.md diff --git a/.changeset/add-exit-meta-to-suggestion.md b/.changeset/add-exit-meta-to-suggestion.md deleted file mode 100644 index fcb54890d2..0000000000 --- a/.changeset/add-exit-meta-to-suggestion.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -"@tiptap/suggestion": patch ---- - -Add a safe API to exit suggestions and remove decorations. - -- Dispatching a metadata-only transaction with `{ exit: true }` will now reliably deactivate the suggestion plugin and remove inline decorations. -- Pressing Escape now triggers renderer.onExit and dispatches the exit meta, so suggestions close immediately without needing document edits. -- Clicking outside the editor will also close active suggestions. -- Exported `exitSuggestion(view, pluginKey?)` helper to programmatically close suggestions safely. diff --git a/.changeset/add-node-param-to-generate-id.md b/.changeset/add-node-param-to-generate-id.md deleted file mode 100644 index 053a6d2274..0000000000 --- a/.changeset/add-node-param-to-generate-id.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -"@tiptap/extension-unique-id": patch ---- - -Change the `generateID` option to accept a context object: `{ node, pos }`. - -This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. - -The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: - -``` -editor.use(UniqueID, { - generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, -}) -``` diff --git a/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md b/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md deleted file mode 100644 index e5a6c55e07..0000000000 --- a/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Fix paste rule handling for node views and defensively guard empty ranges. - -This patch ensures paste rules can correctly inspect node content when -node-specific size metadata (`nodeSize`) is present, falling back to -`node.content.size` when needed. It also skips empty or invalid node ranges -before calling `textBetween`, preventing runtime errors originating from -internal Fragment/Node traversals (for example: "Cannot read properties of -undefined (reading 'nodeSize')"). - -The change is a defensive bugfix; it does not change public APIs. diff --git a/.changeset/input-rules-respect-priority.md b/.changeset/input-rules-respect-priority.md deleted file mode 100644 index 5255832d2e..0000000000 --- a/.changeset/input-rules-respect-priority.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -"@tiptap/core": minor ---- - -Make input rules and paste rules respect extension `priority` by registering -them per-extension instead of aggregating them into a single global plugin. - -Why ---- -Previously all `addInputRules()` and `addPasteRules()` were gathered into one -global plugin which ran before the other plugins. That caused conflicts where -some extensions (for example mention/suggestion with `#`) could not preempt the -built-in heading input rule. - -What changed ---- -- Input and paste rules are now created and registered at the position of the - owning extension. This makes their execution order follow the extension - sorting/`priority` mechanism. -- Behavior is more predictable: extensions with higher `priority` can now take - precedence over lower priority extensions' input/paste rules. - -Migration & compatibility ---- -- This is a behavioral change. If you relied on the old global ordering (input - rules always running before other plugins), you may observe different - outcomes. In most cases this is desirable and fixes conflicts (like the - `#` mention vs. heading shortcut), but be aware of the change. -- If you need to force the previous behavior for a specific rule, you can: - - Register the rule as a ProseMirror plugin via `addProseMirrorPlugins()` on - the extension and place it where you want it to run. - - Adjust the extension `priority` value so the extension sits earlier or - later in the ordering. - -If you have any questions or see regressions after upgrading, please open an -issue with a small repro and we'll help triage. diff --git a/.changeset/remove-react-renderer-element-on-destroy.md b/.changeset/remove-react-renderer-element-on-destroy.md deleted file mode 100644 index 2b44bed124..0000000000 --- a/.changeset/remove-react-renderer-element-on-destroy.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -"@tiptap/react": patch ---- - -Ensure `ReactRenderer.destroy()` removes the renderer DOM element when present. - -- When consumers append a `ReactRenderer`'s `.element` to the DOM (for example many demos append it to `document.body`), previously calling `destroy()` removed the portal renderer but left the DOM node in place which could lead to accumulating `.react-renderer` elements. -- `destroy()` now also removes the element from its parent node if present, preventing leaked DOM nodes / React roots. diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 943277cbf5..a3b10164f5 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extensions@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 44ac0cce58..7dc74946e9 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index be796b6e96..aab5da12a5 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extensions@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index f6e4a5e912..c6bda30684 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index fafe1682fe..7037cd8585 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extensions@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 282b883805..7d19d48fbf 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 9edb60b0d9..6e50b19173 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extensions@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index b0118c4cf3..965d592ab8 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index e1fe64726a..4a93abf053 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extensions@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index bb238d53ed..af82fc885c 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index ac4b7814e5..8429a0a245 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-list@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 469087096f..484097e60d 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index ea9e17ee2c..d8f743d67b 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-list@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 512e993a92..881eeddce7 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 30d7677e14..329b6da7a2 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extensions@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 83bff9ac9c..70ea6e599f 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index e1338bcebd..29fd650a92 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-table@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 6f3e71b486..b9f14d855e 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index a50048994f..7ee67e2112 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-table@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index ca039e52e0..8e83544fe2 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index cff04c1e16..13999696d7 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-table@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index d605925871..be309b9031 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 5cb46d83e1..b84a28fbd9 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-list@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 841402080c..edc42bd380 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 61b85dad2a..22c1b35eb5 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-list@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index a5a5710958..501942bea6 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 2dfc5f9e78..06f0c0c246 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,57 @@ # Change Log +## 3.3.0 + +### Minor Changes + +- 5423726: Make input rules and paste rules respect extension `priority` by registering + them per-extension instead of aggregating them into a single global plugin. + + ## Why + + Previously all `addInputRules()` and `addPasteRules()` were gathered into one + global plugin which ran before the other plugins. That caused conflicts where + some extensions (for example mention/suggestion with `#`) could not preempt the + built-in heading input rule. + + ## What changed + + - Input and paste rules are now created and registered at the position of the + owning extension. This makes their execution order follow the extension + sorting/`priority` mechanism. + - Behavior is more predictable: extensions with higher `priority` can now take + precedence over lower priority extensions' input/paste rules. + + ## Migration & compatibility + + - This is a behavioral change. If you relied on the old global ordering (input + rules always running before other plugins), you may observe different + outcomes. In most cases this is desirable and fixes conflicts (like the + `#` mention vs. heading shortcut), but be aware of the change. + - If you need to force the previous behavior for a specific rule, you can: + - Register the rule as a ProseMirror plugin via `addProseMirrorPlugins()` on + the extension and place it where you want it to run. + - Adjust the extension `priority` value so the extension sits earlier or + later in the ordering. + + If you have any questions or see regressions after upgrading, please open an + issue with a small repro and we'll help triage. + +### Patch Changes + +- 5423726: Fix paste rule handling for node views and defensively guard empty ranges. + + This patch ensures paste rules can correctly inspect node content when + node-specific size metadata (`nodeSize`) is present, falling back to + `node.content.size` when needed. It also skips empty or invalid node ranges + before calling `textBetween`, preventing runtime errors originating from + internal Fragment/Node traversals (for example: "Cannot read properties of + undefined (reading 'nodeSize')"). + + The change is a defensive bugfix; it does not change public APIs. + + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index ff5b0199e3..f595c7ee5a 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 0d85c81b8e..8a18db9daf 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 444bf66fb7..12e26dca9f 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index b9f080032f..495e0f0ccf 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index c5dc3d6c14..85bcde76da 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 7ab4bed347..28db0cf2af 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index ac94c14b3e..03bf7b65ce 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 1b18d0d910..cbbbe4e73f 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-list@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 5679f09037..595fcdf28d 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 2778db2e68..cbd7950855 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/extension-code-block@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 4c3179f61d..de1a052eb3 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index c63beb5e17..06aad2733d 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 820dfc2a3e..a1fa68b5f9 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 8a51a1a153..9af5ce67f7 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 1f1613347e..a21877fd74 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index aba3652d13..12efcb0ea0 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 609fc6317e..b73120bc60 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 3eb1d2be34..9f99a69cce 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 4533049608..4c15e2c8fd 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 73787c80e1..75983e09f5 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 50d03916a9..f9f7fb170b 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 2fce25aa9f..0a062b336f 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-details +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/extension-text-style@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index e2e095b8b6..6ddc8d89c0 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index ae5fc406e2..acdc2b3d21 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 542ebffa13..19f3cab0b2 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 99ccd406e8..fba6958a72 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] + - @tiptap/react@3.3.0 + - @tiptap/extension-drag-handle@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index e581d2afbc..78af1ea5c7 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 1768cf27b0..a04eb0843d 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.3.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.3.0 +- @tiptap/vue-2@3.3.0 +- @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 3493279913..8b1aee9e77 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 69c800db2e..cc0ad3d35d 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.3.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.3.0 +- @tiptap/vue-3@3.3.0 +- @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 29c1760253..43f6d99d74 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 97598eb9ef..0a345dfda5 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-drag-handle +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/extension-collaboration@3.3.0 + - @tiptap/extension-node-range@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 57fb26e2bb..dac6b241cf 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 3cffcf9141..8f31410ad1 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-emoji +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/suggestion@3.3.0 + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 0fb7f5b4e4..2c4fabbf31 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 5057875bcb..de1f133af5 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-file-handler +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/extension-text-style@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 8aaf7024c9..836bd84bad 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 8c2762ceee..a2e4c84ae4 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index ae0a43e557..190b2ae463 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index fff56a839a..890c6a4617 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 294f5485ee..36d7ab5821 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 7add57d24f..2ee5132e19 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index f12b171d2b..db34c7e47b 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index aa6ec782c2..b14bef5420 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 9e0ac5bce9..7fa036e436 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 4d0bbbb79e..14224bea85 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index c342c65b75..37f9b042a0 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index a294bbdb93..82118b9609 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index cc82fce8f2..1cf7776a8b 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index df20e6d66e..fec82cc25a 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index f29c0dad25..5f45e6c413 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 8e4c4ac8dc..5c678b598a 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-invisible-characters +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/extension-text-style@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 3857299b63..a9b0bd355b 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 0ba5221eb2..026b597985 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index f90cb06c99..305b5cd942 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 062d98cf0c..dc195b0f8b 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 5fcbb2f229..38ee63c223 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 5d5151883c..22c3ba7172 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 832be59ac5..06ac37d0a4 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 2d8191d958..f48793bb3a 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-mathematics +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index bff5b9a8eb..b953be775d 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 3d935c6fa6..92849f7293 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/suggestion@3.3.0 + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 88f1bb2c9b..df3e6b014c 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index fb8924de47..e110dcc6e9 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-node-range +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index a54d6b7be1..96d5c1ddce 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 4bebcf3560..0d418a4fe8 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- @tiptap/extension-list@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 063b8e6533..063adc588a 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 1be5ef3445..dbb8e17392 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 0318719b9a..76be16c058 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index a4c967b7f7..c12348ad9f 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index ecdc797601..c940468400 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 3931053b0f..ec50eac8ca 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 981f82ffd1..24400995d5 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 5c0223c238..da71a30132 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 117a8531ff..2efd097e98 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 6acfb1dcbf..f5e7a4d549 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-table-of-contents +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index beaf2ffa48..15edfe99c2 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 1b95dcea20..9cf5e8c2db 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 008447114b..5390b5c1a0 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 61b1a6d92f..82d359d441 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 57d6011480..e2e016db02 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index fee3bccc7b..3691ec8b10 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 53e5cea02d..5c5080dab5 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 88c7bc716c..20c15f135b 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 5b75e96821..b9bf068b9c 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 1ba197ea19..855b5f7cba 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 18b53c567c..93b2d8d548 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index b45bcb7bb0..645d00308c 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index a6580b88b6..e0652a802d 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index eed74bae4d..cd4cb52c05 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,26 @@ # @tiptap/extension-unique-id +## 3.3.0 + +### Patch Changes + +- 5423726: Change the `generateID` option to accept a context object: `{ node, pos }`. + + This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. + + The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: + + ``` + editor.use(UniqueID, { + generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, + }) + ``` + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 9bce1d3f30..982c8dea07 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index cc050ce1de..b83d63de34 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 656555a400..0b76c0054a 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 996f11d2d0..afcbb35ea9 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index e7deec648e..7eddd99354 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 6d356a8751..a4588b250c 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 609ab4d2f8..4d55d16d9a 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index d380e886a4..f31be27fe9 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.3.0 + ## 3.2.2 ## 3.2.1 diff --git a/packages/pm/package.json b/packages/pm/package.json index 99bba8b8b2..fa979d2d08 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index d65b60fd5e..26d34e99ad 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,19 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- 5423726: Ensure `ReactRenderer.destroy()` removes the renderer DOM element when present. + + - When consumers append a `ReactRenderer`'s `.element` to the DOM (for example many demos append it to `document.body`), previously calling `destroy()` removed the portal renderer but left the DOM node in place which could lead to accumulating `.react-renderer` elements. + - `destroy()` now also removes the element from its parent node if present, preventing leaked DOM nodes / React roots. + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 3f97013bff..6ca7f1072b 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 19f8cdd837..1e28213b73 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/extension-blockquote@3.3.0 + - @tiptap/extension-bold@3.3.0 + - @tiptap/extension-code@3.3.0 + - @tiptap/extension-code-block@3.3.0 + - @tiptap/extension-document@3.3.0 + - @tiptap/extension-hard-break@3.3.0 + - @tiptap/extension-heading@3.3.0 + - @tiptap/extension-horizontal-rule@3.3.0 + - @tiptap/extension-italic@3.3.0 + - @tiptap/extension-link@3.3.0 + - @tiptap/extension-list@3.3.0 + - @tiptap/extension-paragraph@3.3.0 + - @tiptap/extension-strike@3.3.0 + - @tiptap/extension-text@3.3.0 + - @tiptap/extension-underline@3.3.0 + - @tiptap/extensions@3.3.0 + - @tiptap/extension-list-item@3.3.0 + - @tiptap/extension-list-keymap@3.3.0 + - @tiptap/extension-bullet-list@3.3.0 + - @tiptap/extension-ordered-list@3.3.0 + - @tiptap/extension-dropcursor@3.3.0 + - @tiptap/extension-gapcursor@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 6667856bca..824764dde6 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 5509f9b69a..2a49c3e407 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index a82758b48e..355b02292b 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 22e2882b34..e9aebb52c1 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,21 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- 5423726: Add a safe API to exit suggestions and remove decorations. + + - Dispatching a metadata-only transaction with `{ exit: true }` will now reliably deactivate the suggestion plugin and remove inline decorations. + - Pressing Escape now triggers renderer.onExit and dispatches the exit meta, so suggestions close immediately without needing document edits. + - Clicking outside the editor will also close active suggestions. + - Exported `exitSuggestion(view, pluginKey?)` helper to programmatically close suggestions safely. + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index e4c0fd4d05..fff0b3af0b 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index ae5bd6e31e..f8e055a334 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index f346d0d777..78247b316e 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 0a79413387..a7ddc79ffe 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.3.0 + +### Patch Changes + +- Updated dependencies [5423726] +- Updated dependencies [5423726] + - @tiptap/core@3.3.0 + - @tiptap/pm@3.3.0 + ## 3.2.2 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index cebd93aa4f..6c5adeddee 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.2.2", + "version": "3.3.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 9e02c1284fd51f5643126783123e3d9b4e91bdfb Mon Sep 17 00:00:00 2001 From: DJ Johnson Date: Sat, 23 Aug 2025 21:40:54 +0700 Subject: [PATCH 326/629] fix: space after backticks should not create new code block (#6861) * fix: space after backticks should not create new code block * Fix code block insertion issue with backticks Prevent incorrect insertion of code marks when a space immediately follows backticks. --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/heavy-walls-accept.md | 5 +++++ demos/src/Marks/Code/React/index.spec.js | 11 +++++++++++ packages/extension-code/src/code.ts | 4 ++-- 3 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 .changeset/heavy-walls-accept.md diff --git a/.changeset/heavy-walls-accept.md b/.changeset/heavy-walls-accept.md new file mode 100644 index 0000000000..403fc04bf6 --- /dev/null +++ b/.changeset/heavy-walls-accept.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-code": patch +--- + +Prevent incorrect insertion of code marks when a space immediately follows backticks. diff --git a/demos/src/Marks/Code/React/index.spec.js b/demos/src/Marks/Code/React/index.spec.js index 0ebddc02f7..e31f1d5be2 100644 --- a/demos/src/Marks/Code/React/index.spec.js +++ b/demos/src/Marks/Code/React/index.spec.js @@ -51,4 +51,15 @@ context('/src/Marks/Code/React/', () => { it('should make inline code from the markdown shortcut', () => { cy.get('.tiptap').type('`Example`').find('code').should('contain', 'Example') }) + + it('should not create inline code when using space', () => { + cy.get('.tiptap').type('``{leftArrow}$foobar{rightArrow} ').find('code').should('not.exist') + }) + + it('should create code when closing with backtick', () => { + cy.get('.tiptap') + .type('``{leftArrow}$foobar{rightArrow} {backSpace}{backSpace}`') + .find('code') + .should('contain', '$foobar') + }) }) diff --git a/packages/extension-code/src/code.ts b/packages/extension-code/src/code.ts index 9fd76f43b9..53c1fc4e1c 100644 --- a/packages/extension-code/src/code.ts +++ b/packages/extension-code/src/code.ts @@ -33,11 +33,11 @@ declare module '@tiptap/core' { * It matches: * - An opening backtick, followed by * - Any text that doesn't include a backtick (captured for marking), followed by - * - A closing backtick. + * - A closing backtick as the final character. * This ensures that any text between backticks is formatted as code, * regardless of the surrounding characters (exception being another backtick). */ -export const inputRegex = /(^|[^`])`([^`]+)`(?!`)/ +export const inputRegex = /(^|[^`])`([^`]+)`(?!`)$/ /** * Matches inline code while pasting. From 96a34a09e4411695f4838a34b9bcba611767872b Mon Sep 17 00:00:00 2001 From: Aslam Date: Sat, 23 Aug 2025 21:42:41 +0700 Subject: [PATCH 327/629] fix: Select collaboration extension with provider instead of first registered (#6850) * fix: select collaboration extension with provider instead of first registered * add changeset --- .changeset/big-cases-retire.md | 5 +++++ packages/extension-unique-id/src/unique-id.ts | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 .changeset/big-cases-retire.md diff --git a/.changeset/big-cases-retire.md b/.changeset/big-cases-retire.md new file mode 100644 index 0000000000..7eae74ecbf --- /dev/null +++ b/.changeset/big-cases-retire.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-unique-id': patch +--- + +Fix collaboration extension selection to use the extension with a provider instead of the first registered extension diff --git a/packages/extension-unique-id/src/unique-id.ts b/packages/extension-unique-id/src/unique-id.ts index fd9fbdc912..269443fe34 100644 --- a/packages/extension-unique-id/src/unique-id.ts +++ b/packages/extension-unique-id/src/unique-id.ts @@ -62,8 +62,10 @@ export const UniqueID = Extension.create({ onCreate() { const collaboration = this.editor.extensionManager.extensions.find(ext => ext.name === 'collaboration') const collaborationCaret = this.editor.extensionManager.extensions.find(ext => ext.name === 'collaborationCaret') - const collab = collaboration || collaborationCaret - const provider = collab?.options ? collab.options.provider : undefined + + const collabExtensions = [collaboration, collaborationCaret].filter(Boolean) + const collab = collabExtensions.find(ext => ext?.options?.provider) + const provider = collab?.options?.provider const createIds = () => { const { view, state } = this.editor From 02eae084781051daf886ae7f538c5b936f21bf7d Mon Sep 17 00:00:00 2001 From: Ashutosh <102981372+ashutosh017@users.noreply.github.com> Date: Thu, 28 Aug 2025 16:01:26 +0530 Subject: [PATCH 328/629] fix(collaboration): correct warning message to reference undo-redo extension (#6872) * fix(collaboration): correct warning message for UndoRedo extension * chore: rewrite sweet-panthers-decide.md --- .changeset/sweet-panthers-decide.md | 5 +++++ packages/extension-collaboration/src/collaboration.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/sweet-panthers-decide.md diff --git a/.changeset/sweet-panthers-decide.md b/.changeset/sweet-panthers-decide.md new file mode 100644 index 0000000000..546baa046a --- /dev/null +++ b/.changeset/sweet-panthers-decide.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-collaboration': patch +--- + +Fixed outdated warning message to reference `@tiptap/extension-undo-redo` instead of `@tiptap/extension-history`. diff --git a/packages/extension-collaboration/src/collaboration.ts b/packages/extension-collaboration/src/collaboration.ts index 6aa74c770b..afc0293c9a 100644 --- a/packages/extension-collaboration/src/collaboration.ts +++ b/packages/extension-collaboration/src/collaboration.ts @@ -105,7 +105,7 @@ export const Collaboration = Extension.create extension.name === 'undoRedo')) { console.warn( - '[tiptap warn]: "@tiptap/extension-collaboration" comes with its own history support and is not compatible with "@tiptap/extension-history".', + '[tiptap warn]: "@tiptap/extension-collaboration" comes with its own history support and is not compatible with "@tiptap/extension-undo-redo".', ) } }, From 8eff69a72d783042662fcae77ffe2ce69483611a Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sun, 31 Aug 2025 16:04:43 +0200 Subject: [PATCH 329/629] fix(drag-handle): optimize mouse coordinate handling and cleanup (#6893) * fix(drag-handle): optimize mouse coordinate handling and cleanup on drag end * add changeset * fix(findNextElementFromCursor): handle empty candidates case and simplify return value --- .changeset/improve-drag-handle-lookup.md | 7 ++ .../src/drag-handle-plugin.ts | 93 ++++++++++++------- .../src/helpers/findNextElementFromCursor.ts | 73 +++++++-------- 3 files changed, 105 insertions(+), 68 deletions(-) create mode 100644 .changeset/improve-drag-handle-lookup.md diff --git a/.changeset/improve-drag-handle-lookup.md b/.changeset/improve-drag-handle-lookup.md new file mode 100644 index 0000000000..64183cc832 --- /dev/null +++ b/.changeset/improve-drag-handle-lookup.md @@ -0,0 +1,7 @@ +--- +"@tiptap/extension-drag-handle": patch +--- + +Improve drag handle node lookup by scanning element bounding rects inside the editor instead of performing per-pixel `elementsFromPoint` loops, and throttle mouse handling to a single update per animation frame to reduce CPU usage and improve stability. + +This should make drag handle positioning and node detection significantly faster and more robust. diff --git a/packages/extension-drag-handle/src/drag-handle-plugin.ts b/packages/extension-drag-handle/src/drag-handle-plugin.ts index 5d0a83b6a1..639f4385b5 100644 --- a/packages/extension-drag-handle/src/drag-handle-plugin.ts +++ b/packages/extension-drag-handle/src/drag-handle-plugin.ts @@ -82,6 +82,8 @@ export const DragHandlePlugin = ({ let currentNodePos = -1 // biome-ignore lint/suspicious/noExplicitAny: See above - relative positions in y-prosemirror are not typed let currentNodeRelPos: any + let rafId: number | null = null + let pendingMouseCoords: { x: number; y: number } | null = null function hideHandle() { if (!element) { @@ -151,6 +153,11 @@ export const DragHandlePlugin = ({ unbind() { element.removeEventListener('dragstart', onDragStart) element.removeEventListener('dragend', onDragEnd) + if (rafId) { + cancelAnimationFrame(rafId) + rafId = null + pendingMouseCoords = null + } }, plugin: new Plugin({ key: typeof pluginKey === 'string' ? new PluginKey(pluginKey) : pluginKey, @@ -284,6 +291,12 @@ export const DragHandlePlugin = ({ // TODO: Kills even on hot reload destroy() { + if (rafId) { + cancelAnimationFrame(rafId) + rafId = null + pendingMouseCoords = null + } + if (element) { removeNode(wrapper) } @@ -335,51 +348,69 @@ export const DragHandlePlugin = ({ return false } - const nodeData = findElementNextToCoords({ - x: e.clientX, - y: e.clientY, - direction: 'right', - editor, - }) + // Store latest mouse coords and schedule a single RAF per frame + pendingMouseCoords = { x: e.clientX, y: e.clientY } - // Skip if there is no node next to coords - if (!nodeData.resultElement) { + if (rafId) { return false } - let domNode = nodeData.resultElement as HTMLElement + rafId = requestAnimationFrame(() => { + rafId = null - domNode = getOuterDomNode(view, domNode) + if (!pendingMouseCoords) { + return + } - // Skip if domNode is editor dom. - if (domNode === view.dom) { - return false - } + const { x, y } = pendingMouseCoords + pendingMouseCoords = null - // We only want `Element`. - if (domNode?.nodeType !== 1) { - return false - } + const nodeData = findElementNextToCoords({ + x, + y, + direction: 'right', + editor, + }) - const domNodePos = view.posAtDOM(domNode, 0) - const outerNode = getOuterNode(editor.state.doc, domNodePos) + // Skip if there is no node next to coords + if (!nodeData.resultElement) { + return + } - if (outerNode !== currentNode) { - const outerNodePos = getOuterNodePos(editor.state.doc, domNodePos) + let domNode = nodeData.resultElement as HTMLElement - currentNode = outerNode - currentNodePos = outerNodePos + domNode = getOuterDomNode(view, domNode) - // Memorize relative position to retrieve absolute position in case of collaboration - currentNodeRelPos = getRelativePos(view.state, currentNodePos) + // Skip if domNode is editor dom. + if (domNode === view.dom) { + return + } - onNodeChange?.({ editor, node: currentNode, pos: currentNodePos }) + // We only want `Element`. + if (domNode?.nodeType !== 1) { + return + } - // Set nodes clientRect. - repositionDragHandle(domNode as Element) + const domNodePos = view.posAtDOM(domNode, 0) + const outerNode = getOuterNode(editor.state.doc, domNodePos) - showHandle() - } + if (outerNode !== currentNode) { + const outerNodePos = getOuterNodePos(editor.state.doc, domNodePos) + + currentNode = outerNode + currentNodePos = outerNodePos + + // Memorize relative position to retrieve absolute position in case of collaboration + currentNodeRelPos = getRelativePos(view.state, currentNodePos) + + onNodeChange?.({ editor, node: currentNode, pos: currentNodePos }) + + // Set nodes clientRect. + repositionDragHandle(domNode as Element) + + showHandle() + } + }) return false }, diff --git a/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts b/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts index 7e25a26556..e90963d43b 100644 --- a/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts +++ b/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts @@ -1,53 +1,52 @@ import type { Editor } from '@tiptap/core' -import type { Node } from '@tiptap/pm/model' export type FindElementNextToCoords = { x: number y: number direction?: 'left' | 'right' editor: Editor + bandHeight?: number } export const findElementNextToCoords = (options: FindElementNextToCoords) => { - const { x, y, direction, editor } = options - let resultElement: HTMLElement | null = null - let resultNode: Node | null = null - let pos: number | null = null + const { x, y, direction = 'right', editor, bandHeight = 5 } = options - let currentX = x - - while (resultNode === null && currentX < window.innerWidth && currentX > 0) { - const allElements = document.elementsFromPoint(currentX, y) - const prosemirrorIndex = allElements.findIndex(element => element.classList.contains('ProseMirror')) - const filteredElements = allElements.slice(0, prosemirrorIndex) - - if (filteredElements.length > 0) { - const target = filteredElements[0] - - resultElement = target as HTMLElement - pos = editor.view.posAtDOM(target, 0) - - if (pos >= 0) { - resultNode = editor.state.doc.nodeAt(Math.max(pos - 1, 0)) - - if (resultNode?.isText) { - resultNode = editor.state.doc.nodeAt(Math.max(pos - 1, 0)) - } - - if (!resultNode) { - resultNode = editor.state.doc.nodeAt(Math.max(pos, 0)) - } + const rect = { + top: y - bandHeight, + bottom: y + bandHeight, + left: direction === 'right' ? x : 0, + right: direction === 'right' ? window.innerWidth - x : x, + } - break - } - } + const root = editor.view.dom as HTMLElement + + // Get potential candidates from prosemirror child elements and filter + // by removing decorations and non prosemirror-elements + const candidates = [...root.querySelectorAll('*')] + .filter(candidate => { + return editor.view.posAtDOM(candidate, 0) >= 0 + }) + .filter(candidate => { + const candidateRect = candidate.getBoundingClientRect() + return !( + candidateRect.bottom < rect.top || + candidateRect.top > rect.bottom || + candidateRect.right < rect.left || + candidateRect.left > rect.right + ) + }) + + if (!candidates || candidates.length === 0) { + return { resultElement: null, resultNode: null, pos: null } + } - if (direction === 'left') { - currentX -= 1 - } else { - currentX += 1 - } + const finalCandidate = candidates[0] + const candidatePos = editor.view.posAtDOM(finalCandidate, 0) + if (candidatePos === -1) { + return { resultElement: finalCandidate, resultNode: null, pos: null } } - return { resultElement, resultNode, pos: pos ?? null } + const candidateNode = editor.state.doc.nodeAt(candidatePos - 1) + + return { resultElement: finalCandidate, resultNode: candidateNode, pos: candidatePos } } From 03bf0eacdca29233696b4b86020a6a04e3c579cc Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 2 Sep 2025 15:13:28 +0200 Subject: [PATCH 330/629] fix(emoji): update paste regex to preserve optional prefix (#6899) * fix(emoji): update paste regex to preserve optional prefix in shortcode matching * add changeset * test(emoji): add tests for emoji insertion and shortcode handling * Update .changeset/emoji-paste-url-fix.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/emoji-paste-url-fix.md | 7 ++++ demos/src/Nodes/Emoji/React/index.spec.js | 36 +++++++++++++++++++ packages/extension-emoji/src/emoji.ts | 12 +++++-- .../integration/extensions/emoji.spec.ts | 22 ++++++++++++ tests/cypress/support/commands.js | 10 +++++- 5 files changed, 83 insertions(+), 4 deletions(-) create mode 100644 .changeset/emoji-paste-url-fix.md create mode 100644 demos/src/Nodes/Emoji/React/index.spec.js create mode 100644 tests/cypress/integration/extensions/emoji.spec.ts diff --git a/.changeset/emoji-paste-url-fix.md b/.changeset/emoji-paste-url-fix.md new file mode 100644 index 0000000000..a4f5496a27 --- /dev/null +++ b/.changeset/emoji-paste-url-fix.md @@ -0,0 +1,7 @@ +--- +"@tiptap/extension-emoji": patch +--- + +Preserve prefixes when replacing emoji shortcodes to avoid unintended conversions. + +Previously, shortcodes such as `:x:` could be converted into emoji nodes even when part of a larger string (e.g., in URLs or other text). The paste handler now preserves prefixes, which helps prevent unwanted conversions in such cases, but does not specifically target URLs. diff --git a/demos/src/Nodes/Emoji/React/index.spec.js b/demos/src/Nodes/Emoji/React/index.spec.js new file mode 100644 index 0000000000..a8be64f4c4 --- /dev/null +++ b/demos/src/Nodes/Emoji/React/index.spec.js @@ -0,0 +1,36 @@ +context('/src/Nodes/Emoji/React/', () => { + beforeEach(() => { + cy.visit('/src/Nodes/Emoji/React/') + }) + + beforeEach(() => { + cy.get('.tiptap').then(([{ editor }]) => { + editor.commands.setContent('

') + }) + cy.get('.tiptap').click() + }) + + it('insert :smile: via typing', () => { + cy.get('.tiptap').type(':smile:') + // after typing the shortcode the emoji should be rendered as a node + cy.get('.tiptap').find('[data-type="emoji"][data-name="smile"]').should('exist') + }) + + it('insert button inserts an emoji node', () => { + cy.get('button').contains('Insert ⚡').click() + cy.get('.tiptap').find('[data-type="emoji"][data-name="zap"]').should('exist') + }) + + it('pasting a URL containing :x: does not convert the shortcode', () => { + const url = 'https://example-url.com/:x:/sub' + cy.get('.tiptap').paste({ paste: url }) + + cy.get('.tiptap').contains(url) + cy.get('.tiptap').find('[data-type="emoji"]').should('not.exist') + }) + + it('pasting a standalone shortcode converts to an emoji node', () => { + cy.get('.tiptap').paste({ paste: ':smile:' }) + cy.get('.tiptap').find('[data-type="emoji"]').should('exist') + }) +}) diff --git a/packages/extension-emoji/src/emoji.ts b/packages/extension-emoji/src/emoji.ts index 6d5a8a80b6..ae2c619e25 100644 --- a/packages/extension-emoji/src/emoji.ts +++ b/packages/extension-emoji/src/emoji.ts @@ -92,7 +92,7 @@ export const EmojiSuggestionPluginKey = new PluginKey('emojiSuggestion') export const inputRegex = /:([a-zA-Z0-9_+-]+):$/ -export const pasteRegex = /:([a-zA-Z0-9_+-]+):/g +export const pasteRegex = /(^|\s):([a-zA-Z0-9_+-]+):/g export const Emoji = Node.create({ name: 'emoji', @@ -329,15 +329,21 @@ export const Emoji = Node.create({ new PasteRule({ find: pasteRegex, handler: ({ range, match, chain }) => { - const name = match[1] + // match[1] is the optional prefix (start or whitespace), match[2] is the shortcode name + const prefix = match[1] || '' + const name = match[2] if (!shortcodeToEmoji(name, this.options.emojis)) { return } + // Replace only the shortcode portion (preserve the prefix) + const shortcodeFrom = range.from + prefix.length + const shortcodeTo = range.to + chain() .insertContentAt( - range, + { from: shortcodeFrom, to: shortcodeTo }, { type: this.name, attrs: { diff --git a/tests/cypress/integration/extensions/emoji.spec.ts b/tests/cypress/integration/extensions/emoji.spec.ts new file mode 100644 index 0000000000..d5fbe0e71b --- /dev/null +++ b/tests/cypress/integration/extensions/emoji.spec.ts @@ -0,0 +1,22 @@ +/// + +import { inputRegex, pasteRegex } from '@tiptap/extension-emoji' + +describe('emoji extension', () => { + it('inputRegex matches typical shortcode', () => { + expect(':smile:').to.match(inputRegex) + }) + + it('pasteRegex matches standalone shortcode', () => { + expect(':smile:').to.match(pasteRegex) + }) + + it('pasteRegex does NOT match shortcode inside url-like text', () => { + // This should NOT match because the shortcode is part of a URL path + expect('https://example.com/:x:/sub/').to.not.match(pasteRegex) + }) + + it('pasteRegex matches when preceded by space', () => { + expect(' test :smile: ').to.match(pasteRegex) + }) +}) diff --git a/tests/cypress/support/commands.js b/tests/cypress/support/commands.js index 941b6d478a..f2d56fa648 100644 --- a/tests/cypress/support/commands.js +++ b/tests/cypress/support/commands.js @@ -72,7 +72,15 @@ Cypress.Commands.overwrite('click', (originalFn, element, text, options) => { }) Cypress.Commands.add('paste', { prevSubject: true }, (subject, pasteOptions) => { - const { pastePayload, pasteType } = pasteOptions + // Support both { pastePayload, pasteType } and shorthand { paste } + const pastePayload = pasteOptions?.paste ?? pasteOptions?.pastePayload + let pasteType = pasteOptions?.pasteType + + if (!pasteType) { + // default to application/json for objects, text/plain for strings + pasteType = typeof pastePayload === 'string' ? 'text/plain' : 'application/json' + } + const data = pasteType === 'application/json' ? JSON.stringify(pastePayload) : pastePayload // https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer const clipboardData = new DataTransfer() From a97e7bc40a7293b88917d82c9033bb34cb525eda Mon Sep 17 00:00:00 2001 From: bdbch Date: Tue, 2 Sep 2025 15:19:01 +0200 Subject: [PATCH 331/629] remove outdated changesets --- .changeset/add-exit-meta-to-suggestion.md | 10 ------ .changeset/add-node-param-to-generate-id.md | 15 -------- ...iendly-pancakes-fix-paste-rule-nodeview.md | 14 -------- .changeset/input-rules-respect-priority.md | 36 ------------------- ...emove-react-renderer-element-on-destroy.md | 8 ----- 5 files changed, 83 deletions(-) delete mode 100644 .changeset/add-exit-meta-to-suggestion.md delete mode 100644 .changeset/add-node-param-to-generate-id.md delete mode 100644 .changeset/friendly-pancakes-fix-paste-rule-nodeview.md delete mode 100644 .changeset/input-rules-respect-priority.md delete mode 100644 .changeset/remove-react-renderer-element-on-destroy.md diff --git a/.changeset/add-exit-meta-to-suggestion.md b/.changeset/add-exit-meta-to-suggestion.md deleted file mode 100644 index fcb54890d2..0000000000 --- a/.changeset/add-exit-meta-to-suggestion.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -"@tiptap/suggestion": patch ---- - -Add a safe API to exit suggestions and remove decorations. - -- Dispatching a metadata-only transaction with `{ exit: true }` will now reliably deactivate the suggestion plugin and remove inline decorations. -- Pressing Escape now triggers renderer.onExit and dispatches the exit meta, so suggestions close immediately without needing document edits. -- Clicking outside the editor will also close active suggestions. -- Exported `exitSuggestion(view, pluginKey?)` helper to programmatically close suggestions safely. diff --git a/.changeset/add-node-param-to-generate-id.md b/.changeset/add-node-param-to-generate-id.md deleted file mode 100644 index 053a6d2274..0000000000 --- a/.changeset/add-node-param-to-generate-id.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -"@tiptap/extension-unique-id": patch ---- - -Change the `generateID` option to accept a context object: `{ node, pos }`. - -This lets ID generators access both the ProseMirror `node` and its `pos` within the document when creating IDs, enabling logic that depends on node content, type, or position. - -The change is backwards-compatible: existing `generateID` functions that ignore the new context will continue to work. Example usage: - -``` -editor.use(UniqueID, { - generateID: ({ node, pos }) => `${node.type.name}-${pos}-${uuidv4()}`, -}) -``` diff --git a/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md b/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md deleted file mode 100644 index e5a6c55e07..0000000000 --- a/.changeset/friendly-pancakes-fix-paste-rule-nodeview.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Fix paste rule handling for node views and defensively guard empty ranges. - -This patch ensures paste rules can correctly inspect node content when -node-specific size metadata (`nodeSize`) is present, falling back to -`node.content.size` when needed. It also skips empty or invalid node ranges -before calling `textBetween`, preventing runtime errors originating from -internal Fragment/Node traversals (for example: "Cannot read properties of -undefined (reading 'nodeSize')"). - -The change is a defensive bugfix; it does not change public APIs. diff --git a/.changeset/input-rules-respect-priority.md b/.changeset/input-rules-respect-priority.md deleted file mode 100644 index 5255832d2e..0000000000 --- a/.changeset/input-rules-respect-priority.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -"@tiptap/core": minor ---- - -Make input rules and paste rules respect extension `priority` by registering -them per-extension instead of aggregating them into a single global plugin. - -Why ---- -Previously all `addInputRules()` and `addPasteRules()` were gathered into one -global plugin which ran before the other plugins. That caused conflicts where -some extensions (for example mention/suggestion with `#`) could not preempt the -built-in heading input rule. - -What changed ---- -- Input and paste rules are now created and registered at the position of the - owning extension. This makes their execution order follow the extension - sorting/`priority` mechanism. -- Behavior is more predictable: extensions with higher `priority` can now take - precedence over lower priority extensions' input/paste rules. - -Migration & compatibility ---- -- This is a behavioral change. If you relied on the old global ordering (input - rules always running before other plugins), you may observe different - outcomes. In most cases this is desirable and fixes conflicts (like the - `#` mention vs. heading shortcut), but be aware of the change. -- If you need to force the previous behavior for a specific rule, you can: - - Register the rule as a ProseMirror plugin via `addProseMirrorPlugins()` on - the extension and place it where you want it to run. - - Adjust the extension `priority` value so the extension sits earlier or - later in the ordering. - -If you have any questions or see regressions after upgrading, please open an -issue with a small repro and we'll help triage. diff --git a/.changeset/remove-react-renderer-element-on-destroy.md b/.changeset/remove-react-renderer-element-on-destroy.md deleted file mode 100644 index 2b44bed124..0000000000 --- a/.changeset/remove-react-renderer-element-on-destroy.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -"@tiptap/react": patch ---- - -Ensure `ReactRenderer.destroy()` removes the renderer DOM element when present. - -- When consumers append a `ReactRenderer`'s `.element` to the DOM (for example many demos append it to `document.body`), previously calling `destroy()` removed the portal renderer but left the DOM node in place which could lead to accumulating `.react-renderer` elements. -- `destroy()` now also removes the element from its parent node if present, preventing leaked DOM nodes / React roots. From d019c84a2bb73f7c277e8ab0f25e77ca49fe38ce Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 2 Sep 2025 15:20:36 +0200 Subject: [PATCH 332/629] chore(release): publish a new release version (#6900) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/big-cases-retire.md | 5 ---- .changeset/emoji-paste-url-fix.md | 7 ----- .changeset/heavy-walls-accept.md | 5 ---- .changeset/improve-drag-handle-lookup.md | 7 ----- .changeset/sweet-panthers-decide.md | 5 ---- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 14 +++++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 12 ++++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 143 files changed, 561 insertions(+), 98 deletions(-) delete mode 100644 .changeset/big-cases-retire.md delete mode 100644 .changeset/emoji-paste-url-fix.md delete mode 100644 .changeset/heavy-walls-accept.md delete mode 100644 .changeset/improve-drag-handle-lookup.md delete mode 100644 .changeset/sweet-panthers-decide.md diff --git a/.changeset/big-cases-retire.md b/.changeset/big-cases-retire.md deleted file mode 100644 index 7eae74ecbf..0000000000 --- a/.changeset/big-cases-retire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-unique-id': patch ---- - -Fix collaboration extension selection to use the extension with a provider instead of the first registered extension diff --git a/.changeset/emoji-paste-url-fix.md b/.changeset/emoji-paste-url-fix.md deleted file mode 100644 index a4f5496a27..0000000000 --- a/.changeset/emoji-paste-url-fix.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@tiptap/extension-emoji": patch ---- - -Preserve prefixes when replacing emoji shortcodes to avoid unintended conversions. - -Previously, shortcodes such as `:x:` could be converted into emoji nodes even when part of a larger string (e.g., in URLs or other text). The paste handler now preserves prefixes, which helps prevent unwanted conversions in such cases, but does not specifically target URLs. diff --git a/.changeset/heavy-walls-accept.md b/.changeset/heavy-walls-accept.md deleted file mode 100644 index 403fc04bf6..0000000000 --- a/.changeset/heavy-walls-accept.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-code": patch ---- - -Prevent incorrect insertion of code marks when a space immediately follows backticks. diff --git a/.changeset/improve-drag-handle-lookup.md b/.changeset/improve-drag-handle-lookup.md deleted file mode 100644 index 64183cc832..0000000000 --- a/.changeset/improve-drag-handle-lookup.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@tiptap/extension-drag-handle": patch ---- - -Improve drag handle node lookup by scanning element bounding rects inside the editor instead of performing per-pixel `elementsFromPoint` loops, and throttle mouse handling to a single update per animation frame to reduce CPU usage and improve stability. - -This should make drag handle positioning and node detection significantly faster and more robust. diff --git a/.changeset/sweet-panthers-decide.md b/.changeset/sweet-panthers-decide.md deleted file mode 100644 index 546baa046a..0000000000 --- a/.changeset/sweet-panthers-decide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-collaboration': patch ---- - -Fixed outdated warning message to reference `@tiptap/extension-undo-redo` instead of `@tiptap/extension-history`. diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index a3b10164f5..aac7c0f553 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extensions@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 7dc74946e9..ffdbd6007b 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index aab5da12a5..e89562809b 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extensions@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index c6bda30684..ef63204b4a 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 7037cd8585..f40aefa447 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extensions@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 7d19d48fbf..6b336debd6 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 6e50b19173..ce56f6c638 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extensions@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 965d592ab8..3b884b7481 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 4a93abf053..f983a48dc1 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extensions@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index af82fc885c..c346e2f41f 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 8429a0a245..97d2609c47 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-list@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 484097e60d..fbdadce676 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index d8f743d67b..6445363240 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-list@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 881eeddce7..7b9170861e 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 329b6da7a2..d27b327cfe 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extensions@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 70ea6e599f..fe7d25053e 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 29fd650a92..828f4f1999 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-table@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index b9f14d855e..ea015db64a 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 7ee67e2112..1060db16bd 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-table@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 8e83544fe2..ec97605422 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 13999696d7..835b65928f 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-table@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index be309b9031..89258ad636 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index b84a28fbd9..9b438aead9 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-list@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index edc42bd380..5eebabf677 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 22c1b35eb5..ee8b5273d5 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-list@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 501942bea6..52ba08179e 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 06f0c0c246..e51ed5c228 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index f595c7ee5a..af1fabf659 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 8a18db9daf..b847c3352f 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 12e26dca9f..829bf3fee4 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 495e0f0ccf..880c9fb6cd 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 85bcde76da..c0255260e7 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 28db0cf2af..35ad939dbc 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 03bf7b65ce..15ab29c010 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index cbbbe4e73f..ff33cf3c1a 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-list@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 595fcdf28d..5052104809 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index cbd7950855..4b0c5c7b72 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/extension-code-block@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index de1a052eb3..af243bb4f2 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 06aad2733d..ea737a8744 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index a1fa68b5f9..e71db9e3e0 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 9af5ce67f7..e06b5c4534 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- 9e02c12: Prevent incorrect insertion of code marks when a space immediately follows backticks. + - @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index a21877fd74..80ea10fec4 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 12efcb0ea0..bebcccd3d8 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index b73120bc60..2d1d09e2db 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 9f99a69cce..ed7cc8d0d2 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- 02eae08: Fixed outdated warning message to reference `@tiptap/extension-undo-redo` instead of `@tiptap/extension-history`. + - @tiptap/core@3.3.1 + - @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 4c15e2c8fd..989f129e4a 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 75983e09f5..0938793a1a 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index f9f7fb170b..a3e48b3d52 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 0a062b336f..c82b28ec44 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/extension-text-style@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 6ddc8d89c0..053697ddc3 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index acdc2b3d21..994a7e0feb 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 19f3cab0b2..4d987bf9ce 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index fba6958a72..227131f3de 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.3.1 + +### Patch Changes + +- Updated dependencies [8eff69a] + - @tiptap/extension-drag-handle@3.3.1 + - @tiptap/pm@3.3.1 + - @tiptap/react@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 78af1ea5c7..b9dd6ed649 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index a04eb0843d..3237127607 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.3.1 + +### Patch Changes + +- Updated dependencies [8eff69a] + - @tiptap/extension-drag-handle@3.3.1 + - @tiptap/pm@3.3.1 + - @tiptap/vue-2@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 8b1aee9e77..71beb675cb 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index cc0ad3d35d..d9cf9db6b8 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.3.1 + +### Patch Changes + +- Updated dependencies [8eff69a] + - @tiptap/extension-drag-handle@3.3.1 + - @tiptap/pm@3.3.1 + - @tiptap/vue-3@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 43f6d99d74..8bf039962d 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 0a345dfda5..04a3a55c6a 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,19 @@ # @tiptap/extension-drag-handle +## 3.3.1 + +### Patch Changes + +- 8eff69a: Improve drag handle node lookup by scanning element bounding rects inside the editor instead of performing per-pixel `elementsFromPoint` loops, and throttle mouse handling to a single update per animation frame to reduce CPU usage and improve stability. + + This should make drag handle positioning and node detection significantly faster and more robust. + +- Updated dependencies [02eae08] + - @tiptap/extension-collaboration@3.3.1 + - @tiptap/core@3.3.1 + - @tiptap/extension-node-range@3.3.1 + - @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index dac6b241cf..f42983bc0b 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 8f31410ad1..fd8ef98c09 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/extension-emoji +## 3.3.1 + +### Patch Changes + +- 03bf0ea: Preserve prefixes when replacing emoji shortcodes to avoid unintended conversions. + + Previously, shortcodes such as `:x:` could be converted into emoji nodes even when part of a larger string (e.g., in URLs or other text). The paste handler now preserves prefixes, which helps prevent unwanted conversions in such cases, but does not specifically target URLs. + + - @tiptap/core@3.3.1 + - @tiptap/pm@3.3.1 + - @tiptap/suggestion@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 2c4fabbf31..8423073a36 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index de1f133af5..5c4ddab999 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/extension-text-style@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 836bd84bad..c82a566889 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index a2e4c84ae4..59403505f2 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 190b2ae463..22ba08ef1b 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 890c6a4617..1cd98700c5 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 36d7ab5821..633bc036a2 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 2ee5132e19..a18138a82a 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index db34c7e47b..f5ce76af5d 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index b14bef5420..12fa4b7f85 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 7fa036e436..31c6f3db44 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 14224bea85..3c1ae5f1d3 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 37f9b042a0..be19d1dee8 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 82118b9609..52b174772b 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 1cf7776a8b..2ca3b317a6 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index fec82cc25a..f2f20715f9 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 5f45e6c413..5235f4bc20 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 5c678b598a..ca7ed67822 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/extension-text-style@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index a9b0bd355b..5b95d7e810 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 026b597985..9cd4cbac83 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 305b5cd942..2a6a6fd13c 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index dc195b0f8b..a8a6a7e134 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 38ee63c223..ca7d3d97d5 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 22c3ba7172..b4c9dac980 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 06ac37d0a4..01c9382a3d 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index f48793bb3a..9dab21adbc 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index b953be775d..7fe95e71e8 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 92849f7293..514a30d1fa 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 +- @tiptap/suggestion@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index df3e6b014c..3c870358d4 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index e110dcc6e9..b66097886e 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 96d5c1ddce..4836298e9c 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 0d418a4fe8..f80e26348d 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/extension-list@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 063adc588a..ada7d7aaa1 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index dbb8e17392..307981e84a 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 76be16c058..f9bafb2546 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index c12348ad9f..c4593c1924 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index c940468400..c18333a962 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index ec50eac8ca..b70fd711c1 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 24400995d5..8aa6c24f9d 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index da71a30132..dbe4f70181 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 2efd097e98..05991ffc3b 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index f5e7a4d549..7e05566119 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 15edfe99c2..d552aef74c 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 9cf5e8c2db..3b5b84295e 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 5390b5c1a0..3f1991a2da 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 82d359d441..b925acac04 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index e2e016db02..bc94dceed6 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 3691ec8b10..6865ac704c 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 5c5080dab5..68b63c9987 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 20c15f135b..85e5f4a712 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index b9bf068b9c..178e15b423 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 855b5f7cba..7156ca7f2f 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 93b2d8d548..eb56924986 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 645d00308c..4300bfe5d2 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index e0652a802d..4cbe7e6d9e 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index cd4cb52c05..9bff91e3aa 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.3.1 + +### Patch Changes + +- 96a34a0: Fix collaboration extension selection to use the extension with a provider instead of the first registered extension + - @tiptap/core@3.3.1 + - @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 982c8dea07..295602f39b 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index b83d63de34..6ee56732b5 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 0b76c0054a..12c7cb0a7e 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index afcbb35ea9..dfb2e42715 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 7eddd99354..fcce1f8920 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index a4588b250c..d7a27b8753 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 4d55d16d9a..26d79d221a 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index f31be27fe9..ba075faf85 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.3.1 + ## 3.3.0 ## 3.2.2 diff --git a/packages/pm/package.json b/packages/pm/package.json index fa979d2d08..3b8d8d8ff2 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 26d34e99ad..57229c8663 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 6ca7f1072b..21b7f7132b 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 1e28213b73..2f42f8b63e 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- Updated dependencies [9e02c12] + - @tiptap/extension-code@3.3.1 + - @tiptap/extension-dropcursor@3.3.1 + - @tiptap/extension-gapcursor@3.3.1 + - @tiptap/extension-list-item@3.3.1 + - @tiptap/extension-list-keymap@3.3.1 + - @tiptap/core@3.3.1 + - @tiptap/extension-blockquote@3.3.1 + - @tiptap/extension-bold@3.3.1 + - @tiptap/extension-bullet-list@3.3.1 + - @tiptap/extension-code-block@3.3.1 + - @tiptap/extension-document@3.3.1 + - @tiptap/extension-hard-break@3.3.1 + - @tiptap/extension-heading@3.3.1 + - @tiptap/extension-horizontal-rule@3.3.1 + - @tiptap/extension-italic@3.3.1 + - @tiptap/extension-link@3.3.1 + - @tiptap/extension-list@3.3.1 + - @tiptap/extension-ordered-list@3.3.1 + - @tiptap/extension-paragraph@3.3.1 + - @tiptap/extension-strike@3.3.1 + - @tiptap/extension-text@3.3.1 + - @tiptap/extension-underline@3.3.1 + - @tiptap/extensions@3.3.1 + - @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 824764dde6..84105d4bfd 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 2a49c3e407..caeb566875 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 355b02292b..0b0d2a05d3 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index e9aebb52c1..2dfa8a78bb 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index fff0b3af0b..11deb0c655 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index f8e055a334..39c48c68fa 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 78247b316e..bb63633561 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index a7ddc79ffe..ec2934b749 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.3.1 + +### Patch Changes + +- @tiptap/core@3.3.1 +- @tiptap/pm@3.3.1 + ## 3.3.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 6c5adeddee..121a4f8683 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.3.0", + "version": "3.3.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 895c73f096d1c2637321a284bd5c23179681e252 Mon Sep 17 00:00:00 2001 From: Devarasetty Praneeth <89689768+praneeth622@users.noreply.github.com> Date: Wed, 3 Sep 2025 23:14:25 +0530 Subject: [PATCH 333/629] fix(core): can().toggleMark() now correctly returns false when cursor is in nodes that disallow marks (#6894) Fixes #6885 - Updated canSetMark to check parent node's allowsMarkType when selection is a cursor - Added test coverage for this scenario in can.spec.ts - Ensures can().toggleMark('bold') returns false when cursor is inside code blocks --- .../fix-can-toggle-mark-in-code-block.md | 7 +++++++ packages/core/src/commands/setMark.ts | 8 ++++++-- tests/cypress/integration/core/can.spec.ts | 18 ++++++++++++++++++ 3 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 .changeset/fix-can-toggle-mark-in-code-block.md diff --git a/.changeset/fix-can-toggle-mark-in-code-block.md b/.changeset/fix-can-toggle-mark-in-code-block.md new file mode 100644 index 0000000000..f92ad53209 --- /dev/null +++ b/.changeset/fix-can-toggle-mark-in-code-block.md @@ -0,0 +1,7 @@ +--- +"@tiptap/core": patch +--- + +Fix `can().toggleMark()` returning incorrect result when cursor is inside nodes that disallow marks + +Fixed an issue where `can().toggleMark('bold')` incorrectly returned `true` when the cursor was positioned inside a code block (with no selection), even though marks are not allowed in code blocks. The method now correctly returns `false` in this scenario by checking if the parent node allows the mark type when the selection is a cursor. diff --git a/packages/core/src/commands/setMark.ts b/packages/core/src/commands/setMark.ts index c2b6c7b1bb..c21569043c 100644 --- a/packages/core/src/commands/setMark.ts +++ b/packages/core/src/commands/setMark.ts @@ -29,9 +29,13 @@ function canSetMark(state: EditorState, tr: Transaction, newMarkType: MarkType) if (cursor) { const currentMarks = state.storedMarks ?? cursor.marks() + const parentAllowsMarkType = cursor.parent.type.allowsMarkType(newMarkType) - // There can be no current marks that exclude the new mark - return !!newMarkType.isInSet(currentMarks) || !currentMarks.some(mark => mark.type.excludes(newMarkType)) + // There can be no current marks that exclude the new mark, and the parent must allow this mark type + return ( + parentAllowsMarkType && + (!!newMarkType.isInSet(currentMarks) || !currentMarks.some(mark => mark.type.excludes(newMarkType))) + ) } const { ranges } = selection diff --git a/tests/cypress/integration/core/can.spec.ts b/tests/cypress/integration/core/can.spec.ts index 3e91bf00c9..4dd3844dcd 100644 --- a/tests/cypress/integration/core/can.spec.ts +++ b/tests/cypress/integration/core/can.spec.ts @@ -54,6 +54,24 @@ describe('can', () => { expect(canUndo).to.eq(true) }) + it('returns false for non-applicable marks when cursor is positioned in node that disallows marks', () => { + const editor = new Editor({ + extensions: [Document, Paragraph, Text, UndoRedo, CodeBlock, Bold], + }) + + // Set up a code block and position cursor inside it (no selection) + editor + .chain() + .setCodeBlock() + .insertContent('Test code block') + .setTextSelection(5) // Position cursor in the middle of the text + .run() + + const canSetMarkToBold = editor.can().setMark('bold') + + expect(canSetMarkToBold).to.eq(false) + }) + it('returns false for non-applicable marks when selection contains node in conflict', () => { const editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, CodeBlock, Bold], From d3773c749d7542d1fa98a40972e6c18d443f4b24 Mon Sep 17 00:00:00 2001 From: Yandif <52165593+yandif@users.noreply.github.com> Date: Thu, 4 Sep 2025 01:49:56 +0800 Subject: [PATCH 334/629] fix: avoid selection update during IME composition (#4546) (#6879) * fix: avoid selection update during IME composition (#4546) * Apply suggestion from @Copilot Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Fix IME handling for Chinese text input Fixed an issue where the input method editor (IME) failed to handle Chinese text correctly when entering the first word. Users can now input multiple words as expected. --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/friendly-rules-refuse.md | 5 +++++ packages/extension-details/src/details.ts | 6 ++++++ 2 files changed, 11 insertions(+) create mode 100644 .changeset/friendly-rules-refuse.md diff --git a/.changeset/friendly-rules-refuse.md b/.changeset/friendly-rules-refuse.md new file mode 100644 index 0000000000..f3332fef56 --- /dev/null +++ b/.changeset/friendly-rules-refuse.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-details": patch +--- + +Fixed an issue where the input method editor (IME) failed to handle Chinese text correctly when entering the first word. Users can now input multiple words as expected. diff --git a/packages/extension-details/src/details.ts b/packages/extension-details/src/details.ts index 65518a3677..1a181878d1 100644 --- a/packages/extension-details/src/details.ts +++ b/packages/extension-details/src/details.ts @@ -376,6 +376,12 @@ export const Details = Node.create({ key: new PluginKey('detailsSelection'), appendTransaction: (transactions, oldState, newState) => { const { editor, type } = this + const isComposing = editor.view.composing + + if (isComposing) { + return + } + const selectionSet = transactions.some(transaction => transaction.selectionSet) if (!selectionSet || !oldState.selection.empty || !newState.selection.empty) { From 2cb08d3ebec5280f047bf09b2c6ec850519107f0 Mon Sep 17 00:00:00 2001 From: max-nextcloud Date: Wed, 3 Sep 2025 19:59:41 +0200 Subject: [PATCH 335/629] fix(drag-handle-vue-2): fix vue2 warnign about objects as default (#6857) * fix(drag-handle-vue-2): use factory function for default Vue2 requires factory functions for defaults for objects and arrays. Prevent the warning > Invalid default value for prop "PluginKey": Props with type Object/Array must use a factory function to return the default value. Signed-off-by: Max * Fix prop default handling for Vue 2 --------- Signed-off-by: Max Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/moody-trees-rescue.md | 5 +++++ .changeset/serious-tools-hear.md | 5 +++++ packages/extension-drag-handle-vue-2/src/DragHandle.ts | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 .changeset/moody-trees-rescue.md create mode 100644 .changeset/serious-tools-hear.md diff --git a/.changeset/moody-trees-rescue.md b/.changeset/moody-trees-rescue.md new file mode 100644 index 0000000000..23f0f4780d --- /dev/null +++ b/.changeset/moody-trees-rescue.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-drag-handle-vue-2': patch +--- + +Use factory function for object default value as required by vue 2. diff --git a/.changeset/serious-tools-hear.md b/.changeset/serious-tools-hear.md new file mode 100644 index 0000000000..4149a284a3 --- /dev/null +++ b/.changeset/serious-tools-hear.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-drag-handle-vue-2": patch +--- + +Fixed a bug that would cause Vue 2 to throw errors in console because Vue 2 expects factory functions for prop defaults diff --git a/packages/extension-drag-handle-vue-2/src/DragHandle.ts b/packages/extension-drag-handle-vue-2/src/DragHandle.ts index 55e8348b64..ba92d95340 100644 --- a/packages/extension-drag-handle-vue-2/src/DragHandle.ts +++ b/packages/extension-drag-handle-vue-2/src/DragHandle.ts @@ -20,7 +20,7 @@ export const DragHandle = Vue.extend({ props: { pluginKey: { type: [String, Object] as PropType, - default: dragHandlePluginDefaultKey, + default: () => dragHandlePluginDefaultKey, }, editor: { From 90cbed55b2d26f604b46f8db22561e30009dfe21 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 4 Sep 2025 01:34:47 +0200 Subject: [PATCH 336/629] Fix suggestion menu not working with non-react envs (#6908) * refactor(suggestion): remove click handler logic to fix bugs caused with non-react envs * add changeset --- .../remove-suggestion-document-handler.md | 14 ++++ packages/suggestion/src/suggestion.ts | 66 +------------------ 2 files changed, 15 insertions(+), 65 deletions(-) create mode 100644 .changeset/remove-suggestion-document-handler.md diff --git a/.changeset/remove-suggestion-document-handler.md b/.changeset/remove-suggestion-document-handler.md new file mode 100644 index 0000000000..7013e37d21 --- /dev/null +++ b/.changeset/remove-suggestion-document-handler.md @@ -0,0 +1,14 @@ +--- +"@tiptap/suggestion": patch +--- + +Remove the global document `mousedown` handler that closed suggestion popups when clicking outside. + +Previously the suggestion plugin listened for document `mousedown` events and closed suggestion UIs when the user clicked outside the editor or suggestion portal. That behavior has been removed to avoid framework-specific coupling (for example reliance on `.react-renderer`) and related compatibility issues. + +Now suggestions are closed via other signals: + +- pressing Escape (unchanged) +- selection/cursor changes +- renderer.onExit (renderers can call this) +- programmatic calls to `exitSuggestion(view)` diff --git a/packages/suggestion/src/suggestion.ts b/packages/suggestion/src/suggestion.ts index 35c2440e9c..741bb47033 100644 --- a/packages/suggestion/src/suggestion.ts +++ b/packages/suggestion/src/suggestion.ts @@ -6,11 +6,6 @@ import { Decoration, DecorationSet } from '@tiptap/pm/view' import { findSuggestionMatch as defaultFindSuggestionMatch } from './findSuggestionMatch.js' -// Track document click handlers per EditorView instance to avoid accidental -// leaks when multiple editors are created/destroyed. WeakMap ensures handlers -// don't keep views alive. -const clickHandlerMap: WeakMap void> = new WeakMap() - export interface SuggestionOptions { /** * The plugin key for the suggestion plugin. @@ -230,10 +225,6 @@ export function Suggestion({ // small helper used internally by the view to dispatch an exit function dispatchExit(view: EditorView, pluginKeyRef: PluginKey) { try { - // Try to call renderer.onExit so consumer renderers (for example the - // demos' ReactRenderer) can clean up and unmount immediately. This - // covers paths where we only dispatch a metadata transaction (like - // click-outside) and ensures we don't leak DOM nodes / React roots. const state = pluginKey.getState(view.state) const decorationNode = state?.decorationId ? view.dom.querySelector(`[data-decoration-id="${state.decorationId}"]`) @@ -266,53 +257,7 @@ export function Suggestion({ const plugin: Plugin = new Plugin({ key: pluginKey, - view(editorView: EditorView) { - const ensureClickHandler = (view: EditorView) => { - if (clickHandlerMap.has(view)) { - return - } - - const handler = (event: MouseEvent) => { - if (!props) { - return - } - - const decorationNode = props.decorationNode - const target = event.target as Element | null - - if (!decorationNode) { - return - } - - if (target && decorationNode.contains(target)) { - return - } - - if (target && view.dom.contains(target)) { - return - } - - if (target && target.closest && target.closest('.react-renderer')) { - return - } - - dispatchExit(view, pluginKey) - } - - document.addEventListener('mousedown', handler, true) - clickHandlerMap.set(view, handler) - } - - const removeClickHandler = (view: EditorView) => { - const handler = clickHandlerMap.get(view) - if (!handler) { - return - } - - document.removeEventListener('mousedown', handler, true) - clickHandlerMap.delete(view) - } - + view() { return { update: async (view, prevState) => { const prev = this.key?.getState(prevState) @@ -379,18 +324,9 @@ export function Suggestion({ if (handleStart) { renderer?.onStart?.(props) } - - // Install / remove click handler depending on suggestion active state - if (next.active) { - ensureClickHandler(view) - } else { - removeClickHandler(editorView) - } }, destroy: () => { - removeClickHandler(editorView) - if (!props) { return } From 3733bb94681b0d4a690ae94265248b31d02c110c Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 4 Sep 2025 01:50:21 +0200 Subject: [PATCH 337/629] Allow key handling for suggestions when ESC is pressed (#6910) * fix(suggestion): allow consumer to handle Escape key event in suggestion plugin * added changeset --- .changeset/allow-escape-keydown-handling.md | 9 +++++++++ packages/suggestion/src/suggestion.ts | 10 ++++++++++ 2 files changed, 19 insertions(+) create mode 100644 .changeset/allow-escape-keydown-handling.md diff --git a/.changeset/allow-escape-keydown-handling.md b/.changeset/allow-escape-keydown-handling.md new file mode 100644 index 0000000000..c141d1920b --- /dev/null +++ b/.changeset/allow-escape-keydown-handling.md @@ -0,0 +1,9 @@ +--- +"@tiptap/suggestion": patch +--- + +Allow consumers to handle the Escape key via `render().onKeyDown` before the suggestion plugin auto-exits. + +Previously the suggestion plugin intercepted Escape internally and immediately called `onExit`, preventing `render().onKeyDown` from receiving the event and stopping propagation. Now `render().onKeyDown` is invoked first for Escape; if it returns `true` the plugin assumes the consumer handled the event (so they can call `event.preventDefault()` / `event.stopPropagation()` and optionally call `exitSuggestion(view)` themselves). If it returns `false` (or is absent), the plugin will continue to call `onExit` and close the suggestion as before. + +This change enables scenarios where the editor is inside a modal/drawer and the consumer needs to prevent the outer UI from reacting to Escape while still controlling the suggestion's lifecycle. diff --git a/packages/suggestion/src/suggestion.ts b/packages/suggestion/src/suggestion.ts index 741bb47033..dadd70d4e2 100644 --- a/packages/suggestion/src/suggestion.ts +++ b/packages/suggestion/src/suggestion.ts @@ -459,6 +459,16 @@ export function Suggestion({ cachedNode ?? (state?.decorationId ? view.dom.querySelector(`[data-decoration-id="${state.decorationId}"]`) : null) + // Give the consumer a chance to handle Escape via onKeyDown first. + // If the consumer returns `true` we assume they handled the event and + // we won't call onExit/dispatchExit so they can both prevent + // propagation and decide whether to close the suggestion themselves. + const handledByKeyDown = renderer?.onKeyDown?.({ view, event, range: state.range }) || false + + if (handledByKeyDown) { + return true + } + const exitProps: SuggestionProps = { editor, range: state.range, From 82e1763c9a9f6c2966119c0541163e1336a99f28 Mon Sep 17 00:00:00 2001 From: Jonathan Reimer <41432658+jonathimer@users.noreply.github.com> Date: Thu, 4 Sep 2025 02:10:43 +0200 Subject: [PATCH 338/629] add Linux Foundation health badge (#6715) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d422143c37..35e98fec33 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ The Tiptap Editor is a headless, framework-agnostic rich text editor that's cust Tiptap Editor is complemented by the collaboration open-source backend [Hocuspocus](https://github.com/ueberdosis/hocuspocus). Both the Editor and Hocuspocus form the foundation of the [Tiptap Suite](https://tiptap.dev/). +[![LFX Health Score](https://insights.production.lfx.dev/api/badge/health-score?project=tiptap)](https://insights.linuxfoundation.org/project/tiptap) [![Build Status](https://github.com/ueberdosis/tiptap/actions/workflows/build.yml/badge.svg)](https://github.com/ueberdosis/tiptap/actions/workflows/build.yml) [![Version](https://img.shields.io/npm/v/@tiptap/core.svg?label=version)](https://www.npmjs.com/package/@tiptap/core) [![Downloads](https://img.shields.io/npm/dm/@tiptap/core.svg)](https://npmcharts.com/compare/@tiptap/core?minimal=true) From bf176fdbdc2b69eadb70f8654d5644ba00f6c38f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Sep 2025 02:12:38 +0200 Subject: [PATCH 339/629] build(deps): bump actions/cache from 4.2.0 to 4.2.4 (#6795) Bumps [actions/cache](https://github.com/actions/cache) from 4.2.0 to 4.2.4. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v4.2.0...v4.2.4) --- updated-dependencies: - dependency-name: actions/cache dependency-version: 4.2.4 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .github/workflows/build.yml | 8 ++++---- .github/workflows/publish.yml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b0073a1c74..965c98ae3c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -46,7 +46,7 @@ jobs: cache: 'pnpm' - name: Load turbo cache - uses: actions/cache@v4.2.3 + uses: actions/cache@v4.2.4 id: turbo-cache with: path: | @@ -92,7 +92,7 @@ jobs: steps: - uses: actions/checkout@v4.1.4 - name: Load turbo cache - uses: actions/cache@v4.2.0 + uses: actions/cache@v4.2.4 id: turbo-cache with: path: | @@ -103,7 +103,7 @@ jobs: ${{ runner.os }}-turbo-${{ github.sha }} ${{ runner.os }}-turbo- - name: Load build cache - uses: actions/cache@v4.2.0 + uses: actions/cache@v4.2.4 id: cache with: path: | @@ -185,7 +185,7 @@ jobs: cache: 'pnpm' - name: Load turbo cache - uses: actions/cache@v4.2.3 + uses: actions/cache@v4.2.4 id: turbo-cache with: path: | diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7916ec7ba0..4a4f7c8add 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -45,7 +45,7 @@ jobs: cache: 'pnpm' - name: Load turbo cache - uses: actions/cache@v4.2.3 + uses: actions/cache@v4.2.4 id: turbo-cache with: path: | From d519e4a49a0a812f14d139c50ad1192166d93317 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Sep 2025 02:12:53 +0200 Subject: [PATCH 340/629] chore(deps-dev): bump vite from 5.4.18 to 5.4.19 (#6822) Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.18 to 5.4.19. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.19/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.19/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-version: 5.4.19 dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- demos/package.json | 2 +- pnpm-lock.yaml | 315 ++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 281 insertions(+), 36 deletions(-) diff --git a/demos/package.json b/demos/package.json index 4f753b1fae..d5e44132a4 100644 --- a/demos/package.json +++ b/demos/package.json @@ -65,7 +65,7 @@ "tailwindcss": "^3.4.17", "typescript": "^5.7.2", "uuid": "^8.3.2", - "vite": "^5.4.17", + "vite": "^5.4.19", "vite-plugin-checker": "^0.6.4", "vue": "^3.5.13", "vue-router": "^4.5.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a572f087f1..e6d99842c4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -123,7 +123,7 @@ importers: version: 9.3.1(typescript@5.7.3)(webpack@5.97.1(esbuild@0.24.2)) tsup: specifier: ^8.3.5 - version: 8.3.5(jiti@2.4.2)(postcss@8.5.1)(typescript@5.7.3)(yaml@2.7.0) + version: 8.3.5(jiti@2.4.2)(postcss@8.5.6)(typescript@5.7.3)(yaml@2.7.0) turbo: specifier: 2.3.3 version: 2.3.3 @@ -247,7 +247,7 @@ importers: devDependencies: '@sveltejs/vite-plugin-svelte': specifier: 3.1.2 - version: 3.1.2(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) + version: 3.1.2(svelte@4.2.19)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) '@types/node': specifier: 22.10.3 version: 22.10.3 @@ -259,7 +259,7 @@ importers: version: 1.3.2 '@vitejs/plugin-vue': specifier: ^5.2.1 - version: 5.2.1(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))(vue@3.5.13(typescript@5.7.3)) + version: 5.2.1(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))(vue@3.5.13(typescript@5.7.3)) autoprefixer: specifier: ^10.4.20 version: 10.4.20(postcss@8.5.1) @@ -297,11 +297,11 @@ importers: specifier: ^8.3.2 version: 8.3.2 vite: - specifier: ^5.4.17 - version: 5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) + specifier: ^5.4.19 + version: 5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) vite-plugin-checker: specifier: ^0.6.4 - version: 0.6.4(eslint@8.57.1)(optionator@0.9.4)(typescript@5.7.3)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) + version: 0.6.4(eslint@8.57.1)(optionator@0.9.4)(typescript@5.7.3)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) vue: specifier: ^3.5.13 version: 3.5.13(typescript@5.7.3) @@ -1154,6 +1154,10 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} + '@babel/code-frame@7.27.1': + resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + engines: {node: '>=6.9.0'} + '@babel/compat-data@7.26.5': resolution: {integrity: sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==} engines: {node: '>=6.9.0'} @@ -1237,6 +1241,10 @@ packages: resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@7.27.1': + resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + engines: {node: '>=6.9.0'} + '@babel/helper-validator-option@7.25.9': resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} engines: {node: '>=6.9.0'} @@ -1695,6 +1703,10 @@ packages: resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==} engines: {node: '>=6.9.0'} + '@babel/runtime@7.28.3': + resolution: {integrity: sha512-9uIQ10o0WGdpP6GDhXcdOJPJuDgFtIDtN/9+ArJQ2NAfAmiuhTQdzkaTGR33v43GYS2UrSA0eX2pPPHoFVvpxA==} + engines: {node: '>=6.9.0'} + '@babel/template@7.25.9': resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} @@ -2670,96 +2682,196 @@ packages: cpu: [arm] os: [android] + '@rollup/rollup-android-arm-eabi@4.46.2': + resolution: {integrity: sha512-Zj3Hl6sN34xJtMv7Anwb5Gu01yujyE/cLBDB2gnHTAHaWS1Z38L7kuSG+oAh0giZMqG060f/YBStXtMH6FvPMA==} + cpu: [arm] + os: [android] + '@rollup/rollup-android-arm64@4.31.0': resolution: {integrity: sha512-iBbODqT86YBFHajxxF8ebj2hwKm1k8PTBQSojSt3d1FFt1gN+xf4CowE47iN0vOSdnd+5ierMHBbu/rHc7nq5g==} cpu: [arm64] os: [android] + '@rollup/rollup-android-arm64@4.46.2': + resolution: {integrity: sha512-nTeCWY83kN64oQ5MGz3CgtPx8NSOhC5lWtsjTs+8JAJNLcP3QbLCtDDgUKQc/Ro/frpMq4SHUaHN6AMltcEoLQ==} + cpu: [arm64] + os: [android] + '@rollup/rollup-darwin-arm64@4.31.0': resolution: {integrity: sha512-WHIZfXgVBX30SWuTMhlHPXTyN20AXrLH4TEeH/D0Bolvx9PjgZnn4H677PlSGvU6MKNsjCQJYczkpvBbrBnG6g==} cpu: [arm64] os: [darwin] + '@rollup/rollup-darwin-arm64@4.46.2': + resolution: {integrity: sha512-HV7bW2Fb/F5KPdM/9bApunQh68YVDU8sO8BvcW9OngQVN3HHHkw99wFupuUJfGR9pYLLAjcAOA6iO+evsbBaPQ==} + cpu: [arm64] + os: [darwin] + '@rollup/rollup-darwin-x64@4.31.0': resolution: {integrity: sha512-hrWL7uQacTEF8gdrQAqcDy9xllQ0w0zuL1wk1HV8wKGSGbKPVjVUv/DEwT2+Asabf8Dh/As+IvfdU+H8hhzrQQ==} cpu: [x64] os: [darwin] + '@rollup/rollup-darwin-x64@4.46.2': + resolution: {integrity: sha512-SSj8TlYV5nJixSsm/y3QXfhspSiLYP11zpfwp6G/YDXctf3Xkdnk4woJIF5VQe0of2OjzTt8EsxnJDCdHd2xMA==} + cpu: [x64] + os: [darwin] + '@rollup/rollup-freebsd-arm64@4.31.0': resolution: {integrity: sha512-S2oCsZ4hJviG1QjPY1h6sVJLBI6ekBeAEssYKad1soRFv3SocsQCzX6cwnk6fID6UQQACTjeIMB+hyYrFacRew==} cpu: [arm64] os: [freebsd] + '@rollup/rollup-freebsd-arm64@4.46.2': + resolution: {integrity: sha512-ZyrsG4TIT9xnOlLsSSi9w/X29tCbK1yegE49RYm3tu3wF1L/B6LVMqnEWyDB26d9Ecx9zrmXCiPmIabVuLmNSg==} + cpu: [arm64] + os: [freebsd] + '@rollup/rollup-freebsd-x64@4.31.0': resolution: {integrity: sha512-pCANqpynRS4Jirn4IKZH4tnm2+2CqCNLKD7gAdEjzdLGbH1iO0zouHz4mxqg0uEMpO030ejJ0aA6e1PJo2xrPA==} cpu: [x64] os: [freebsd] + '@rollup/rollup-freebsd-x64@4.46.2': + resolution: {integrity: sha512-pCgHFoOECwVCJ5GFq8+gR8SBKnMO+xe5UEqbemxBpCKYQddRQMgomv1104RnLSg7nNvgKy05sLsY51+OVRyiVw==} + cpu: [x64] + os: [freebsd] + '@rollup/rollup-linux-arm-gnueabihf@4.31.0': resolution: {integrity: sha512-0O8ViX+QcBd3ZmGlcFTnYXZKGbFu09EhgD27tgTdGnkcYXLat4KIsBBQeKLR2xZDCXdIBAlWLkiXE1+rJpCxFw==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-gnueabihf@4.46.2': + resolution: {integrity: sha512-EtP8aquZ0xQg0ETFcxUbU71MZlHaw9MChwrQzatiE8U/bvi5uv/oChExXC4mWhjiqK7azGJBqU0tt5H123SzVA==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.31.0': resolution: {integrity: sha512-w5IzG0wTVv7B0/SwDnMYmbr2uERQp999q8FMkKG1I+j8hpPX2BYFjWe69xbhbP6J9h2gId/7ogesl9hwblFwwg==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.46.2': + resolution: {integrity: sha512-qO7F7U3u1nfxYRPM8HqFtLd+raev2K137dsV08q/LRKRLEc7RsiDWihUnrINdsWQxPR9jqZ8DIIZ1zJJAm5PjQ==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.31.0': resolution: {integrity: sha512-JyFFshbN5xwy6fulZ8B/8qOqENRmDdEkcIMF0Zz+RsfamEW+Zabl5jAb0IozP/8UKnJ7g2FtZZPEUIAlUSX8cA==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.46.2': + resolution: {integrity: sha512-3dRaqLfcOXYsfvw5xMrxAk9Lb1f395gkoBYzSFcc/scgRFptRXL9DOaDpMiehf9CO8ZDRJW2z45b6fpU5nwjng==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-arm64-musl@4.31.0': resolution: {integrity: sha512-kpQXQ0UPFeMPmPYksiBL9WS/BDiQEjRGMfklVIsA0Sng347H8W2iexch+IEwaR7OVSKtr2ZFxggt11zVIlZ25g==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-musl@4.46.2': + resolution: {integrity: sha512-fhHFTutA7SM+IrR6lIfiHskxmpmPTJUXpWIsBXpeEwNgZzZZSg/q4i6FU4J8qOGyJ0TR+wXBwx/L7Ho9z0+uDg==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-loongarch64-gnu@4.31.0': resolution: {integrity: sha512-pMlxLjt60iQTzt9iBb3jZphFIl55a70wexvo8p+vVFK+7ifTRookdoXX3bOsRdmfD+OKnMozKO6XM4zR0sHRrQ==} cpu: [loong64] os: [linux] + '@rollup/rollup-linux-loongarch64-gnu@4.46.2': + resolution: {integrity: sha512-i7wfGFXu8x4+FRqPymzjD+Hyav8l95UIZ773j7J7zRYc3Xsxy2wIn4x+llpunexXe6laaO72iEjeeGyUFmjKeA==} + cpu: [loong64] + os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.31.0': resolution: {integrity: sha512-D7TXT7I/uKEuWiRkEFbed1UUYZwcJDU4vZQdPTcepK7ecPhzKOYk4Er2YR4uHKme4qDeIh6N3XrLfpuM7vzRWQ==} cpu: [ppc64] os: [linux] + '@rollup/rollup-linux-ppc64-gnu@4.46.2': + resolution: {integrity: sha512-B/l0dFcHVUnqcGZWKcWBSV2PF01YUt0Rvlurci5P+neqY/yMKchGU8ullZvIv5e8Y1C6wOn+U03mrDylP5q9Yw==} + cpu: [ppc64] + os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.31.0': resolution: {integrity: sha512-wal2Tc8O5lMBtoePLBYRKj2CImUCJ4UNGJlLwspx7QApYny7K1cUYlzQ/4IGQBLmm+y0RS7dwc3TDO/pmcneTw==} cpu: [riscv64] os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.46.2': + resolution: {integrity: sha512-32k4ENb5ygtkMwPMucAb8MtV8olkPT03oiTxJbgkJa7lJ7dZMr0GCFJlyvy+K8iq7F/iuOr41ZdUHaOiqyR3iQ==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-riscv64-musl@4.46.2': + resolution: {integrity: sha512-t5B2loThlFEauloaQkZg9gxV05BYeITLvLkWOkRXogP4qHXLkWSbSHKM9S6H1schf/0YGP/qNKtiISlxvfmmZw==} + cpu: [riscv64] + os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.31.0': resolution: {integrity: sha512-O1o5EUI0+RRMkK9wiTVpk2tyzXdXefHtRTIjBbmFREmNMy7pFeYXCFGbhKFwISA3UOExlo5GGUuuj3oMKdK6JQ==} cpu: [s390x] os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.46.2': + resolution: {integrity: sha512-YKjekwTEKgbB7n17gmODSmJVUIvj8CX7q5442/CK80L8nqOUbMtf8b01QkG3jOqyr1rotrAnW6B/qiHwfcuWQA==} + cpu: [s390x] + os: [linux] + '@rollup/rollup-linux-x64-gnu@4.31.0': resolution: {integrity: sha512-zSoHl356vKnNxwOWnLd60ixHNPRBglxpv2g7q0Cd3Pmr561gf0HiAcUBRL3S1vPqRC17Zo2CX/9cPkqTIiai1g==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-gnu@4.46.2': + resolution: {integrity: sha512-Jj5a9RUoe5ra+MEyERkDKLwTXVu6s3aACP51nkfnK9wJTraCC8IMe3snOfALkrjTYd2G1ViE1hICj0fZ7ALBPA==} + cpu: [x64] + os: [linux] + '@rollup/rollup-linux-x64-musl@4.31.0': resolution: {integrity: sha512-ypB/HMtcSGhKUQNiFwqgdclWNRrAYDH8iMYH4etw/ZlGwiTVxBz2tDrGRrPlfZu6QjXwtd+C3Zib5pFqID97ZA==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-musl@4.46.2': + resolution: {integrity: sha512-7kX69DIrBeD7yNp4A5b81izs8BqoZkCIaxQaOpumcJ1S/kmqNFjPhDu1LHeVXv0SexfHQv5cqHsxLOjETuqDuA==} + cpu: [x64] + os: [linux] + '@rollup/rollup-win32-arm64-msvc@4.31.0': resolution: {integrity: sha512-JuhN2xdI/m8Hr+aVO3vspO7OQfUFO6bKLIRTAy0U15vmWjnZDLrEgCZ2s6+scAYaQVpYSh9tZtRijApw9IXyMw==} cpu: [arm64] os: [win32] + '@rollup/rollup-win32-arm64-msvc@4.46.2': + resolution: {integrity: sha512-wiJWMIpeaak/jsbaq2HMh/rzZxHVW1rU6coyeNNpMwk5isiPjSTx0a4YLSlYDwBH/WBvLz+EtsNqQScZTLJy3g==} + cpu: [arm64] + os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.31.0': resolution: {integrity: sha512-U1xZZXYkvdf5MIWmftU8wrM5PPXzyaY1nGCI4KI4BFfoZxHamsIe+BtnPLIvvPykvQWlVbqUXdLa4aJUuilwLQ==} cpu: [ia32] os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.46.2': + resolution: {integrity: sha512-gBgaUDESVzMgWZhcyjfs9QFK16D8K6QZpwAaVNJxYDLHWayOta4ZMjGm/vsAEy3hvlS2GosVFlBlP9/Wb85DqQ==} + cpu: [ia32] + os: [win32] + '@rollup/rollup-win32-x64-msvc@4.31.0': resolution: {integrity: sha512-ul8rnCsUumNln5YWwz0ted2ZHFhzhRRnkpBZ+YRuHoRAlUji9KChpOUOndY7uykrPEPXVbHLlsdo6v5yXo/TXw==} cpu: [x64] os: [win32] + '@rollup/rollup-win32-x64-msvc@4.46.2': + resolution: {integrity: sha512-CvUo2ixeIQGtF6WvuB87XWqPQkoFAFqW+HUo/WzHwuHDvIwZCtjdWXoYCcr06iKGydiqTclC4jU/TNObC/xKZg==} + cpu: [x64] + os: [win32] + '@rtsao/scc@1.1.0': resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} @@ -2967,6 +3079,9 @@ packages: '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} @@ -5142,6 +5257,11 @@ packages: engines: {node: '>=16'} hasBin: true + lib0@0.2.114: + resolution: {integrity: sha512-gcxmNFzA4hv8UYi8j43uPlQ7CGcyMJ2KQb5kZASw6SnAKAf10hK12i2fjrS3Cl/ugZa5Ui6WwIu1/6MIXiHttQ==} + engines: {node: '>=16'} + hasBin: true + lib0@0.2.99: resolution: {integrity: sha512-vwztYuUf1uf/1zQxfzRfO5yzfNKhTtgOByCruuiQQxWQXnPb8Itaube5ylofcV0oM0aKal9Mv+S1s1Ky0UYP1w==} engines: {node: '>=16'} @@ -5394,6 +5514,11 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + nanoid@3.3.8: resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -5720,6 +5845,10 @@ packages: resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==} engines: {node: ^10 || ^12 || >=14} + postcss@8.5.6: + resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} + engines: {node: ^10 || ^12 || >=14} + prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -6007,6 +6136,11 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rollup@4.46.2: + resolution: {integrity: sha512-WMmLFI+Boh6xbop+OAGo9cQ3OgX9MIg7xOQjn+pTCwOkk+FNDAeAemXkJ3HzDJrVXleLOFVa1ipuc1AmEx1Dwg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + rope-sequence@1.3.4: resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} @@ -6161,6 +6295,7 @@ packages: source-map@0.8.0-beta.0: resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} engines: {node: '>= 8'} + deprecated: The work that was done in this beta branch won't be included in future versions space-separated-tokens@2.0.2: resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} @@ -6648,8 +6783,8 @@ packages: vue-tsc: optional: true - vite@5.4.18: - resolution: {integrity: sha512-1oDcnEp3lVyHCuQ2YFelM4Alm2o91xNoMncRm1U7S+JdYfYOvbiGZ3/CxGttrOu2M/KcGz7cRC2DoNUA6urmMA==} + vite@5.4.19: + resolution: {integrity: sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -6929,6 +7064,12 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 + '@babel/code-frame@7.27.1': + dependencies: + '@babel/helper-validator-identifier': 7.27.1 + js-tokens: 4.0.0 + picocolors: 1.1.1 + '@babel/compat-data@7.26.5': {} '@babel/core@7.26.0': @@ -7060,6 +7201,8 @@ snapshots: '@babel/helper-validator-identifier@7.25.9': {} + '@babel/helper-validator-identifier@7.27.1': {} + '@babel/helper-validator-option@7.25.9': {} '@babel/helper-wrap-function@7.25.9': @@ -7620,6 +7763,8 @@ snapshots: dependencies: regenerator-runtime: 0.14.1 + '@babel/runtime@7.28.3': {} + '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 @@ -8582,60 +8727,120 @@ snapshots: '@rollup/rollup-android-arm-eabi@4.31.0': optional: true + '@rollup/rollup-android-arm-eabi@4.46.2': + optional: true + '@rollup/rollup-android-arm64@4.31.0': optional: true + '@rollup/rollup-android-arm64@4.46.2': + optional: true + '@rollup/rollup-darwin-arm64@4.31.0': optional: true + '@rollup/rollup-darwin-arm64@4.46.2': + optional: true + '@rollup/rollup-darwin-x64@4.31.0': optional: true + '@rollup/rollup-darwin-x64@4.46.2': + optional: true + '@rollup/rollup-freebsd-arm64@4.31.0': optional: true + '@rollup/rollup-freebsd-arm64@4.46.2': + optional: true + '@rollup/rollup-freebsd-x64@4.31.0': optional: true + '@rollup/rollup-freebsd-x64@4.46.2': + optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.31.0': optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.46.2': + optional: true + '@rollup/rollup-linux-arm-musleabihf@4.31.0': optional: true + '@rollup/rollup-linux-arm-musleabihf@4.46.2': + optional: true + '@rollup/rollup-linux-arm64-gnu@4.31.0': optional: true + '@rollup/rollup-linux-arm64-gnu@4.46.2': + optional: true + '@rollup/rollup-linux-arm64-musl@4.31.0': optional: true + '@rollup/rollup-linux-arm64-musl@4.46.2': + optional: true + '@rollup/rollup-linux-loongarch64-gnu@4.31.0': optional: true + '@rollup/rollup-linux-loongarch64-gnu@4.46.2': + optional: true + '@rollup/rollup-linux-powerpc64le-gnu@4.31.0': optional: true + '@rollup/rollup-linux-ppc64-gnu@4.46.2': + optional: true + '@rollup/rollup-linux-riscv64-gnu@4.31.0': optional: true + '@rollup/rollup-linux-riscv64-gnu@4.46.2': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.46.2': + optional: true + '@rollup/rollup-linux-s390x-gnu@4.31.0': optional: true + '@rollup/rollup-linux-s390x-gnu@4.46.2': + optional: true + '@rollup/rollup-linux-x64-gnu@4.31.0': optional: true + '@rollup/rollup-linux-x64-gnu@4.46.2': + optional: true + '@rollup/rollup-linux-x64-musl@4.31.0': optional: true + '@rollup/rollup-linux-x64-musl@4.46.2': + optional: true + '@rollup/rollup-win32-arm64-msvc@4.31.0': optional: true + '@rollup/rollup-win32-arm64-msvc@4.46.2': + optional: true + '@rollup/rollup-win32-ia32-msvc@4.31.0': optional: true + '@rollup/rollup-win32-ia32-msvc@4.46.2': + optional: true + '@rollup/rollup-win32-x64-msvc@4.31.0': optional: true + '@rollup/rollup-win32-x64-msvc@4.46.2': + optional: true + '@rtsao/scc@1.1.0': {} '@shikijs/core@1.10.3': @@ -8677,33 +8882,33 @@ snapshots: '@shikijs/vscode-textmate@10.0.1': {} - '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))': + '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) + '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) debug: 4.4.0(supports-color@8.1.1) svelte: 4.2.19 - vite: 5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) + vite: 5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))': + '@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) + '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) debug: 4.4.0(supports-color@8.1.1) deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.17 svelte: 4.2.19 svelte-hmr: 0.16.0(svelte@4.2.19) - vite: 5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) - vitefu: 0.2.5(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) + vite: 5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) + vitefu: 0.2.5(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) transitivePeerDependencies: - supports-color '@testing-library/dom@10.4.0': dependencies: - '@babel/code-frame': 7.26.2 - '@babel/runtime': 7.26.0 + '@babel/code-frame': 7.27.1 + '@babel/runtime': 7.28.3 '@types/aria-query': 5.0.4 aria-query: 5.3.0 chalk: 4.1.2 @@ -8882,11 +9087,13 @@ snapshots: '@types/eslint@9.6.1': dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.8 '@types/json-schema': 7.0.15 '@types/estree@1.0.6': {} + '@types/estree@1.0.8': {} + '@types/hast@3.0.4': dependencies: '@types/unist': 3.0.3 @@ -9050,9 +9257,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@5.2.1(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))(vue@3.5.13(typescript@5.7.3))': + '@vitejs/plugin-vue@5.2.1(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))(vue@3.5.13(typescript@5.7.3))': dependencies: - vite: 5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) + vite: 5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) vue: 3.5.13(typescript@5.7.3) '@vue/compiler-core@3.5.13': @@ -9071,7 +9278,7 @@ snapshots: '@vue/compiler-sfc@2.7.16': dependencies: '@babel/parser': 7.26.5 - postcss: 8.5.1 + postcss: 8.5.6 source-map: 0.6.1 optionalDependencies: prettier: 2.8.8 @@ -9085,7 +9292,7 @@ snapshots: '@vue/shared': 3.5.13 estree-walker: 2.0.2 magic-string: 0.30.17 - postcss: 8.5.1 + postcss: 8.5.6 source-map-js: 1.2.1 '@vue/compiler-ssr@3.5.13': @@ -11345,6 +11552,10 @@ snapshots: dependencies: isomorphic.js: 0.2.5 + lib0@0.2.114: + dependencies: + isomorphic.js: 0.2.5 + lib0@0.2.99: dependencies: isomorphic.js: 0.2.5 @@ -11596,6 +11807,8 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 + nanoid@3.3.11: {} + nanoid@3.3.8: {} natural-compare@1.4.0: {} @@ -11872,12 +12085,12 @@ snapshots: optionalDependencies: postcss: 8.5.1 - postcss-load-config@6.0.1(jiti@2.4.2)(postcss@8.5.1)(yaml@2.7.0): + postcss-load-config@6.0.1(jiti@2.4.2)(postcss@8.5.6)(yaml@2.7.0): dependencies: lilconfig: 3.1.3 optionalDependencies: jiti: 2.4.2 - postcss: 8.5.1 + postcss: 8.5.6 yaml: 2.7.0 postcss-nested@6.2.0(postcss@8.5.1): @@ -11898,6 +12111,12 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 + postcss@8.5.6: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + prelude-ls@1.2.1: {} prettier@2.8.8: {} @@ -12250,6 +12469,32 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.31.0 fsevents: 2.3.3 + rollup@4.46.2: + dependencies: + '@types/estree': 1.0.8 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.46.2 + '@rollup/rollup-android-arm64': 4.46.2 + '@rollup/rollup-darwin-arm64': 4.46.2 + '@rollup/rollup-darwin-x64': 4.46.2 + '@rollup/rollup-freebsd-arm64': 4.46.2 + '@rollup/rollup-freebsd-x64': 4.46.2 + '@rollup/rollup-linux-arm-gnueabihf': 4.46.2 + '@rollup/rollup-linux-arm-musleabihf': 4.46.2 + '@rollup/rollup-linux-arm64-gnu': 4.46.2 + '@rollup/rollup-linux-arm64-musl': 4.46.2 + '@rollup/rollup-linux-loongarch64-gnu': 4.46.2 + '@rollup/rollup-linux-ppc64-gnu': 4.46.2 + '@rollup/rollup-linux-riscv64-gnu': 4.46.2 + '@rollup/rollup-linux-riscv64-musl': 4.46.2 + '@rollup/rollup-linux-s390x-gnu': 4.46.2 + '@rollup/rollup-linux-x64-gnu': 4.46.2 + '@rollup/rollup-linux-x64-musl': 4.46.2 + '@rollup/rollup-win32-arm64-msvc': 4.46.2 + '@rollup/rollup-win32-ia32-msvc': 4.46.2 + '@rollup/rollup-win32-x64-msvc': 4.46.2 + fsevents: 2.3.3 + rope-sequence@1.3.4: {} run-async@2.4.1: {} @@ -12716,7 +12961,7 @@ snapshots: dependencies: esbuild: 0.15.18 - tsup@8.3.5(jiti@2.4.2)(postcss@8.5.1)(typescript@5.7.3)(yaml@2.7.0): + tsup@8.3.5(jiti@2.4.2)(postcss@8.5.6)(typescript@5.7.3)(yaml@2.7.0): dependencies: bundle-require: 5.1.0(esbuild@0.24.2) cac: 6.7.14 @@ -12726,7 +12971,7 @@ snapshots: esbuild: 0.24.2 joycon: 3.1.1 picocolors: 1.1.1 - postcss-load-config: 6.0.1(jiti@2.4.2)(postcss@8.5.1)(yaml@2.7.0) + postcss-load-config: 6.0.1(jiti@2.4.2)(postcss@8.5.6)(yaml@2.7.0) resolve-from: 5.0.0 rollup: 4.31.0 source-map: 0.8.0-beta.0 @@ -12735,7 +12980,7 @@ snapshots: tinyglobby: 0.2.10 tree-kill: 1.2.2 optionalDependencies: - postcss: 8.5.1 + postcss: 8.5.6 typescript: 5.7.3 transitivePeerDependencies: - jiti @@ -12928,7 +13173,7 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-plugin-checker@0.6.4(eslint@8.57.1)(optionator@0.9.4)(typescript@5.7.3)(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)): + vite-plugin-checker@0.6.4(eslint@8.57.1)(optionator@0.9.4)(typescript@5.7.3)(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)): dependencies: '@babel/code-frame': 7.26.2 ansi-escapes: 4.3.2 @@ -12941,7 +13186,7 @@ snapshots: semver: 7.6.3 strip-ansi: 6.0.1 tiny-invariant: 1.3.3 - vite: 5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) + vite: 5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) vscode-languageclient: 7.0.0 vscode-languageserver: 7.0.0 vscode-languageserver-textdocument: 1.0.12 @@ -12951,20 +13196,20 @@ snapshots: optionator: 0.9.4 typescript: 5.7.3 - vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0): + vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0): dependencies: esbuild: 0.21.5 - postcss: 8.5.1 - rollup: 4.31.0 + postcss: 8.5.6 + rollup: 4.46.2 optionalDependencies: '@types/node': 22.10.3 fsevents: 2.3.3 sass: 1.83.4 terser: 5.37.0 - vitefu@0.2.5(vite@5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)): + vitefu@0.2.5(vite@5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)): optionalDependencies: - vite: 5.4.18(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) + vite: 5.4.19(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) vscode-jsonrpc@6.0.0: {} @@ -13165,7 +13410,7 @@ snapshots: y-prosemirror@1.3.5(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23): dependencies: - lib0: 0.2.104 + lib0: 0.2.114 prosemirror-model: 1.24.1 prosemirror-state: 1.4.3 prosemirror-view: 1.38.1 From ced9872777715d8cc8672a9ca22d3df6ea7888be Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Sep 2025 02:13:12 +0200 Subject: [PATCH 341/629] build(deps): bump actions/checkout from 4 to 5 (#6796) Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build.yml | 6 +++--- .github/workflows/publish.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 965c98ae3c..c636ebf85a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -32,7 +32,7 @@ jobs: node-version: [20] steps: - - uses: actions/checkout@v4.1.4 + - uses: actions/checkout@v5 - name: Install pnpm uses: pnpm/action-setup@v4 @@ -90,7 +90,7 @@ jobs: #- { name: "Demos/Overview", spec: "./demos/src/Overview/**/*.spec.{js,ts}" } steps: - - uses: actions/checkout@v4.1.4 + - uses: actions/checkout@v5 - name: Load turbo cache uses: actions/cache@v4.2.4 id: turbo-cache @@ -171,7 +171,7 @@ jobs: needs: test steps: - - uses: actions/checkout@v4.1.4 + - uses: actions/checkout@v5 - name: Install pnpm uses: pnpm/action-setup@v4 diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 4a4f7c8add..072a445648 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -31,7 +31,7 @@ jobs: steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Install pnpm uses: pnpm/action-setup@v4 From 11c80858e00d966aef7b4325956c74340751628b Mon Sep 17 00:00:00 2001 From: Sam Wu <24208163+samwu97@users.noreply.github.com> Date: Thu, 4 Sep 2025 08:16:21 +0800 Subject: [PATCH 342/629] add tab indentation support to code blocks (#6757) * fix: add tab indentation support to code blocks - Introduced options for enabling tab key indentation and setting tab size in CodeBlock. - Implemented handling for tab and shift+tab key events to manage indentation and reverse indentation. - Updated CodeBlockLowlight to inherit new options for consistency. * feat: add changeset file * Update .changeset/little-cups-play.md * Update .changeset/little-cups-play.md * Update .changeset/little-cups-play.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/little-cups-play.md | 10 ++ .../src/code-block-lowlight.ts | 2 + .../extension-code-block/src/code-block.ts | 119 ++++++++++++++++++ 3 files changed, 131 insertions(+) create mode 100644 .changeset/little-cups-play.md diff --git a/.changeset/little-cups-play.md b/.changeset/little-cups-play.md new file mode 100644 index 0000000000..0a7e42f5ca --- /dev/null +++ b/.changeset/little-cups-play.md @@ -0,0 +1,10 @@ +--- +'@tiptap/extension-code-block': patch +'@tiptap/extension-code-block-lowlight': patch +--- + +Added indentation support for code blocks via `Tab`. Is deactivated by default. + +**New Extension Options**: +- `enableTabIndentation: boolean` - controls if tab completion should be enabled +- `tabSize: number` - controls how many spaces are inserted for a tab diff --git a/packages/extension-code-block-lowlight/src/code-block-lowlight.ts b/packages/extension-code-block-lowlight/src/code-block-lowlight.ts index da072ad307..d06240630f 100644 --- a/packages/extension-code-block-lowlight/src/code-block-lowlight.ts +++ b/packages/extension-code-block-lowlight/src/code-block-lowlight.ts @@ -23,6 +23,8 @@ export const CodeBlockLowlight = CodeBlock.extend({ exitOnTripleEnter: true, exitOnArrowDown: true, defaultLanguage: null, + enableTabIndentation: false, + tabSize: 4, HTMLAttributes: {}, } }, diff --git a/packages/extension-code-block/src/code-block.ts b/packages/extension-code-block/src/code-block.ts index 758a24c1db..b9c846b2c6 100644 --- a/packages/extension-code-block/src/code-block.ts +++ b/packages/extension-code-block/src/code-block.ts @@ -23,6 +23,16 @@ export interface CodeBlockOptions { * @example 'js' */ defaultLanguage: string | null | undefined + /** + * Enable tab key for indentation in code blocks. + * @default false + */ + enableTabIndentation: boolean + /** + * The number of spaces to use for tab indentation. + * @default 4 + */ + tabSize: number /** * Custom HTML attributes that should be added to the rendered HTML tag. * @default {} @@ -73,6 +83,8 @@ export const CodeBlock = Node.create({ exitOnTripleEnter: true, exitOnArrowDown: true, defaultLanguage: null, + enableTabIndentation: false, + tabSize: 4, HTMLAttributes: {}, } }, @@ -168,6 +180,113 @@ export const CodeBlock = Node.create({ return false }, + // handle tab indentation + Tab: ({ editor }) => { + if (!this.options.enableTabIndentation) { + return false + } + + const { state } = editor + const { selection } = state + const { $from, empty } = selection + + if ($from.parent.type !== this.type) { + return false + } + + const indent = ' '.repeat(this.options.tabSize) + + if (empty) { + return editor.commands.insertContent(indent) + } + + return editor.commands.command(({ tr }) => { + const { from, to } = selection + const text = state.doc.textBetween(from, to, '\n', '\n') + const lines = text.split('\n') + const indentedText = lines.map(line => indent + line).join('\n') + + tr.replaceWith(from, to, state.schema.text(indentedText)) + return true + }) + }, + + // handle shift+tab reverse indentation + 'Shift-Tab': ({ editor }) => { + if (!this.options.enableTabIndentation) { + return false + } + + const { state } = editor + const { selection } = state + const { $from, empty } = selection + + if ($from.parent.type !== this.type) { + return false + } + + if (empty) { + return editor.commands.command(({ tr }) => { + const { pos } = $from + const codeBlockStart = $from.start() + const codeBlockEnd = $from.end() + + const allText = state.doc.textBetween(codeBlockStart, codeBlockEnd, '\n', '\n') + const lines = allText.split('\n') + + let currentLineIndex = 0 + let charCount = 0 + const relativeCursorPos = pos - codeBlockStart + + for (let i = 0; i < lines.length; i += 1) { + if (charCount + lines[i].length >= relativeCursorPos) { + currentLineIndex = i + break + } + charCount += lines[i].length + 1 + } + + const currentLine = lines[currentLineIndex] + const leadingSpaces = currentLine.match(/^ */)?.[0] || '' + const spacesToRemove = Math.min(leadingSpaces.length, this.options.tabSize) + + if (spacesToRemove === 0) { + return true + } + + let lineStartPos = codeBlockStart + for (let i = 0; i < currentLineIndex; i += 1) { + lineStartPos += lines[i].length + 1 + } + + tr.delete(lineStartPos, lineStartPos + spacesToRemove) + + const cursorPosInLine = pos - lineStartPos + if (cursorPosInLine <= spacesToRemove) { + tr.setSelection(TextSelection.create(tr.doc, lineStartPos)) + } + + return true + }) + } + + return editor.commands.command(({ tr }) => { + const { from, to } = selection + const text = state.doc.textBetween(from, to, '\n', '\n') + const lines = text.split('\n') + const reverseIndentText = lines + .map(line => { + const leadingSpaces = line.match(/^ */)?.[0] || '' + const spacesToRemove = Math.min(leadingSpaces.length, this.options.tabSize) + return line.slice(spacesToRemove) + }) + .join('\n') + + tr.replaceWith(from, to, state.schema.text(reverseIndentText)) + return true + }) + }, + // exit node on triple enter Enter: ({ editor }) => { if (!this.options.exitOnTripleEnter) { From ef909f15fde548c125e19a50ef446198626f8213 Mon Sep 17 00:00:00 2001 From: icode Date: Thu, 4 Sep 2025 08:17:08 +0800 Subject: [PATCH 343/629] merge `DropcursorOptions.color` type defined from `prosemirror-dropcursor` (#6688) * merge DropcursorOptions.color type defined * merge `DropcursorOptions.color` type defined from `prosemirror-dropcursor`. * Update .changeset/merge-dropcursor-options-color-type.md Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/merge-dropcursor-options-color-type.md | 5 +++++ packages/extensions/src/drop-cursor/drop-cursor.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/merge-dropcursor-options-color-type.md diff --git a/.changeset/merge-dropcursor-options-color-type.md b/.changeset/merge-dropcursor-options-color-type.md new file mode 100644 index 0000000000..1fb3cfb682 --- /dev/null +++ b/.changeset/merge-dropcursor-options-color-type.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-dropcursor': patch +--- + +Updated `DropcursorOptions.color` types to use types defined in `prosemirror-dropcursor` \ No newline at end of file diff --git a/packages/extensions/src/drop-cursor/drop-cursor.ts b/packages/extensions/src/drop-cursor/drop-cursor.ts index bb38fa78dc..40f3cd5dd9 100644 --- a/packages/extensions/src/drop-cursor/drop-cursor.ts +++ b/packages/extensions/src/drop-cursor/drop-cursor.ts @@ -3,11 +3,11 @@ import { dropCursor } from '@tiptap/pm/dropcursor' export interface DropcursorOptions { /** - * The color of the drop cursor + * The color of the drop cursor. Use `false` to apply no color and rely only on class. * @default 'currentColor' * @example 'red' */ - color: string | undefined + color?: string | false /** * The width of the drop cursor From b6c5d99f7076087ec343d717c64577363d2eca70 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 4 Sep 2025 02:22:36 +0200 Subject: [PATCH 344/629] build(deps): bump cypress-io/github-action from 6.10.1 to 6.10.2 (#6733) Bumps [cypress-io/github-action](https://github.com/cypress-io/github-action) from 6.10.1 to 6.10.2. - [Release notes](https://github.com/cypress-io/github-action/releases) - [Changelog](https://github.com/cypress-io/github-action/blob/master/CHANGELOG.md) - [Commits](https://github.com/cypress-io/github-action/compare/v6.10.1...v6.10.2) --- updated-dependencies: - dependency-name: cypress-io/github-action dependency-version: 6.10.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c636ebf85a..48caadff28 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -135,7 +135,7 @@ jobs: - name: Test ${{ matrix.test-spec.name }} id: cypress - uses: cypress-io/github-action@v6.10.1 + uses: cypress-io/github-action@v6.10.2 with: cache-key: ${{ runner.os }}-node-${{ matrix.node-version }}-${{ hashFiles('**/pnpm-lock.yaml') }} start: pnpm run serve From ad51daae0cef5b04f3bd88f1000fef6efb491d2a Mon Sep 17 00:00:00 2001 From: Nick Perez Date: Thu, 4 Sep 2025 02:25:03 +0200 Subject: [PATCH 345/629] feat: add events `mount` & `unmount` (#6683) * feat: add events for `mount` and `unmount` * feat: add the `onMount` and `onUnMount` to `EditorOptions` --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/new-impalas-notice.md | 5 +++++ packages/core/src/Editor.ts | 6 ++++++ packages/core/src/types.ts | 20 ++++++++++++++++++++ 3 files changed, 31 insertions(+) create mode 100644 .changeset/new-impalas-notice.md diff --git a/.changeset/new-impalas-notice.md b/.changeset/new-impalas-notice.md new file mode 100644 index 0000000000..ed5a6907f9 --- /dev/null +++ b/.changeset/new-impalas-notice.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': minor +--- + +Add `mount` and `unmount` events to the `Editor` instance for tracking mounts and unmounts diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 622dd19131..16cd7dd312 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -95,6 +95,8 @@ export class Editor extends EventEmitter { emitContentError: false, onBeforeCreate: () => null, onCreate: () => null, + onMount: () => null, + onUnmount: () => null, onUpdate: () => null, onSelectionUpdate: () => null, onTransaction: () => null, @@ -117,6 +119,8 @@ export class Editor extends EventEmitter { this.createSchema() this.on('beforeCreate', this.options.onBeforeCreate) this.emit('beforeCreate', { editor: this }) + this.on('mount', this.options.onMount) + this.on('unmount', this.options.onUnmount) this.on('contentError', this.options.onContentError) this.on('create', this.options.onCreate) this.on('update', this.options.onUpdate) @@ -154,6 +158,7 @@ export class Editor extends EventEmitter { ) } this.createView(el) + this.emit('mount', { editor: this }) window.setTimeout(() => { if (this.isDestroyed) { @@ -197,6 +202,7 @@ export class Editor extends EventEmitter { } } this.css = null + this.emit('unmount', { editor: this }) } /** diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index d63181b48c..e5a395d23a 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -39,6 +39,18 @@ export type MaybeThisParameterType = Exclude extends (...args: any) => any ? ThisParameterType> : any export interface EditorEvents { + mount: { + /** + * The editor instance + */ + editor: Editor + } + unmount: { + /** + * The editor instance + */ + editor: Editor + } beforeCreate: { /** * The editor instance @@ -371,6 +383,14 @@ export interface EditorOptions { * Called after the editor is constructed. */ onCreate: (props: EditorEvents['create']) => void + /** + * Called when the editor is mounted. + */ + onMount: (props: EditorEvents['mount']) => void + /** + * Called when the editor is unmounted. + */ + onUnmount: (props: EditorEvents['unmount']) => void /** * Called when the editor encounters an error while parsing the content. * Only enabled if `enableContentCheck` is `true`. From fff4619ff0fb84d8cc2ef2cafaecb14c8e5a7c1c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 4 Sep 2025 02:32:10 +0200 Subject: [PATCH 346/629] chore(release): publish a new release version (#6911) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/allow-escape-keydown-handling.md | 9 ----- .../fix-can-toggle-mark-in-code-block.md | 7 ---- .changeset/friendly-rules-refuse.md | 5 --- .changeset/little-cups-play.md | 10 ------ .../merge-dropcursor-options-color-type.md | 5 --- .changeset/moody-trees-rescue.md | 5 --- .changeset/new-impalas-notice.md | 5 --- .../remove-suggestion-document-handler.md | 14 -------- .changeset/serious-tools-hear.md | 5 --- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 7 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 14 ++++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 8 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 9 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 18 ++++++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 16 +++++++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 8 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 9 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 11 +++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 8 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 10 ++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 11 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 12 +++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 10 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 9 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 8 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 8 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 8 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 9 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 8 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 10 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 8 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 9 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 9 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 9 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 12 +++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 9 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 8 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 8 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 9 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 9 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 9 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 9 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 8 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 8 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 8 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 8 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 8 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 9 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 8 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 9 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 9 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 9 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 33 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 9 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 26 +++++++++++++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 9 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 9 +++++ packages/vue-3/package.json | 2 +- 147 files changed, 689 insertions(+), 134 deletions(-) delete mode 100644 .changeset/allow-escape-keydown-handling.md delete mode 100644 .changeset/fix-can-toggle-mark-in-code-block.md delete mode 100644 .changeset/friendly-rules-refuse.md delete mode 100644 .changeset/little-cups-play.md delete mode 100644 .changeset/merge-dropcursor-options-color-type.md delete mode 100644 .changeset/moody-trees-rescue.md delete mode 100644 .changeset/new-impalas-notice.md delete mode 100644 .changeset/remove-suggestion-document-handler.md delete mode 100644 .changeset/serious-tools-hear.md diff --git a/.changeset/allow-escape-keydown-handling.md b/.changeset/allow-escape-keydown-handling.md deleted file mode 100644 index c141d1920b..0000000000 --- a/.changeset/allow-escape-keydown-handling.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -"@tiptap/suggestion": patch ---- - -Allow consumers to handle the Escape key via `render().onKeyDown` before the suggestion plugin auto-exits. - -Previously the suggestion plugin intercepted Escape internally and immediately called `onExit`, preventing `render().onKeyDown` from receiving the event and stopping propagation. Now `render().onKeyDown` is invoked first for Escape; if it returns `true` the plugin assumes the consumer handled the event (so they can call `event.preventDefault()` / `event.stopPropagation()` and optionally call `exitSuggestion(view)` themselves). If it returns `false` (or is absent), the plugin will continue to call `onExit` and close the suggestion as before. - -This change enables scenarios where the editor is inside a modal/drawer and the consumer needs to prevent the outer UI from reacting to Escape while still controlling the suggestion's lifecycle. diff --git a/.changeset/fix-can-toggle-mark-in-code-block.md b/.changeset/fix-can-toggle-mark-in-code-block.md deleted file mode 100644 index f92ad53209..0000000000 --- a/.changeset/fix-can-toggle-mark-in-code-block.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Fix `can().toggleMark()` returning incorrect result when cursor is inside nodes that disallow marks - -Fixed an issue where `can().toggleMark('bold')` incorrectly returned `true` when the cursor was positioned inside a code block (with no selection), even though marks are not allowed in code blocks. The method now correctly returns `false` in this scenario by checking if the parent node allows the mark type when the selection is a cursor. diff --git a/.changeset/friendly-rules-refuse.md b/.changeset/friendly-rules-refuse.md deleted file mode 100644 index f3332fef56..0000000000 --- a/.changeset/friendly-rules-refuse.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-details": patch ---- - -Fixed an issue where the input method editor (IME) failed to handle Chinese text correctly when entering the first word. Users can now input multiple words as expected. diff --git a/.changeset/little-cups-play.md b/.changeset/little-cups-play.md deleted file mode 100644 index 0a7e42f5ca..0000000000 --- a/.changeset/little-cups-play.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@tiptap/extension-code-block': patch -'@tiptap/extension-code-block-lowlight': patch ---- - -Added indentation support for code blocks via `Tab`. Is deactivated by default. - -**New Extension Options**: -- `enableTabIndentation: boolean` - controls if tab completion should be enabled -- `tabSize: number` - controls how many spaces are inserted for a tab diff --git a/.changeset/merge-dropcursor-options-color-type.md b/.changeset/merge-dropcursor-options-color-type.md deleted file mode 100644 index 1fb3cfb682..0000000000 --- a/.changeset/merge-dropcursor-options-color-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-dropcursor': patch ---- - -Updated `DropcursorOptions.color` types to use types defined in `prosemirror-dropcursor` \ No newline at end of file diff --git a/.changeset/moody-trees-rescue.md b/.changeset/moody-trees-rescue.md deleted file mode 100644 index 23f0f4780d..0000000000 --- a/.changeset/moody-trees-rescue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-drag-handle-vue-2': patch ---- - -Use factory function for object default value as required by vue 2. diff --git a/.changeset/new-impalas-notice.md b/.changeset/new-impalas-notice.md deleted file mode 100644 index ed5a6907f9..0000000000 --- a/.changeset/new-impalas-notice.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': minor ---- - -Add `mount` and `unmount` events to the `Editor` instance for tracking mounts and unmounts diff --git a/.changeset/remove-suggestion-document-handler.md b/.changeset/remove-suggestion-document-handler.md deleted file mode 100644 index 7013e37d21..0000000000 --- a/.changeset/remove-suggestion-document-handler.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -"@tiptap/suggestion": patch ---- - -Remove the global document `mousedown` handler that closed suggestion popups when clicking outside. - -Previously the suggestion plugin listened for document `mousedown` events and closed suggestion UIs when the user clicked outside the editor or suggestion portal. That behavior has been removed to avoid framework-specific coupling (for example reliance on `.react-renderer`) and related compatibility issues. - -Now suggestions are closed via other signals: - -- pressing Escape (unchanged) -- selection/cursor changes -- renderer.onExit (renderers can call this) -- programmatic calls to `exitSuggestion(view)` diff --git a/.changeset/serious-tools-hear.md b/.changeset/serious-tools-hear.md deleted file mode 100644 index 4149a284a3..0000000000 --- a/.changeset/serious-tools-hear.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-drag-handle-vue-2": patch ---- - -Fixed a bug that would cause Vue 2 to throw errors in console because Vue 2 expects factory functions for prop defaults diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index aac7c0f553..7c4e440abb 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extensions@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index ffdbd6007b..6e7970e1eb 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index e89562809b..b46f75dfaa 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- ef909f1: Updated `DropcursorOptions.color` types to use types defined in `prosemirror-dropcursor` + - @tiptap/extensions@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index ef63204b4a..e41df32488 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index f40aefa447..a9fe975ea9 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extensions@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 6b336debd6..683c63ddd4 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index ce56f6c638..e654cbd9aa 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extensions@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 3b884b7481..f482857e2b 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index f983a48dc1..d518076965 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extensions@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index c346e2f41f..b8d0ae84f4 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 97d2609c47..4f38d8077a 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-list@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index fbdadce676..f4893dcbc7 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 6445363240..0404401c77 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-list@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 7b9170861e..d1c970eb67 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index d27b327cfe..2402c09710 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extensions@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index fe7d25053e..4ea262408d 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 828f4f1999..637feee238 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-table@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index ea015db64a..7844c4a258 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 1060db16bd..89a5b26610 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-table@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index ec97605422..c5119ff42d 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 835b65928f..92117f41fa 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-table@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 89258ad636..a3505eabf9 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 9b438aead9..cf498c5d19 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-list@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 5eebabf677..53c4d9aa13 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index ee8b5273d5..bfa396a07b 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-list@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 52ba08179e..82d11b98bb 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index e51ed5c228..a0ae81ac0b 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,19 @@ # Change Log +## 3.4.0 + +### Minor Changes + +- ad51daa: Add `mount` and `unmount` events to the `Editor` instance for tracking mounts and unmounts + +### Patch Changes + +- 895c73f: Fix `can().toggleMark()` returning incorrect result when cursor is inside nodes that disallow marks + + Fixed an issue where `can().toggleMark('bold')` incorrectly returned `true` when the cursor was positioned inside a code block (with no selection), even though marks are not allowed in code blocks. The method now correctly returns `false` in this scenario by checking if the parent node allows the mark type when the selection is a cursor. + + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index af1fabf659..cf3ee0cce5 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index b847c3352f..1c0f1b6a66 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 829bf3fee4..49e362d32a 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 880c9fb6cd..1ffbb754b4 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index c0255260e7..9a86b658a1 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 35ad939dbc..3471b20b1f 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 15ab29c010..be69b73d6b 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index ff33cf3c1a..3d2fe4a7fc 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-list@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 5052104809..0939391dfe 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 4b0c5c7b72..450bfe0e12 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,23 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- 11c8085: Added indentation support for code blocks via `Tab`. Is deactivated by default. + + **New Extension Options**: + + - `enableTabIndentation: boolean` - controls if tab completion should be enabled + - `tabSize: number` - controls how many spaces are inserted for a tab + +- Updated dependencies [895c73f] +- Updated dependencies [11c8085] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/extension-code-block@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index af243bb4f2..edf91bd715 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index ea737a8744..add8e3b68a 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,21 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- 11c8085: Added indentation support for code blocks via `Tab`. Is deactivated by default. + + **New Extension Options**: + + - `enableTabIndentation: boolean` - controls if tab completion should be enabled + - `tabSize: number` - controls how many spaces are inserted for a tab + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index e71db9e3e0..00c4d431bc 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index e06b5c4534..6eba55ce56 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 80ea10fec4..549e4acb93 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index bebcccd3d8..5837984f19 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 2d1d09e2db..9708da2954 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index ed7cc8d0d2..c9599d7c98 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 989f129e4a..acb41f80e6 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 0938793a1a..c118b40cda 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index a3e48b3d52..7df6291f2f 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index c82b28ec44..a41926bea5 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-details +## 3.4.0 + +### Patch Changes + +- d3773c7: Fixed an issue where the input method editor (IME) failed to handle Chinese text correctly when entering the first word. Users can now input multiple words as expected. +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/extension-text-style@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 053697ddc3..059ddf1d51 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 994a7e0feb..e9a2565ea6 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 4d987bf9ce..b153487f0c 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 227131f3de..23653e0446 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.4.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.4.0 +- @tiptap/react@3.4.0 +- @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index b9dd6ed649..b7f8b34f59 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 3237127607..16e38be121 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.4.0 + +### Patch Changes + +- 2cb08d3: Use factory function for object default value as required by vue 2. +- 2cb08d3: Fixed a bug that would cause Vue 2 to throw errors in console because Vue 2 expects factory functions for prop defaults + - @tiptap/extension-drag-handle@3.4.0 + - @tiptap/vue-2@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 71beb675cb..b134acc796 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index d9cf9db6b8..0a91da8010 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.4.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.4.0 +- @tiptap/vue-3@3.4.0 +- @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 8bf039962d..78ef388f63 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 04a3a55c6a..3f81739203 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-drag-handle +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/extension-collaboration@3.4.0 + - @tiptap/extension-node-range@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index f42983bc0b..c27e8751fd 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index fd8ef98c09..f9596c13ad 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/extension-emoji +## 3.4.0 + +### Patch Changes + +- Updated dependencies [3733bb9] +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] +- Updated dependencies [90cbed5] + - @tiptap/suggestion@3.4.0 + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 8423073a36..b1433c0800 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 5c4ddab999..ca6d95d68e 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-file-handler +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/extension-text-style@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index c82a566889..5bef40b666 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 59403505f2..e8b80bc8c8 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 22ba08ef1b..b435f31c33 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 1cd98700c5..f26b0d07dc 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 633bc036a2..8121dd0fc0 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index a18138a82a..bb8435e9ce 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index f5ce76af5d..66187bb155 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 12fa4b7f85..7ed7afce40 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 31c6f3db44..0ed1e3c57d 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 3c1ae5f1d3..c92e633e86 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index be19d1dee8..e648182ec2 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 52b174772b..5e618f4438 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 2ca3b317a6..6d7cc61fe2 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index f2f20715f9..b66c7d5167 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 5235f4bc20..20dd32ccaa 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index ca7ed67822..c7d72e4013 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-invisible-characters +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/extension-text-style@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 5b95d7e810..cd2e959c71 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 9cd4cbac83..bd3d72cf5f 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 2a6a6fd13c..7c2644a812 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index a8a6a7e134..47234218e1 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index ca7d3d97d5..fc0b3c55cb 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index b4c9dac980..e5ab5fc2b6 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 01c9382a3d..076b75b842 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 9dab21adbc..12fe8ccc7f 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-mathematics +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 7fe95e71e8..8868aea17d 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 514a30d1fa..8ff34e88be 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [3733bb9] +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] +- Updated dependencies [90cbed5] + - @tiptap/suggestion@3.4.0 + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 3c870358d4..c636db9134 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index b66097886e..65d270ec5e 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-node-range +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 4836298e9c..c9f2e7d826 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index f80e26348d..6b0c7d71ee 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- @tiptap/extension-list@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index ada7d7aaa1..3da75e2541 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 307981e84a..8efa4380e3 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index f9bafb2546..0af6f49cff 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index c4593c1924..5b844a63ae 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index c18333a962..851a9607e5 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index b70fd711c1..4bb007073c 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 8aa6c24f9d..ade635fa91 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index dbe4f70181..50bd653a23 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 05991ffc3b..ea9587bdaa 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 7e05566119..0db5c3d5b0 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-table-of-contents +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index d552aef74c..c102f39b33 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 3b5b84295e..4e724824f3 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 3f1991a2da..f01df6a794 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index b925acac04..38a03a0e63 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index bc94dceed6..5273c93232 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 6865ac704c..cdb4ea6541 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 68b63c9987..2b18e238d0 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 85e5f4a712..2302342286 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 178e15b423..57a6499d5e 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 7156ca7f2f..3d3fb6de3d 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index eb56924986..87a4ad4942 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 4300bfe5d2..f172d374d7 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 4cbe7e6d9e..e1eef34bbf 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 9bff91e3aa..6a734de32e 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-unique-id +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 295602f39b..36b9a19031 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 6ee56732b5..47c7bcaedc 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 12c7cb0a7e..f2142353a5 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index dfb2e42715..29cd7e1e1e 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index fcce1f8920..88bd6500a7 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index d7a27b8753..47a88f4734 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 26d79d221a..6a8b4739c9 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index ba075faf85..0fc66e59e0 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.4.0 + ## 3.3.1 ## 3.3.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index 3b8d8d8ff2..45f31a9d1b 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 57229c8663..3dc69da3c1 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 21b7f7132b..1962eedd27 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 2f42f8b63e..5883240bec 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,38 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [11c8085] +- Updated dependencies [ef909f1] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/extension-code-block@3.4.0 + - @tiptap/extension-dropcursor@3.4.0 + - @tiptap/extension-blockquote@3.4.0 + - @tiptap/extension-bold@3.4.0 + - @tiptap/extension-code@3.4.0 + - @tiptap/extension-document@3.4.0 + - @tiptap/extension-hard-break@3.4.0 + - @tiptap/extension-heading@3.4.0 + - @tiptap/extension-horizontal-rule@3.4.0 + - @tiptap/extension-italic@3.4.0 + - @tiptap/extension-link@3.4.0 + - @tiptap/extension-list@3.4.0 + - @tiptap/extension-paragraph@3.4.0 + - @tiptap/extension-strike@3.4.0 + - @tiptap/extension-text@3.4.0 + - @tiptap/extension-underline@3.4.0 + - @tiptap/extensions@3.4.0 + - @tiptap/extension-list-item@3.4.0 + - @tiptap/extension-list-keymap@3.4.0 + - @tiptap/extension-bullet-list@3.4.0 + - @tiptap/extension-ordered-list@3.4.0 + - @tiptap/extension-gapcursor@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 84105d4bfd..2fc002b9bc 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index caeb566875..6bf9b81984 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 0b0d2a05d3..e786838240 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 2dfa8a78bb..c517a4f65b 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,31 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- 3733bb9: Allow consumers to handle the Escape key via `render().onKeyDown` before the suggestion plugin auto-exits. + + Previously the suggestion plugin intercepted Escape internally and immediately called `onExit`, preventing `render().onKeyDown` from receiving the event and stopping propagation. Now `render().onKeyDown` is invoked first for Escape; if it returns `true` the plugin assumes the consumer handled the event (so they can call `event.preventDefault()` / `event.stopPropagation()` and optionally call `exitSuggestion(view)` themselves). If it returns `false` (or is absent), the plugin will continue to call `onExit` and close the suggestion as before. + + This change enables scenarios where the editor is inside a modal/drawer and the consumer needs to prevent the outer UI from reacting to Escape while still controlling the suggestion's lifecycle. + +- 90cbed5: Remove the global document `mousedown` handler that closed suggestion popups when clicking outside. + + Previously the suggestion plugin listened for document `mousedown` events and closed suggestion UIs when the user clicked outside the editor or suggestion portal. That behavior has been removed to avoid framework-specific coupling (for example reliance on `.react-renderer`) and related compatibility issues. + + Now suggestions are closed via other signals: + + - pressing Escape (unchanged) + - selection/cursor changes + - renderer.onExit (renderers can call this) + - programmatic calls to `exitSuggestion(view)` + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 11deb0c655..346929e0b5 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 39c48c68fa..730726ff8f 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index bb63633561..c2fd6c3672 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index ec2934b749..6fbaeeba5b 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.0 + +### Patch Changes + +- Updated dependencies [895c73f] +- Updated dependencies [ad51daa] + - @tiptap/core@3.4.0 + - @tiptap/pm@3.4.0 + ## 3.3.1 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 121a4f8683..8628f64286 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.3.1", + "version": "3.4.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 46fa8b88711767ab6dcc0512bc77d2e4bf57a3cd Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 4 Sep 2025 10:31:00 +0200 Subject: [PATCH 347/629] Preserve color formats for the background-color and color extension (#6907) * feat(extension-text-style): preserve inline color formats when parsing HTML * add changeset * Update packages/extension-text-style/src/color/color.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update packages/extension-text-style/src/background-color/background-color.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: update color and background-color style handling to prioritize child declarations --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/preserve-inline-color-format.md | 28 +++++++++++++++ .../BackgroundColor/React/index.tsx | 1 + .../Extensions/BackgroundColor/Vue/index.vue | 3 +- demos/src/Extensions/Color/React/index.tsx | 2 +- demos/src/Extensions/Color/Vue/index.vue | 2 +- demos/src/Marks/TextStyle/React/index.jsx | 2 +- demos/src/Marks/TextStyle/React/index.spec.js | 30 ++++++++-------- demos/src/Marks/TextStyle/Vue/index.spec.js | 30 ++++++++-------- demos/src/Marks/TextStyle/Vue/index.vue | 2 +- .../src/background-color/background-color.ts | 28 ++++++++++++++- .../extension-text-style/src/color/color.ts | 28 ++++++++++++++- .../extensions/background-color.spec.ts | 36 +++++++++++++++++++ .../integration/extensions/color.spec.ts | 36 +++++++++++++++++++ 13 files changed, 191 insertions(+), 37 deletions(-) create mode 100644 .changeset/preserve-inline-color-format.md create mode 100644 tests/cypress/integration/extensions/background-color.spec.ts create mode 100644 tests/cypress/integration/extensions/color.spec.ts diff --git a/.changeset/preserve-inline-color-format.md b/.changeset/preserve-inline-color-format.md new file mode 100644 index 0000000000..1bba31ccd8 --- /dev/null +++ b/.changeset/preserve-inline-color-format.md @@ -0,0 +1,28 @@ +--- +"@tiptap/extension-text-style": patch +--- + +Prefer the raw inline `style` attribute when parsing `color` and +`background-color` so the original format (hex, rgba/hsla, etc.) is +preserved instead of falling back to the computed `element.style.*` +value (which often resolves to `rgb(...)`). + +This fixes mismatches where consumers (for example, demo toolbars and +color pickers) expected the original hex values when initializing the +editor from HTML. + +- The `color` and `background-color` parsers now look for a `style` + attribute first and extract the declared value. If no raw style is + present, they still fall back to `element.style.color` / + `element.style.backgroundColor`. + +MIGRATION NOTES +- This is a patch-level change. It corrects parsing behavior and is the + least-disruptive fix for the issue. +- If your code relied on the parser returning computed `rgb(...)` + strings, you may see different string values (for example `#958DF1` + instead of `rgb(149, 141, 241)`) when HTML contained hex values. +- If you need a stable, normalized format for comparisons, normalize the + attribute (for example with a color utility like `tinycolor2`) before + comparing or use the editor APIs in a way that doesn't depend on the + exact string representation. diff --git a/demos/src/Extensions/BackgroundColor/React/index.tsx b/demos/src/Extensions/BackgroundColor/React/index.tsx index 12832582e2..dd2daa6e24 100644 --- a/demos/src/Extensions/BackgroundColor/React/index.tsx +++ b/demos/src/Extensions/BackgroundColor/React/index.tsx @@ -12,6 +12,7 @@ export default () => { extensions: [Document, Paragraph, Text, TextStyle, BackgroundColor], content: `

Oh, for some reason that’s purple.

+

Oh, for some reason that’s purple but with rgba.

`, }) diff --git a/demos/src/Extensions/BackgroundColor/Vue/index.vue b/demos/src/Extensions/BackgroundColor/Vue/index.vue index d1c8efe6d1..133ba49603 100644 --- a/demos/src/Extensions/BackgroundColor/Vue/index.vue +++ b/demos/src/Extensions/BackgroundColor/Vue/index.vue @@ -88,7 +88,8 @@ export default { this.editor = new Editor({ extensions: [Document, Paragraph, Text, TextStyle, BackgroundColor], content: ` -

Oh, for some reason that's purple.

+

Oh, for some reason that’s purple.

+

Oh, for some reason that’s purple but with rgba.

`, }) }, diff --git a/demos/src/Extensions/Color/React/index.tsx b/demos/src/Extensions/Color/React/index.tsx index 5e94d9b926..a945f0c329 100644 --- a/demos/src/Extensions/Color/React/index.tsx +++ b/demos/src/Extensions/Color/React/index.tsx @@ -11,7 +11,7 @@ export default () => { const editor = useEditor({ extensions: [Document, Paragraph, Text, TextStyle, Color], content: ` -

Oh, for some reason that’s purple.

+

Oh, for some reason that’s purple. This text is using transparent, red rgba colors.

`, }) diff --git a/demos/src/Extensions/Color/Vue/index.vue b/demos/src/Extensions/Color/Vue/index.vue index 98cd7d690a..6a66463213 100644 --- a/demos/src/Extensions/Color/Vue/index.vue +++ b/demos/src/Extensions/Color/Vue/index.vue @@ -78,7 +78,7 @@ export default { this.editor = new Editor({ extensions: [Document, Paragraph, Text, TextStyle, Color], content: ` -

Oh, for some reason that’s purple.

+

Oh, for some reason that’s purple. This text is using transparent, red rgba colors.

`, }) }, diff --git a/demos/src/Marks/TextStyle/React/index.jsx b/demos/src/Marks/TextStyle/React/index.jsx index cc6c4059d8..fd283cd234 100644 --- a/demos/src/Marks/TextStyle/React/index.jsx +++ b/demos/src/Marks/TextStyle/React/index.jsx @@ -39,7 +39,7 @@ export default () => {

green serif - red serif + red serif

diff --git a/demos/src/Marks/TextStyle/React/index.spec.js b/demos/src/Marks/TextStyle/React/index.spec.js index 31a43056cb..c92bb3aef1 100644 --- a/demos/src/Marks/TextStyle/React/index.spec.js +++ b/demos/src/Marks/TextStyle/React/index.spec.js @@ -8,49 +8,49 @@ context('/src/Marks/TextStyle/React/', () => { cy.get('.tiptap > p:nth-child(4) > span') .should('have.length', 1) .and('have.text', 'red serif') - .and('have.attr', 'style', 'color: rgb(255, 0, 0); font-family: serif') + .and('have.attr', 'style', 'color: #FF0000; font-family: serif') }) it('should merge styles of a span with one nested child span into the descendant span', () => { cy.get('.tiptap > p:nth-child(5) > span') .should('have.length', 1) .and('have.text', 'blue serif') - .and('have.attr', 'style', 'color: rgb(0, 0, 255); font-family: serif') + .and('have.attr', 'style', 'color: #0000FF; font-family: serif') }) it('should merge styles of a span with multiple child spans into all child spans', () => { cy.get('.tiptap > p:nth-child(6) > span').should('have.length', 2) cy.get('.tiptap > p:nth-child(6) > span:nth-child(1)') .should('have.text', 'green serif ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0); font-family: serif') + .and('have.attr', 'style', 'color: #00FF00; font-family: serif') cy.get('.tiptap > p:nth-child(6) > span:nth-child(2)') .should('have.text', 'red serif') - .and('have.attr', 'style', 'color: rgb(255, 0, 0); font-family: serif') + .and('have.attr', 'style', 'color: #FF0000; font-family: serif') }) it('should merge styles of descendant spans into each descendant span when the parent span has no style', () => { cy.get('.tiptap > p:nth-child(7) > span').should('have.length', 4) cy.get('.tiptap > p:nth-child(7) > span:nth-child(1)') .should('have.text', 'blue') - .and('have.attr', 'style', 'color: rgb(0, 0, 255)') + .and('have.attr', 'style', 'color: #0000FF') cy.get('.tiptap > p:nth-child(7) > span:nth-child(2)') .should('have.text', 'green ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0)') + .and('have.attr', 'style', 'color: #00FF00') cy.get('.tiptap > p:nth-child(7) > span:nth-child(3)') .should('have.text', 'green serif') - .and('have.attr', 'style', 'color: rgb(0, 255, 0); font-family: serif') + .and('have.attr', 'style', 'color: #00FF00; font-family: serif') }) it('should merge styles of a span with nested root text and descendant spans into each descendant span', () => { cy.get('.tiptap > p:nth-child(8) > span').should('have.length', 4) cy.get('.tiptap > p:nth-child(8) > span:nth-child(1)') .should('have.text', 'blue ') - .and('have.attr', 'style', 'color: rgb(0, 0, 255)') + .and('have.attr', 'style', 'color: #0000FF') cy.get('.tiptap > p:nth-child(8) > span:nth-child(2)') .should('have.text', 'green ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0)') + .and('have.attr', 'style', 'color: #00FF00') cy.get('.tiptap > p:nth-child(8) > span:nth-child(3)') .should('have.text', 'green serif ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0); font-family: serif') + .and('have.attr', 'style', 'color: #00FF00; font-family: serif') cy.get('.tiptap > p:nth-child(8) > span:nth-child(4)') .should('have.text', 'blue serif') - .and('have.attr', 'style', 'color: rgb(0, 0, 255); font-family: serif') + .and('have.attr', 'style', 'color: #0000FF; font-family: serif') }) it('should merge styles of descendant spans into each descendant span when the parent span has other tags', () => { cy.get('.tiptap > p:nth-child(9) > span').should('have.length', 4) @@ -59,22 +59,22 @@ context('/src/Marks/TextStyle/React/', () => { .and('have.text', 'strong ') cy.get('.tiptap > p:nth-child(9) > span:nth-child(2)') .should('have.text', 'strong blue ') - .and('have.attr', 'style', 'color: rgb(0, 0, 255)') + .and('have.attr', 'style', 'color: #0000FF') .find('strong') .should('exist') cy.get('.tiptap > p:nth-child(9) > span:nth-child(3)') .should('have.text', 'strong blue serif ') - .and('have.attr', 'style', 'color: rgb(0, 0, 255); font-family: serif; font-size: 24px') + .and('have.attr', 'style', 'color: #0000FF; font-family: serif; font-size: 24px') .find('strong') .should('exist') cy.get('.tiptap > p:nth-child(9) > span:nth-child(4)') .should('have.text', 'strong green ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0)') + .and('have.attr', 'style', 'color: #00FF00') .find('strong') .should('exist') cy.get('.tiptap > p:nth-child(9) > span:nth-child(5)') .should('have.text', 'strong green serif') - .and('have.attr', 'style', 'color: rgb(0, 255, 0); font-family: serif') + .and('have.attr', 'style', 'color: #00FF00; font-family: serif') .find('strong') .should('exist') }) diff --git a/demos/src/Marks/TextStyle/Vue/index.spec.js b/demos/src/Marks/TextStyle/Vue/index.spec.js index 4511098875..8bedf5707b 100644 --- a/demos/src/Marks/TextStyle/Vue/index.spec.js +++ b/demos/src/Marks/TextStyle/Vue/index.spec.js @@ -8,49 +8,49 @@ context('/src/Marks/TextStyle/Vue/', () => { cy.get('.tiptap > p:nth-child(4) > span') .should('have.length', 1) .and('have.text', 'red serif') - .and('have.attr', 'style', 'color: rgb(255, 0, 0); font-family: serif') + .and('have.attr', 'style', 'color: #FF0000; font-family: serif') }) it('should merge styles of a span with one nested child span into the descendant span', () => { cy.get('.tiptap > p:nth-child(5) > span') .should('have.length', 1) .and('have.text', 'blue serif') - .and('have.attr', 'style', 'color: rgb(0, 0, 255); font-family: serif') + .and('have.attr', 'style', 'color: #0000FF; font-family: serif') }) it('should merge styles of a span with multiple child spans into all child spans', () => { cy.get('.tiptap > p:nth-child(6) > span').should('have.length', 2) cy.get('.tiptap > p:nth-child(6) > span:nth-child(1)') .should('have.text', 'green serif ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0); font-family: serif') + .and('have.attr', 'style', 'color: #00FF00; font-family: serif') cy.get('.tiptap > p:nth-child(6) > span:nth-child(2)') .should('have.text', 'red serif') - .and('have.attr', 'style', 'color: rgb(255, 0, 0); font-family: serif') + .and('have.attr', 'style', 'color: #FF0000; font-family: serif') }) it('should merge styles of descendant spans into each descendant span when the parent span has no style', () => { cy.get('.tiptap > p:nth-child(7) > span').should('have.length', 4) cy.get('.tiptap > p:nth-child(7) > span:nth-child(1)') .should('have.text', 'blue') - .and('have.attr', 'style', 'color: rgb(0, 0, 255)') + .and('have.attr', 'style', 'color: #0000FF') cy.get('.tiptap > p:nth-child(7) > span:nth-child(2)') .should('have.text', 'green ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0)') + .and('have.attr', 'style', 'color: #00FF00') cy.get('.tiptap > p:nth-child(7) > span:nth-child(3)') .should('have.text', 'green serif') - .and('have.attr', 'style', 'color: rgb(0, 255, 0); font-family: serif') + .and('have.attr', 'style', 'color: #00FF00; font-family: serif') }) it('should merge styles of a span with nested root text and descendant spans into each descendant span', () => { cy.get('.tiptap > p:nth-child(8) > span').should('have.length', 4) cy.get('.tiptap > p:nth-child(8) > span:nth-child(1)') .should('have.text', 'blue ') - .and('have.attr', 'style', 'color: rgb(0, 0, 255)') + .and('have.attr', 'style', 'color: #0000FF') cy.get('.tiptap > p:nth-child(8) > span:nth-child(2)') .should('have.text', 'green ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0)') + .and('have.attr', 'style', 'color: #00FF00') cy.get('.tiptap > p:nth-child(8) > span:nth-child(3)') .should('have.text', 'green serif ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0); font-family: serif') + .and('have.attr', 'style', 'color: #00FF00; font-family: serif') cy.get('.tiptap > p:nth-child(8) > span:nth-child(4)') .should('have.text', 'blue serif') - .and('have.attr', 'style', 'color: rgb(0, 0, 255); font-family: serif') + .and('have.attr', 'style', 'color: #0000FF; font-family: serif') }) it('should merge styles of descendant spans into each descendant span when the parent span has other tags', () => { cy.get('.tiptap > p:nth-child(9) > span').should('have.length', 4) @@ -59,22 +59,22 @@ context('/src/Marks/TextStyle/Vue/', () => { .and('have.text', 'strong ') cy.get('.tiptap > p:nth-child(9) > span:nth-child(2)') .should('have.text', 'strong blue ') - .and('have.attr', 'style', 'color: rgb(0, 0, 255)') + .and('have.attr', 'style', 'color: #0000FF') .find('strong') .should('exist') cy.get('.tiptap > p:nth-child(9) > span:nth-child(3)') .should('have.text', 'strong blue serif ') - .and('have.attr', 'style', 'color: rgb(0, 0, 255); font-family: serif; font-size: 24px') + .and('have.attr', 'style', 'color: #0000FF; font-family: serif; font-size: 24px') .find('strong') .should('exist') cy.get('.tiptap > p:nth-child(9) > span:nth-child(4)') .should('have.text', 'strong green ') - .and('have.attr', 'style', 'color: rgb(0, 255, 0)') + .and('have.attr', 'style', 'color: #00FF00') .find('strong') .should('exist') cy.get('.tiptap > p:nth-child(9) > span:nth-child(5)') .should('have.text', 'strong green serif') - .and('have.attr', 'style', 'color: rgb(0, 255, 0); font-family: serif') + .and('have.attr', 'style', 'color: #00FF00; font-family: serif') .find('strong') .should('exist') }) diff --git a/demos/src/Marks/TextStyle/Vue/index.vue b/demos/src/Marks/TextStyle/Vue/index.vue index 51fc8d1ba9..ccc978319b 100644 --- a/demos/src/Marks/TextStyle/Vue/index.vue +++ b/demos/src/Marks/TextStyle/Vue/index.vue @@ -54,7 +54,7 @@ export default {

green serif - red serif + red serif

diff --git a/packages/extension-text-style/src/background-color/background-color.ts b/packages/extension-text-style/src/background-color/background-color.ts index 183259bdd2..cf082b20a2 100644 --- a/packages/extension-text-style/src/background-color/background-color.ts +++ b/packages/extension-text-style/src/background-color/background-color.ts @@ -57,7 +57,33 @@ export const BackgroundColor = Extension.create({ attributes: { backgroundColor: { default: null, - parseHTML: element => element.style.backgroundColor?.replace(/['"]+/g, ''), + parseHTML: element => { + // Prefer the raw inline `style` attribute so we preserve + // the original format (e.g. `#rrggbb`) instead of the + // computed `rgb(...)` value returned by `element.style.backgroundColor`. + // When nested spans are merged the style attribute may contain + // multiple `background-color:` declarations (parent;child). We should pick + // the last declaration so the child's background color takes priority. + const styleAttr = element.getAttribute('style') + if (styleAttr) { + const decls = styleAttr + .split(';') + .map(s => s.trim()) + .filter(Boolean) + for (let i = decls.length - 1; i >= 0; i -= 1) { + const parts = decls[i].split(':') + if (parts.length >= 2) { + const prop = parts[0].trim().toLowerCase() + const val = parts.slice(1).join(':').trim() + if (prop === 'background-color') { + return val.replace(/['"]+/g, '') + } + } + } + } + + return element.style.backgroundColor?.replace(/['"]+/g, '') + }, renderHTML: attributes => { if (!attributes.backgroundColor) { return {} diff --git a/packages/extension-text-style/src/color/color.ts b/packages/extension-text-style/src/color/color.ts index d8f192b4ed..5940430da0 100644 --- a/packages/extension-text-style/src/color/color.ts +++ b/packages/extension-text-style/src/color/color.ts @@ -57,7 +57,33 @@ export const Color = Extension.create({ attributes: { color: { default: null, - parseHTML: element => element.style.color?.replace(/['"]+/g, ''), + parseHTML: element => { + // Prefer the raw inline `style` attribute so we preserve + // the original format (e.g. `#rrggbb`) instead of the + // computed `rgb(...)` value returned by `element.style.color`. + // When nested spans are merged the style attribute may contain + // multiple `color:` declarations (parent;child). We should pick + // the last declaration so the child's color takes priority. + const styleAttr = element.getAttribute('style') + if (styleAttr) { + const decls = styleAttr + .split(';') + .map(s => s.trim()) + .filter(Boolean) + for (let i = decls.length - 1; i >= 0; i -= 1) { + const parts = decls[i].split(':') + if (parts.length >= 2) { + const prop = parts[0].trim().toLowerCase() + const val = parts.slice(1).join(':').trim() + if (prop === 'color') { + return val.replace(/['"]+/g, '') + } + } + } + } + + return element.style.color?.replace(/['"]+/g, '') + }, renderHTML: attributes => { if (!attributes.color) { return {} diff --git a/tests/cypress/integration/extensions/background-color.spec.ts b/tests/cypress/integration/extensions/background-color.spec.ts new file mode 100644 index 0000000000..d28fd32305 --- /dev/null +++ b/tests/cypress/integration/extensions/background-color.spec.ts @@ -0,0 +1,36 @@ +/// + +import { BackgroundColor } from '@tiptap/extension-text-style' + +const ext: any = (BackgroundColor as any).configure() +const globalAttrs = ext.config.addGlobalAttributes && ext.config.addGlobalAttributes.call(ext)[0] +const { parseHTML } = globalAttrs.attributes.backgroundColor + +describe('background-color parseHTML', () => { + it('parses rgb(...) inline style', () => { + const el = document.createElement('span') + el.setAttribute('style', 'background-color: rgb(0, 255, 0)') + + const parsed = parseHTML(el) + + expect(parsed).to.equal('rgb(0, 255, 0)') + }) + + it('parses hex inline style', () => { + const el = document.createElement('span') + el.setAttribute('style', 'background-color: #00ff00') + + const parsed = parseHTML(el) + + expect(parsed).to.equal('#00ff00') + }) + + it('parses hsla inline style', () => { + const el = document.createElement('span') + el.setAttribute('style', 'background-color: hsla(120, 100%, 50%, 0.3)') + + const parsed = parseHTML(el) + + expect(parsed).to.equal('hsla(120, 100%, 50%, 0.3)') + }) +}) diff --git a/tests/cypress/integration/extensions/color.spec.ts b/tests/cypress/integration/extensions/color.spec.ts new file mode 100644 index 0000000000..9c892d17c0 --- /dev/null +++ b/tests/cypress/integration/extensions/color.spec.ts @@ -0,0 +1,36 @@ +/// + +import { Color } from '@tiptap/extension-text-style' + +const ext: any = (Color as any).configure() +const globalAttrs = ext.config.addGlobalAttributes && ext.config.addGlobalAttributes.call(ext)[0] +const { parseHTML } = globalAttrs.attributes.color + +describe('color parseHTML', () => { + it('parses rgb(...) inline style', () => { + const el = document.createElement('span') + el.setAttribute('style', 'color: rgb(149, 141, 241)') + + const parsed = parseHTML(el) + + expect(parsed).to.equal('rgb(149, 141, 241)') + }) + + it('parses hex inline style', () => { + const el = document.createElement('span') + el.setAttribute('style', 'color: #958DF1') + + const parsed = parseHTML(el) + + expect(parsed).to.equal('#958DF1') + }) + + it('parses hsla inline style', () => { + const el = document.createElement('span') + el.setAttribute('style', 'color: hsla(252, 100%, 80%, 0.5)') + + const parsed = parseHTML(el) + + expect(parsed).to.equal('hsla(252, 100%, 80%, 0.5)') + }) +}) From f3955a4dd318d947f3009d70711cae9d0874e67c Mon Sep 17 00:00:00 2001 From: YonLJ Date: Thu, 4 Sep 2025 16:32:24 +0800 Subject: [PATCH 348/629] fix(extension-suggestion): trigger suggestion popup for @ in Chinese input method (#6884) --- packages/suggestion/src/suggestion.ts | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/packages/suggestion/src/suggestion.ts b/packages/suggestion/src/suggestion.ts index dadd70d4e2..58e9c4c088 100644 --- a/packages/suggestion/src/suggestion.ts +++ b/packages/suggestion/src/suggestion.ts @@ -205,13 +205,27 @@ export function Suggestion({ let props: SuggestionProps | undefined const renderer = render?.() + // Gets the DOM rectangle corresponding to the current editor cursor anchor position + // Calculates screen coordinates based on Tiptap's cursor position and converts to a DOMRect object + const getAnchorClientRect = () => { + const pos = editor.state.selection.$anchor.pos + const coords = editor.view.coordsAtPos(pos) + const { top, right, bottom, left } = coords + + try { + return new DOMRect(left, top, right - left, bottom - top) + } catch { + return null + } + } + // Helper to create a clientRect callback for a given decoration node. // Returns null when no decoration node is present. Uses the pluginKey's // state to resolve the current decoration node on demand, avoiding a // duplicated implementation in multiple places. const clientRectFor = (view: EditorView, decorationNode: Element | null) => { if (!decorationNode) { - return null + return getAnchorClientRect } return () => { From 59fb86ff3ce60c5610f2766e8b9d90d60b3c6c67 Mon Sep 17 00:00:00 2001 From: bdbch Date: Thu, 4 Sep 2025 10:34:18 +0200 Subject: [PATCH 349/629] add missing changeset --- .changeset/fix-suggestion-clientrect-null.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .changeset/fix-suggestion-clientrect-null.md diff --git a/.changeset/fix-suggestion-clientrect-null.md b/.changeset/fix-suggestion-clientrect-null.md new file mode 100644 index 0000000000..1c01570c3e --- /dev/null +++ b/.changeset/fix-suggestion-clientrect-null.md @@ -0,0 +1,7 @@ +--- +"@tiptap/suggestion": patch +--- + +Previously, `clientRect` was only obtained through `decorationNode`. If `decorationNode` could not be obtained, `clientRect` was set to `null`, which caused the suggestion not to render in some IME scenarios (notably Chinese IME). + +This change adds a fallback method to compute `clientRect` from the editor's cursor position when `decorationNode` is not available. It generates a DOMRect based on the cursor coordinates so the suggestion can render even when the decoration node is missing. From 4dd8d58139fed2881a00f14698c5c84db8db1a54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E5=B9=B3?= Date: Thu, 4 Sep 2025 16:36:55 +0800 Subject: [PATCH 350/629] fix: @tiptap/react @types/react version mismatch (#6760) * fix: @tiptap/react @types/react version mismatch * fix: @types/react version mismatch * Fixed: @tiptap/react has incorrect type in react v19 --- .changeset/neat-taxis-worry.md | 5 +++++ packages/react/package.json | 8 +++++--- pnpm-lock.yaml | 8 ++++---- 3 files changed, 14 insertions(+), 7 deletions(-) create mode 100644 .changeset/neat-taxis-worry.md diff --git a/.changeset/neat-taxis-worry.md b/.changeset/neat-taxis-worry.md new file mode 100644 index 0000000000..d9800f5039 --- /dev/null +++ b/.changeset/neat-taxis-worry.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': patch +--- + +fix: @types/react version mismatch diff --git a/packages/react/package.json b/packages/react/package.json index 1962eedd27..14c54ee0ff 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -46,8 +46,8 @@ "devDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", - "@types/react": "^18.3.18", - "@types/react-dom": "^18.3.5", + "@types/react": "^19.0.0", + "@types/react-dom": "^19.0.0", "react": "^19.0.0", "react-dom": "^19.0.0" }, @@ -59,7 +59,9 @@ "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "@types/react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "repository": { "type": "git", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e6d99842c4..0f33241397 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -977,11 +977,11 @@ importers: specifier: workspace:^ version: link:../pm '@types/react': - specifier: ^18.3.18 - version: 18.3.18 + specifier: ^19.0.0 + version: 19.1.6 '@types/react-dom': - specifier: ^18.3.5 - version: 18.3.5(@types/react@18.3.18) + specifier: ^19.0.0 + version: 19.1.5(@types/react@19.1.6) react: specifier: ^19.0.0 version: 19.1.0 From a51159fea00b531a1a732cf9608dc3c4ca90022c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 4 Sep 2025 14:36:11 +0200 Subject: [PATCH 351/629] chore(release): publish a new release version (#6912) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/fix-suggestion-clientrect-null.md | 7 ----- .changeset/neat-taxis-worry.md | 5 --- .changeset/preserve-inline-color-format.md | 28 ----------------- .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 7 +++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 7 +++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 31 +++++++++++++++++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 11 +++++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 141 files changed, 583 insertions(+), 109 deletions(-) delete mode 100644 .changeset/fix-suggestion-clientrect-null.md delete mode 100644 .changeset/neat-taxis-worry.md delete mode 100644 .changeset/preserve-inline-color-format.md diff --git a/.changeset/fix-suggestion-clientrect-null.md b/.changeset/fix-suggestion-clientrect-null.md deleted file mode 100644 index 1c01570c3e..0000000000 --- a/.changeset/fix-suggestion-clientrect-null.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@tiptap/suggestion": patch ---- - -Previously, `clientRect` was only obtained through `decorationNode`. If `decorationNode` could not be obtained, `clientRect` was set to `null`, which caused the suggestion not to render in some IME scenarios (notably Chinese IME). - -This change adds a fallback method to compute `clientRect` from the editor's cursor position when `decorationNode` is not available. It generates a DOMRect based on the cursor coordinates so the suggestion can render even when the decoration node is missing. diff --git a/.changeset/neat-taxis-worry.md b/.changeset/neat-taxis-worry.md deleted file mode 100644 index d9800f5039..0000000000 --- a/.changeset/neat-taxis-worry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': patch ---- - -fix: @types/react version mismatch diff --git a/.changeset/preserve-inline-color-format.md b/.changeset/preserve-inline-color-format.md deleted file mode 100644 index 1bba31ccd8..0000000000 --- a/.changeset/preserve-inline-color-format.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -"@tiptap/extension-text-style": patch ---- - -Prefer the raw inline `style` attribute when parsing `color` and -`background-color` so the original format (hex, rgba/hsla, etc.) is -preserved instead of falling back to the computed `element.style.*` -value (which often resolves to `rgb(...)`). - -This fixes mismatches where consumers (for example, demo toolbars and -color pickers) expected the original hex values when initializing the -editor from HTML. - -- The `color` and `background-color` parsers now look for a `style` - attribute first and extract the declared value. If no raw style is - present, they still fall back to `element.style.color` / - `element.style.backgroundColor`. - -MIGRATION NOTES -- This is a patch-level change. It corrects parsing behavior and is the - least-disruptive fix for the issue. -- If your code relied on the parser returning computed `rgb(...)` - strings, you may see different string values (for example `#958DF1` - instead of `rgb(149, 141, 241)`) when HTML contained hex values. -- If you need a stable, normalized format for comparisons, normalize the - attribute (for example with a color utility like `tinycolor2`) before - comparing or use the editor APIs in a way that doesn't depend on the - exact string representation. diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 7c4e440abb..f234febd11 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extensions@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 6e7970e1eb..4e0b259567 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index b46f75dfaa..ef097c796c 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extensions@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index e41df32488..b26e660144 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index a9fe975ea9..5a05868767 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extensions@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 683c63ddd4..8a8b57df6f 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index e654cbd9aa..f250a93d5f 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extensions@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index f482857e2b..4066e750f3 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index d518076965..a5b6ea81be 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extensions@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index b8d0ae84f4..47fc7914bb 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 4f38d8077a..ff069de323 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-list@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index f4893dcbc7..1d2bc5aba1 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 0404401c77..367f876038 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-list@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index d1c970eb67..431a864d4f 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 2402c09710..a6804498b3 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extensions@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 4ea262408d..b16fce6f4a 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 637feee238..9e5c655c70 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-table@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 7844c4a258..76c90e9952 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 89a5b26610..1eec41225c 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-table@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index c5119ff42d..882322899b 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 92117f41fa..7d56c93664 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-table@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index a3505eabf9..76f8eca7af 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index cf498c5d19..38772d4309 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-list@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 53c4d9aa13..34ac3cf944 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index bfa396a07b..f58eade814 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-list@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 82d11b98bb..780bf5e8b7 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index a0ae81ac0b..a0b2add836 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index cf3ee0cce5..798b187f35 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 1c0f1b6a66..42abbd89d2 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 49e362d32a..7ae491753a 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 1ffbb754b4..2e0b3e08fc 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 9a86b658a1..3f434fe771 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 3471b20b1f..3ec7846d86 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index be69b73d6b..730dbd6e63 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 3d2fe4a7fc..4d304ae76e 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-list@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 0939391dfe..67c08b8185 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 450bfe0e12..c8f345b475 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/extension-code-block@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index edf91bd715..cb608839c1 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index add8e3b68a..af39f092fd 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 00c4d431bc..b62ea4c519 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 6eba55ce56..ae5f45f021 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 549e4acb93..2743a5d456 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 5837984f19..99d5d2f0d8 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 9708da2954..8abc56d624 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index c9599d7c98..a96cafd8c1 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index acb41f80e6..bd7a40ae42 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index c118b40cda..3694b6030e 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- Updated dependencies [46fa8b8] + - @tiptap/extension-text-style@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 7df6291f2f..74167de026 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index a41926bea5..7626e4157d 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.4.1 + +### Patch Changes + +- Updated dependencies [46fa8b8] + - @tiptap/extension-text-style@3.4.1 + - @tiptap/core@3.4.1 + - @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 059ddf1d51..02ebe9fc42 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index e9a2565ea6..45f3aaf75c 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index b153487f0c..c2b41553cb 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 23653e0446..9c1f4ab15b 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.4.1 + +### Patch Changes + +- Updated dependencies [4dd8d58] + - @tiptap/react@3.4.1 + - @tiptap/extension-drag-handle@3.4.1 + - @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index b7f8b34f59..81653615d7 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 16e38be121..ba3ddf5ac8 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.4.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.4.1 +- @tiptap/pm@3.4.1 +- @tiptap/vue-2@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index b134acc796..02326f55a8 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 0a91da8010..32db7f0f92 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.4.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.4.1 +- @tiptap/pm@3.4.1 +- @tiptap/vue-3@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 78ef388f63..4c57fb4b6d 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 3f81739203..127cfa6e83 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/extension-collaboration@3.4.1 +- @tiptap/extension-node-range@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index c27e8751fd..d45b34b54c 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index f9596c13ad..87b7bbe309 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.4.1 + +### Patch Changes + +- Updated dependencies [59fb86f] + - @tiptap/suggestion@3.4.1 + - @tiptap/core@3.4.1 + - @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index b1433c0800..762a0290ea 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index ca6d95d68e..aecfcbed09 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.4.1 + +### Patch Changes + +- Updated dependencies [46fa8b8] + - @tiptap/extension-text-style@3.4.1 + - @tiptap/core@3.4.1 + - @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 5bef40b666..6bf50de4d6 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index e8b80bc8c8..b6c720d296 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index b435f31c33..f948b8efa8 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index f26b0d07dc..792621705d 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- Updated dependencies [46fa8b8] + - @tiptap/extension-text-style@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 8121dd0fc0..4295b6c588 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index bb8435e9ce..c32dacd910 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 66187bb155..9a27e117b6 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 7ed7afce40..7b073268aa 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 0ed1e3c57d..6fdf922309 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index c92e633e86..83f68f5c46 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index e648182ec2..ff1e24f1bb 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 5e618f4438..c9cc418421 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 6d7cc61fe2..137dac5532 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index b66c7d5167..d125ea6bba 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 20dd32ccaa..73f67a9069 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index c7d72e4013..aa67b4436f 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.4.1 + +### Patch Changes + +- Updated dependencies [46fa8b8] + - @tiptap/extension-text-style@3.4.1 + - @tiptap/core@3.4.1 + - @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index cd2e959c71..531d1109ed 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index bd3d72cf5f..371917c82c 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 7c2644a812..14244a0d30 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 47234218e1..e679ccb193 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index fc0b3c55cb..bd7763e987 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index e5ab5fc2b6..5f7819cc85 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 076b75b842..6545e51c5f 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 12fe8ccc7f..a4d7b7977e 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 8868aea17d..5519987c9a 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 8ff34e88be..15402cf5d2 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- Updated dependencies [59fb86f] + - @tiptap/suggestion@3.4.1 + - @tiptap/core@3.4.1 + - @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index c636db9134..fa156666a7 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 65d270ec5e..8f6772678e 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index c9f2e7d826..d7fd86ef7c 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 6b0c7d71ee..67aaf28b4e 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-list@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 3da75e2541..354c8b4975 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 8efa4380e3..b15f445500 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 0af6f49cff..a0206978fb 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 5b844a63ae..29897a4cd5 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 851a9607e5..dbe5056aaf 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 4bb007073c..205537b82b 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index ade635fa91..e25abc4acc 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 50bd653a23..18a6c0f271 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index ea9587bdaa..1f60e64fe7 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 0db5c3d5b0..4e6f69b7a4 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index c102f39b33..4b7eb9f2cb 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 4e724824f3..56cb5935f8 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index f01df6a794..904de0410e 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 38a03a0e63..cc346ccacd 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 5273c93232..811bb4af1a 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index cdb4ea6541..6920d8e57e 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- 46fa8b8: Prefer the raw inline `style` attribute when parsing `color` and + `background-color` so the original format (hex, rgba/hsla, etc.) is + preserved instead of falling back to the computed `element.style.*` + value (which often resolves to `rgb(...)`). + + This fixes mismatches where consumers (for example, demo toolbars and + color pickers) expected the original hex values when initializing the + editor from HTML. + + - The `color` and `background-color` parsers now look for a `style` + attribute first and extract the declared value. If no raw style is + present, they still fall back to `element.style.color` / + `element.style.backgroundColor`. + + MIGRATION NOTES + + - This is a patch-level change. It corrects parsing behavior and is the + least-disruptive fix for the issue. + - If your code relied on the parser returning computed `rgb(...)` + strings, you may see different string values (for example `#958DF1` + instead of `rgb(149, 141, 241)`) when HTML contained hex values. + - If you need a stable, normalized format for comparisons, normalize the + attribute (for example with a color utility like `tinycolor2`) before + comparing or use the editor APIs in a way that doesn't depend on the + exact string representation. + - @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 2b18e238d0..b0229fa135 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 2302342286..53aae3a0ff 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 57a6499d5e..199a765fc5 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 3d3fb6de3d..a7061ff8a9 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 87a4ad4942..4d6e97f03e 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index f172d374d7..fbae44b9b8 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index e1eef34bbf..30859ad5f8 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 6a734de32e..922bde6a30 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 36b9a19031..d6a972c69b 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 47c7bcaedc..e2936b58c6 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index f2142353a5..ba74a13020 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 29cd7e1e1e..f1cd3144ab 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 88bd6500a7..b37edbec23 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 47a88f4734..aa23144202 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 6a8b4739c9..6514b53472 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 0fc66e59e0..41f7e06d97 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.4.1 + ## 3.4.0 ## 3.3.1 diff --git a/packages/pm/package.json b/packages/pm/package.json index 45f31a9d1b..b5e6c454cb 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 3dc69da3c1..fa71268e1b 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- 4dd8d58: fix: @types/react version mismatch + - @tiptap/core@3.4.1 + - @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 14c54ee0ff..bf93d7cdb3 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 5883240bec..bc69758f85 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.4.1 +- @tiptap/extension-gapcursor@3.4.1 +- @tiptap/extension-list-item@3.4.1 +- @tiptap/extension-list-keymap@3.4.1 +- @tiptap/core@3.4.1 +- @tiptap/extension-blockquote@3.4.1 +- @tiptap/extension-bold@3.4.1 +- @tiptap/extension-bullet-list@3.4.1 +- @tiptap/extension-code@3.4.1 +- @tiptap/extension-code-block@3.4.1 +- @tiptap/extension-document@3.4.1 +- @tiptap/extension-hard-break@3.4.1 +- @tiptap/extension-heading@3.4.1 +- @tiptap/extension-horizontal-rule@3.4.1 +- @tiptap/extension-italic@3.4.1 +- @tiptap/extension-link@3.4.1 +- @tiptap/extension-list@3.4.1 +- @tiptap/extension-ordered-list@3.4.1 +- @tiptap/extension-paragraph@3.4.1 +- @tiptap/extension-strike@3.4.1 +- @tiptap/extension-text@3.4.1 +- @tiptap/extension-underline@3.4.1 +- @tiptap/extensions@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 2fc002b9bc..1ac4324cf3 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 6bf9b81984..bd7edd5c1a 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index e786838240..23418bed62 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index c517a4f65b..7598123b39 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- 59fb86f: Previously, `clientRect` was only obtained through `decorationNode`. If `decorationNode` could not be obtained, `clientRect` was set to `null`, which caused the suggestion not to render in some IME scenarios (notably Chinese IME). + + This change adds a fallback method to compute `clientRect` from the editor's cursor position when `decorationNode` is not available. It generates a DOMRect based on the cursor coordinates so the suggestion can render even when the decoration node is missing. + + - @tiptap/core@3.4.1 + - @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 346929e0b5..3f1e2f9e10 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 730726ff8f..02a4bef9c6 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index c2fd6c3672..7b0f70e970 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 6fbaeeba5b..21b6c82dde 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.4.1 + +### Patch Changes + +- @tiptap/core@3.4.1 +- @tiptap/pm@3.4.1 + ## 3.4.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 8628f64286..a65155b288 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.4.0", + "version": "3.4.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 93e7278c29e79efc02092ac7bf284a971b924206 Mon Sep 17 00:00:00 2001 From: Randall Leeds Date: Fri, 5 Sep 2025 12:13:22 -0700 Subject: [PATCH 352/629] fix(core): insert content at positions other than the selection When inserting content at a position other than the selection, consult the state of the resolved insert position when deciding whether or not to modify it in order to split the block at that position or not. Fix #6919. --- packages/core/src/commands/insertContentAt.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/core/src/commands/insertContentAt.ts b/packages/core/src/commands/insertContentAt.ts index 96586d2324..d72304620d 100644 --- a/packages/core/src/commands/insertContentAt.ts +++ b/packages/core/src/commands/insertContentAt.ts @@ -74,7 +74,6 @@ export const insertContentAt: RawCommands['insertContentAt'] = } let content: Fragment | ProseMirrorNode - const { selection } = editor.state const emitContentError = (error: Error) => { editor.emit('contentError', { @@ -180,9 +179,10 @@ export const insertContentAt: RawCommands['insertContentAt'] = } else { newContent = content - const fromSelectionAtStart = selection.$from.parentOffset === 0 - const isTextSelection = selection.$from.node().isText || selection.$from.node().isTextblock - const hasContent = selection.$from.node().content.size > 0 + const $from = tr.doc.resolve(from) + const fromSelectionAtStart = $from.parentOffset === 0 + const isTextSelection = $from.node().isText || $from.node().isTextblock + const hasContent = $from.node().content.size > 0 if (fromSelectionAtStart && isTextSelection && hasContent) { from = Math.max(0, from - 1) From 24445c424a3a9717890477c133075f5451586e08 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 9 Sep 2025 12:05:46 +0200 Subject: [PATCH 353/629] feat(extension-bubble-menu): add optional scrollTarget for BubbleMenu (#6929) * feat(extension-bubble-menu): add optional scrollTarget for BubbleMenu positioning * fix(extension-bubble-menu): update scrollTarget type and default value in BubbleMenuView --- .changeset/bubble-menu-scroll-target.md | 13 +++++++++++++ demos/src/Extensions/BubbleMenu/React/index.jsx | 2 +- .../extension-bubble-menu/src/bubble-menu-plugin.ts | 12 ++++++++++++ 3 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 .changeset/bubble-menu-scroll-target.md diff --git a/.changeset/bubble-menu-scroll-target.md b/.changeset/bubble-menu-scroll-target.md new file mode 100644 index 0000000000..2f90d01d4c --- /dev/null +++ b/.changeset/bubble-menu-scroll-target.md @@ -0,0 +1,13 @@ +--- +"@tiptap/extension-bubble-menu": patch +--- + +Listen to a custom scroll target when positioning the BubbleMenu and +ensure the scroll listener is cleaned up on destroy. + +The BubbleMenu now accepts an optional `scrollTarget` option which will be +used instead of `window` when listening for scroll events that affect the +menu positioning. The plugin also removes the scroll listener during +cleanup. + +No user-facing API changes other than the new optional `scrollTarget` setting. diff --git a/demos/src/Extensions/BubbleMenu/React/index.jsx b/demos/src/Extensions/BubbleMenu/React/index.jsx index f1775e1f6a..9ec1a7727f 100644 --- a/demos/src/Extensions/BubbleMenu/React/index.jsx +++ b/demos/src/Extensions/BubbleMenu/React/index.jsx @@ -43,7 +43,7 @@ export default () => {
{editor && showMenu && ( - +
{editor && showMenu && ( - -
- - - -
-
+ <> + +
+ + + +
+
+ + editor.isActive('bulletList') || editor.isActive('orderedList')} + getReferencedVirtualElement={() => { + const parentNode = findParentNode( + node => node.type.name === 'bulletList' || node.type.name === 'orderedList', + )(editor.state.selection) + if (parentNode) { + const domRect = posToDOMRect(editor.view, parentNode.start, parentNode.start + parentNode.node.nodeSize) + return { + getBoundingClientRect: () => domRect, + getClientRects: () => [domRect], + } + } + return null + }} + options={{ placement: 'top-start', offset: 8 }} + > +
+ +
+
+ )} diff --git a/demos/src/Extensions/BubbleMenu/Vue/index.vue b/demos/src/Extensions/BubbleMenu/Vue/index.vue index 018d471704..93f07d3cc5 100644 --- a/demos/src/Extensions/BubbleMenu/Vue/index.vue +++ b/demos/src/Extensions/BubbleMenu/Vue/index.vue @@ -1,12 +1,24 @@ + + diff --git a/demos/src/Examples/ResizableNodes/React/index.html b/demos/src/Examples/ResizableNodes/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Examples/ResizableNodes/React/index.tsx b/demos/src/Examples/ResizableNodes/React/index.tsx new file mode 100644 index 0000000000..60477c3944 --- /dev/null +++ b/demos/src/Examples/ResizableNodes/React/index.tsx @@ -0,0 +1,111 @@ +import './styles.scss' + +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { EditorContent, Node as NodeExtension, ResizableNodeview, useEditor } from '@tiptap/react' + +const ResizableNode = NodeExtension.create({ + name: 'resizableNode', + group: 'block', + content: 'block+', + selectable: true, + draggable: true, + + addAttributes() { + return { + width: { + default: 'auto', + }, + height: { + default: 'auto', + }, + } + }, + + parseHTML() { + return [{ tag: 'div[data-resizer]' }] + }, + + renderHTML({ HTMLAttributes }) { + return [ + 'div', + { + 'data-resizer': '', + style: `width: ${HTMLAttributes.width}; height: ${HTMLAttributes.height}; border: 1px solid black; box-sizing: border-box;`, + }, + 0, + ] + }, + + addNodeView() { + return props => { + const width = props.node.attrs.width + const height = props.node.attrs.height + + const el = document.createElement('div') + el.dataset.resizer = '' + const content = document.createElement('div') + content.innerText = `Width: ${width}, Height: ${height}` + + el.appendChild(content) + + el.style.width = width + el.style.height = height + + const resizable = new ResizableNodeview({ + element: el, + getPos: props.getPos, + node: props.node, + onCommit: (newWidth, newHeight) => { + const pos = props.getPos() + if (pos === undefined) { + return + } + + this.editor + .chain() + .setNodeSelection(pos) + .updateAttributes(this.name, { + width: newWidth, + height: newHeight, + }) + .run() + }, + onResize: (newWidth, newHeight) => { + content.innerText = `Width: ${newWidth}, Height: ${newHeight}` + }, + onUpdate: () => false, + }) + + return resizable + } + }, +}) + +export default () => { + const editor = useEditor({ + extensions: [Document, Paragraph, Text, ResizableNode], + content: ` +

This is a resizable node demo.

+
+

Test

+

Test 2

+
+
+

Test

+

Test 2

+
+ `, + }) + + if (!editor) { + return null + } + + return ( + <> + + + ) +} diff --git a/demos/src/Examples/ResizableNodes/React/styles.scss b/demos/src/Examples/ResizableNodes/React/styles.scss new file mode 100644 index 0000000000..45d69bbc24 --- /dev/null +++ b/demos/src/Examples/ResizableNodes/React/styles.scss @@ -0,0 +1,95 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + [data-resizer] { + background-color: #f0f0f0; + } + + [data-resize-handle] { + position: absolute; + background: rgba(0, 0, 0, 0.5); + border: 1px solid rgba(255, 255, 255, 0.8); + border-radius: 2px; + z-index: 10; + + &:hover { + background: rgba(0, 0, 0, 0.8); + } + + /* Corner handles */ + &[data-resize-handle='top-left'], + &[data-resize-handle='top-right'], + &[data-resize-handle='bottom-left'], + &[data-resize-handle='bottom-right'] { + width: 8px; + height: 8px; + } + + &[data-resize-handle='top-left'] { + top: -4px; + left: -4px; + cursor: nwse-resize; + } + + &[data-resize-handle='top-right'] { + top: -4px; + right: -4px; + cursor: nesw-resize; + } + + &[data-resize-handle='bottom-left'] { + bottom: -4px; + left: -4px; + cursor: nesw-resize; + } + + &[data-resize-handle='bottom-right'] { + bottom: -4px; + right: -4px; + cursor: nwse-resize; + } + + /* Edge handles */ + &[data-resize-handle='top'], + &[data-resize-handle='bottom'] { + height: 6px; + left: 8px; + right: 8px; + } + + &[data-resize-handle='top'] { + top: -3px; + cursor: ns-resize; + } + + &[data-resize-handle='bottom'] { + bottom: -3px; + cursor: ns-resize; + } + + &[data-resize-handle='left'], + &[data-resize-handle='right'] { + width: 6px; + top: 8px; + bottom: 8px; + } + + &[data-resize-handle='left'] { + left: -3px; + cursor: ew-resize; + } + + &[data-resize-handle='right'] { + right: -3px; + cursor: ew-resize; + } + } + + [data-resize-state="true"] [data-resize-wrapper] { + outline: 1px solid rgba(0, 0, 0, 0.25); + border-radius: 0.125rem; + } +} diff --git a/demos/src/Examples/ResizableNodes/Vue/index.html b/demos/src/Examples/ResizableNodes/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Examples/ResizableNodes/Vue/index.vue b/demos/src/Examples/ResizableNodes/Vue/index.vue new file mode 100644 index 0000000000..a87a993897 --- /dev/null +++ b/demos/src/Examples/ResizableNodes/Vue/index.vue @@ -0,0 +1,231 @@ + + + + + diff --git a/demos/src/Nodes/Image/React/index.jsx b/demos/src/Nodes/Image/React/index.jsx index 7599db3be5..1ae8b120b0 100644 --- a/demos/src/Nodes/Image/React/index.jsx +++ b/demos/src/Nodes/Image/React/index.jsx @@ -6,15 +6,15 @@ import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import { Dropcursor } from '@tiptap/extensions' import { EditorContent, useEditor } from '@tiptap/react' -import React, { useCallback } from 'react' +import { useCallback } from 'react' export default () => { const editor = useEditor({ extensions: [Document, Paragraph, Text, Image, Dropcursor], content: `

This is a basic example of implementing images. Drag to re-order.

+ - `, }) diff --git a/demos/src/Nodes/Image/Vue/index.vue b/demos/src/Nodes/Image/Vue/index.vue index c434c82b43..f496fb8094 100644 --- a/demos/src/Nodes/Image/Vue/index.vue +++ b/demos/src/Nodes/Image/Vue/index.vue @@ -43,8 +43,8 @@ export default { extensions: [Document, Paragraph, Text, Image, Dropcursor], content: `

This is a basic example of implementing images. Drag to re-order.

+ - `, }) }, diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts index 8b13f49287..f28185d748 100644 --- a/packages/core/src/ExtensionManager.ts +++ b/packages/core/src/ExtensionManager.ts @@ -215,10 +215,16 @@ export class ExtensionManager { return [] } + const nodeViewResult = addNodeView() + + if (!nodeViewResult) { + return [] + } + const nodeview: NodeViewConstructor = (node, view, getPos, decorations, innerDecorations) => { const HTMLAttributes = getRenderedAttributes(node, extensionAttributes) - return addNodeView()({ + return nodeViewResult({ // pass-through node, view, diff --git a/packages/core/src/Node.ts b/packages/core/src/Node.ts index 843e9384dd..8d8c12f2bf 100644 --- a/packages/core/src/Node.ts +++ b/packages/core/src/Node.ts @@ -18,7 +18,7 @@ export interface NodeConfig editor: Editor type: NodeType parent: ParentConfig>['addNodeView'] - }) => NodeViewRenderer) + }) => NodeViewRenderer | null) | null /** diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index f9465d0ca2..a0dbf61af5 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -9,6 +9,7 @@ export * from './helpers/index.js' export * from './InputRule.js' export * from './inputRules/index.js' export { createElement, Fragment, createElement as h } from './jsx-runtime.js' +export { ResizableNodeview } from './lib/index.js' export * from './Mark.js' export * from './MarkView.js' export * from './Node.js' diff --git a/packages/core/src/lib/ResizableNodeview.ts b/packages/core/src/lib/ResizableNodeview.ts new file mode 100644 index 0000000000..7395fe9f64 --- /dev/null +++ b/packages/core/src/lib/ResizableNodeview.ts @@ -0,0 +1,936 @@ +import type { Node as PMNode } from '@tiptap/pm/model' +import type { Decoration, DecorationSource, NodeView } from '@tiptap/pm/view' + +const isTouchEvent = (e: MouseEvent | TouchEvent): e is TouchEvent => { + return 'touches' in e +} + +/** + * Directions where resize handles can be placed + * + * @example + * - `'top'` - Top edge handle + * - `'bottom-right'` - Bottom-right corner handle + */ +export type ResizableNodeViewDirection = + | 'top' + | 'right' + | 'bottom' + | 'left' + | 'top-right' + | 'top-left' + | 'bottom-right' + | 'bottom-left' + +/** + * Dimensions for the resizable node in pixels + */ +export type ResizableNodeDimensions = { + /** Width in pixels */ + width: number + /** Height in pixels */ + height: number +} + +/** + * Configuration options for creating a ResizableNodeview + * + * @example + * ```ts + * new ResizableNodeview({ + * element: imgElement, + * node, + * getPos, + * onResize: (width, height) => { + * imgElement.style.width = `${width}px` + * imgElement.style.height = `${height}px` + * }, + * onCommit: (width, height) => { + * editor.commands.updateAttributes('image', { width, height }) + * }, + * onUpdate: (node) => true, + * options: { + * directions: ['bottom-right', 'bottom-left'], + * min: { width: 100, height: 100 }, + * preserveAspectRatio: true + * } + * }) + * ``` + */ +export type ResizableNodeViewOptions = { + /** + * The DOM element to make resizable (e.g., an img, video, or iframe element) + */ + element: HTMLElement + + /** + * The DOM element that will hold the editable content element + */ + contentElement?: HTMLElement + + /** + * The ProseMirror node instance + */ + node: PMNode + + /** + * Function that returns the current position of the node in the document + */ + getPos: () => number | undefined + + /** + * Callback fired continuously during resize with current dimensions. + * Use this to update the element's visual size in real-time. + * + * @param width - Current width in pixels + * @param height - Current height in pixels + * + * @example + * ```ts + * onResize: (width, height) => { + * element.style.width = `${width}px` + * element.style.height = `${height}px` + * } + * ``` + */ + onResize?: (width: number, height: number) => void + + /** + * Callback fired once when resize completes with final dimensions. + * Use this to persist the new size to the node's attributes. + * + * @param width - Final width in pixels + * @param height - Final height in pixels + * + * @example + * ```ts + * onCommit: (width, height) => { + * const pos = getPos() + * if (pos !== undefined) { + * editor.commands.updateAttributes('image', { width, height }) + * } + * } + * ``` + */ + onCommit: (width: number, height: number) => void + + /** + * Callback for handling node updates. + * Return `true` to accept the update, `false` to reject it. + * + * @example + * ```ts + * onUpdate: (node, decorations, innerDecorations) => { + * if (node.type !== this.node.type) return false + * return true + * } + * ``` + */ + onUpdate: NodeView['update'] + + /** + * Optional configuration for resize behavior and styling + */ + options?: { + /** + * Which resize handles to display. + * @default ['bottom-left', 'bottom-right', 'top-left', 'top-right'] + * + * @example + * ```ts + * // Only show corner handles + * directions: ['top-left', 'top-right', 'bottom-left', 'bottom-right'] + * + * // Only show right edge handle + * directions: ['right'] + * ``` + */ + directions?: ResizableNodeViewDirection[] + + /** + * Minimum dimensions in pixels + * @default { width: 8, height: 8 } + * + * @example + * ```ts + * min: { width: 100, height: 50 } + * ``` + */ + min?: Partial + + /** + * Maximum dimensions in pixels + * @default undefined (no maximum) + * + * @example + * ```ts + * max: { width: 1000, height: 800 } + * ``` + */ + max?: Partial + + /** + * Always preserve aspect ratio when resizing. + * When `false`, aspect ratio is preserved only when Shift key is pressed. + * @default false + * + * @example + * ```ts + * preserveAspectRatio: true // Always lock aspect ratio + * ``` + */ + preserveAspectRatio?: boolean + + /** + * Custom CSS class names for styling + * + * @example + * ```ts + * className: { + * container: 'resize-container', + * wrapper: 'resize-wrapper', + * handle: 'resize-handle', + * resizing: 'is-resizing' + * } + * ``` + */ + className?: { + /** Class for the outer container element */ + container?: string + /** Class for the wrapper element that contains the resizable element */ + wrapper?: string + /** Class applied to all resize handles */ + handle?: string + /** Class added to container while actively resizing */ + resizing?: string + } + } +} + +/** + * A NodeView implementation that adds resize handles to any DOM element. + * + * This class creates a resizable node view for Tiptap/ProseMirror editors. + * It wraps your element with resize handles and manages the resize interaction, + * including aspect ratio preservation, min/max constraints, and keyboard modifiers. + * + * @example + * ```ts + * // Basic usage in a Tiptap extension + * addNodeView() { + * return ({ node, getPos }) => { + * const img = document.createElement('img') + * img.src = node.attrs.src + * + * return new ResizableNodeview({ + * element: img, + * node, + * getPos, + * onResize: (width, height) => { + * img.style.width = `${width}px` + * img.style.height = `${height}px` + * }, + * onCommit: (width, height) => { + * this.editor.commands.updateAttributes('image', { width, height }) + * }, + * onUpdate: () => true, + * options: { + * min: { width: 100, height: 100 }, + * preserveAspectRatio: true + * } + * }) + * } + * } + * ``` + */ +export class ResizableNodeview { + /** The ProseMirror node instance */ + node: PMNode + + /** The DOM element being made resizable */ + element: HTMLElement + + /** The editable DOM element inside the DOM */ + contentElement?: HTMLElement + + /** The outer container element (returned as NodeView.dom) */ + container: HTMLElement + + /** The wrapper element that contains the element and handles */ + wrapper: HTMLElement + + /** Function to get the current node position */ + getPos: () => number | undefined + + /** Callback fired during resize */ + onResize?: (width: number, height: number) => void + + /** Callback fired when resize completes */ + onCommit: (width: number, height: number) => void + + /** Callback for node updates */ + onUpdate?: NodeView['update'] + + /** Active resize handle directions */ + directions: ResizableNodeViewDirection[] = ['bottom-left', 'bottom-right', 'top-left', 'top-right'] + + /** Minimum allowed dimensions */ + minSize: ResizableNodeDimensions = { + height: 8, + width: 8, + } + + /** Maximum allowed dimensions (optional) */ + maxSize?: Partial + + /** Whether to always preserve aspect ratio */ + preserveAspectRatio: boolean = false + + /** CSS class names for elements */ + classNames = { + container: '', + wrapper: '', + handle: '', + resizing: '', + } + + /** Initial width of the element (for aspect ratio calculation) */ + private initialWidth: number = 0 + + /** Initial height of the element (for aspect ratio calculation) */ + private initialHeight: number = 0 + + /** Calculated aspect ratio (width / height) */ + private aspectRatio: number = 1 + + /** Whether a resize operation is currently active */ + private isResizing: boolean = false + + /** The handle currently being dragged */ + private activeHandle: ResizableNodeViewDirection | null = null + + /** Starting mouse X position when resize began */ + private startX: number = 0 + + /** Starting mouse Y position when resize began */ + private startY: number = 0 + + /** Element width when resize began */ + private startWidth: number = 0 + + /** Element height when resize began */ + private startHeight: number = 0 + + /** Whether Shift key is currently pressed (for temporary aspect ratio lock) */ + private isShiftKeyPressed: boolean = false + + /** + * Creates a new ResizableNodeview instance. + * + * The constructor sets up the resize handles, applies initial sizing from + * node attributes, and configures all resize behavior options. + * + * @param options - Configuration options for the resizable node view + */ + constructor(options: ResizableNodeViewOptions) { + this.node = options.node + this.element = options.element + this.contentElement = options.contentElement + + this.getPos = options.getPos + + this.onResize = options.onResize + this.onCommit = options.onCommit + this.onUpdate = options.onUpdate + + if (options.options?.min) { + this.minSize = { + ...this.minSize, + ...options.options.min, + } + } + + if (options.options?.max) { + this.maxSize = options.options.max + } + + if (options?.options?.directions) { + this.directions = options.options.directions + } + + if (options.options?.preserveAspectRatio) { + this.preserveAspectRatio = options.options.preserveAspectRatio + } + + if (options.options?.className) { + this.classNames = { + container: options.options.className.container || '', + wrapper: options.options.className.wrapper || '', + handle: options.options.className.handle || '', + resizing: options.options.className.resizing || '', + } + } + + this.wrapper = this.createWrapper() + this.container = this.createContainer() + + this.applyInitialSize() + this.attachHandles() + } + + /** + * Returns the top-level DOM node that should be placed in the editor. + * + * This is required by the ProseMirror NodeView interface. The container + * includes the wrapper, handles, and the actual content element. + * + * @returns The container element to be inserted into the editor + */ + get dom() { + return this.container + } + + get contentDOM() { + return this.contentElement + } + + /** + * Called when the node's content or attributes change. + * + * Updates the internal node reference. If a custom `onUpdate` callback + * was provided, it will be called to handle additional update logic. + * + * @param node - The new/updated node + * @param decorations - Node decorations + * @param innerDecorations - Inner decorations + * @returns `false` if the node type has changed (requires full rebuild), otherwise the result of `onUpdate` or `true` + */ + update(node: PMNode, decorations: readonly Decoration[], innerDecorations: DecorationSource): boolean { + if (node.type !== this.node.type) { + return false + } + + this.node = node + + if (this.onUpdate) { + return this.onUpdate(node, decorations, innerDecorations) + } + + return true + } + + /** + * Cleanup method called when the node view is being removed. + * + * Removes all event listeners to prevent memory leaks. This is required + * by the ProseMirror NodeView interface. If a resize is active when + * destroy is called, it will be properly cancelled. + */ + destroy() { + if (this.isResizing) { + this.container.dataset.resizeState = 'false' + + if (this.classNames.resizing) { + this.container.classList.remove(this.classNames.resizing) + } + + document.removeEventListener('mousemove', this.handleMouseMove) + document.removeEventListener('mouseup', this.handleMouseUp) + document.removeEventListener('keydown', this.handleKeyDown) + document.removeEventListener('keyup', this.handleKeyUp) + this.isResizing = false + this.activeHandle = null + } + + this.container.remove() + } + + /** + * Creates the outer container element. + * + * The container is the top-level element returned by the NodeView and + * wraps the entire resizable node. It's set up with flexbox to handle + * alignment and includes data attributes for styling and identification. + * + * @returns The container element + */ + createContainer() { + const element = document.createElement('div') + element.dataset.resizeContainer = '' + element.dataset.node = this.node.type.name + element.style.display = 'flex' + element.style.justifyContent = 'flex-start' + element.style.alignItems = 'flex-start' + + if (this.classNames.container) { + element.className = this.classNames.container + } + + element.appendChild(this.wrapper) + + return element + } + + /** + * Creates the wrapper element that contains the content and handles. + * + * The wrapper uses relative positioning so that resize handles can be + * positioned absolutely within it. This is the direct parent of the + * content element being made resizable. + * + * @returns The wrapper element + */ + createWrapper() { + const element = document.createElement('div') + element.style.position = 'relative' + element.style.display = 'block' + element.dataset.resizeWrapper = '' + + if (this.classNames.wrapper) { + element.className = this.classNames.wrapper + } + + element.appendChild(this.element) + + return element + } + + /** + * Creates a resize handle element for a specific direction. + * + * Each handle is absolutely positioned and includes a data attribute + * identifying its direction for styling purposes. + * + * @param direction - The resize direction for this handle + * @returns The handle element + */ + private createHandle(direction: ResizableNodeViewDirection): HTMLElement { + const handle = document.createElement('div') + handle.dataset.resizeHandle = direction + handle.style.position = 'absolute' + + if (this.classNames.handle) { + handle.className = this.classNames.handle + } + + return handle + } + + /** + * Positions a handle element according to its direction. + * + * Corner handles (e.g., 'top-left') are positioned at the intersection + * of two edges. Edge handles (e.g., 'top') span the full width or height. + * + * @param handle - The handle element to position + * @param direction - The direction determining the position + */ + private positionHandle(handle: HTMLElement, direction: ResizableNodeViewDirection): void { + const isTop = direction.includes('top') + const isBottom = direction.includes('bottom') + const isLeft = direction.includes('left') + const isRight = direction.includes('right') + + if (isTop) { + handle.style.top = '0' + } + + if (isBottom) { + handle.style.bottom = '0' + } + + if (isLeft) { + handle.style.left = '0' + } + + if (isRight) { + handle.style.right = '0' + } + + // Edge handles span the full width or height + if (direction === 'top' || direction === 'bottom') { + handle.style.left = '0' + handle.style.right = '0' + } + + if (direction === 'left' || direction === 'right') { + handle.style.top = '0' + handle.style.bottom = '0' + } + } + + /** + * Creates and attaches all resize handles to the wrapper. + * + * Iterates through the configured directions, creates a handle for each, + * positions it, attaches the mousedown listener, and appends it to the DOM. + */ + private attachHandles(): void { + this.directions.forEach(direction => { + const handle = this.createHandle(direction) + this.positionHandle(handle, direction) + handle.addEventListener('mousedown', event => this.handleResizeStart(event, direction)) + handle.addEventListener('touchstart', event => this.handleResizeStart(event as unknown as MouseEvent, direction)) + this.wrapper.appendChild(handle) + }) + } + + /** + * Applies initial sizing from node attributes to the element. + * + * If width/height attributes exist on the node, they're applied to the element. + * Otherwise, the element's natural/current dimensions are measured. The aspect + * ratio is calculated for later use in aspect-ratio-preserving resizes. + */ + private applyInitialSize(): void { + const width = this.node.attrs.width as number | undefined + const height = this.node.attrs.height as number | undefined + + if (width) { + this.element.style.width = `${width}px` + this.initialWidth = width + } else { + this.initialWidth = this.element.offsetWidth + } + + if (height) { + this.element.style.height = `${height}px` + this.initialHeight = height + } else { + this.initialHeight = this.element.offsetHeight + } + + // Calculate aspect ratio for use during resizing + if (this.initialWidth > 0 && this.initialHeight > 0) { + this.aspectRatio = this.initialWidth / this.initialHeight + } + } + + /** + * Initiates a resize operation when a handle is clicked. + * + * Captures the starting mouse position and element dimensions, sets up + * the resize state, adds the resizing class and state attribute, and + * attaches document-level listeners for mouse movement and keyboard input. + * + * @param event - The mouse down event + * @param direction - The direction of the handle being dragged + */ + private handleResizeStart(event: MouseEvent | TouchEvent, direction: ResizableNodeViewDirection): void { + event.preventDefault() + event.stopPropagation() + + // Capture initial state + this.isResizing = true + this.activeHandle = direction + + if (isTouchEvent(event)) { + this.startX = event.touches[0].clientX + this.startY = event.touches[0].clientY + } else { + this.startX = event.clientX + this.startY = event.clientY + } + + this.startWidth = this.element.offsetWidth + this.startHeight = this.element.offsetHeight + + // Recalculate aspect ratio at resize start for accuracy + if (this.startWidth > 0 && this.startHeight > 0) { + this.aspectRatio = this.startWidth / this.startHeight + } + + const pos = this.getPos() + if (pos !== undefined) { + // TODO: Select the node in the editor + } + + // Update UI state + this.container.dataset.resizeState = 'true' + + if (this.classNames.resizing) { + this.container.classList.add(this.classNames.resizing) + } + + // Attach document-level listeners for resize + document.addEventListener('mousemove', this.handleMouseMove) + document.addEventListener('touchmove', this.handleTouchMove) + document.addEventListener('mouseup', this.handleMouseUp) + document.addEventListener('keydown', this.handleKeyDown) + document.addEventListener('keyup', this.handleKeyUp) + } + + /** + * Handles mouse movement during an active resize. + * + * Calculates the delta from the starting position, computes new dimensions + * based on the active handle direction, applies constraints and aspect ratio, + * then updates the element's style and calls the onResize callback. + * + * @param event - The mouse move event + */ + private handleMouseMove = (event: MouseEvent): void => { + if (!this.isResizing || !this.activeHandle) { + return + } + + const deltaX = event.clientX - this.startX + const deltaY = event.clientY - this.startY + + this.handleResize(deltaX, deltaY) + } + + private handleTouchMove = (event: TouchEvent): void => { + if (!this.isResizing || !this.activeHandle) { + return + } + + const touch = event.touches[0] + if (!touch) { + return + } + + const deltaX = touch.clientX - this.startX + const deltaY = touch.clientY - this.startY + + this.handleResize(deltaX, deltaY) + } + + private handleResize(deltaX: number, deltaY: number) { + if (!this.activeHandle) { + return + } + + const shouldPreserveAspectRatio = this.preserveAspectRatio || this.isShiftKeyPressed + const { width, height } = this.calculateNewDimensions(this.activeHandle, deltaX, deltaY) + const constrained = this.applyConstraints(width, height, shouldPreserveAspectRatio) + + this.element.style.width = `${constrained.width}px` + this.element.style.height = `${constrained.height}px` + + if (this.onResize) { + this.onResize(constrained.width, constrained.height) + } + } + + /** + * Completes the resize operation when the mouse button is released. + * + * Captures final dimensions, calls the onCommit callback to persist changes, + * removes the resizing state and class, and cleans up document-level listeners. + */ + private handleMouseUp = (): void => { + if (!this.isResizing) { + return + } + + const finalWidth = this.element.offsetWidth + const finalHeight = this.element.offsetHeight + + this.onCommit(finalWidth, finalHeight) + + this.isResizing = false + this.activeHandle = null + + // Remove UI state + this.container.dataset.resizeState = 'false' + + if (this.classNames.resizing) { + this.container.classList.remove(this.classNames.resizing) + } + + // Clean up document-level listeners + document.removeEventListener('mousemove', this.handleMouseMove) + document.removeEventListener('mouseup', this.handleMouseUp) + document.removeEventListener('keydown', this.handleKeyDown) + document.removeEventListener('keyup', this.handleKeyUp) + } + + /** + * Tracks Shift key state to enable temporary aspect ratio locking. + * + * When Shift is pressed during resize, aspect ratio is preserved even if + * preserveAspectRatio is false. + * + * @param event - The keyboard event + */ + private handleKeyDown = (event: KeyboardEvent): void => { + if (event.key === 'Shift') { + this.isShiftKeyPressed = true + } + } + + /** + * Tracks Shift key release to disable temporary aspect ratio locking. + * + * @param event - The keyboard event + */ + private handleKeyUp = (event: KeyboardEvent): void => { + if (event.key === 'Shift') { + this.isShiftKeyPressed = false + } + } + + /** + * Calculates new dimensions based on mouse delta and resize direction. + * + * Takes the starting dimensions and applies the mouse movement delta + * according to the handle direction. For corner handles, both dimensions + * are affected. For edge handles, only one dimension changes. If aspect + * ratio should be preserved, delegates to applyAspectRatio. + * + * @param direction - The active resize handle direction + * @param deltaX - Horizontal mouse movement since resize start + * @param deltaY - Vertical mouse movement since resize start + * @returns The calculated width and height + */ + private calculateNewDimensions( + direction: ResizableNodeViewDirection, + deltaX: number, + deltaY: number, + ): ResizableNodeDimensions { + let newWidth = this.startWidth + let newHeight = this.startHeight + + const isRight = direction.includes('right') + const isLeft = direction.includes('left') + const isBottom = direction.includes('bottom') + const isTop = direction.includes('top') + + // Apply horizontal delta + if (isRight) { + newWidth = this.startWidth + deltaX + } else if (isLeft) { + newWidth = this.startWidth - deltaX + } + + // Apply vertical delta + if (isBottom) { + newHeight = this.startHeight + deltaY + } else if (isTop) { + newHeight = this.startHeight - deltaY + } + + // For pure horizontal/vertical handles, only one dimension changes + if (direction === 'right' || direction === 'left') { + newWidth = this.startWidth + (isRight ? deltaX : -deltaX) + } + + if (direction === 'top' || direction === 'bottom') { + newHeight = this.startHeight + (isBottom ? deltaY : -deltaY) + } + + const shouldPreserveAspectRatio = this.preserveAspectRatio || this.isShiftKeyPressed + + if (shouldPreserveAspectRatio) { + return this.applyAspectRatio(newWidth, newHeight, direction) + } + + return { width: newWidth, height: newHeight } + } + + /** + * Applies min/max constraints to dimensions. + * + * When aspect ratio is NOT preserved, constraints are applied independently + * to width and height. When aspect ratio IS preserved, constraints are + * applied while maintaining the aspect ratio—if one dimension hits a limit, + * the other is recalculated proportionally. + * + * This ensures that aspect ratio is never broken when constrained. + * + * @param width - The unconstrained width + * @param height - The unconstrained height + * @param preserveAspectRatio - Whether to maintain aspect ratio while constraining + * @returns The constrained dimensions + */ + private applyConstraints(width: number, height: number, preserveAspectRatio: boolean): ResizableNodeDimensions { + if (!preserveAspectRatio) { + // Independent constraints for each dimension + let constrainedWidth = Math.max(this.minSize.width, width) + let constrainedHeight = Math.max(this.minSize.height, height) + + if (this.maxSize?.width) { + constrainedWidth = Math.min(this.maxSize.width, constrainedWidth) + } + + if (this.maxSize?.height) { + constrainedHeight = Math.min(this.maxSize.height, constrainedHeight) + } + + return { width: constrainedWidth, height: constrainedHeight } + } + + // Aspect-ratio-aware constraints: adjust both dimensions proportionally + let constrainedWidth = width + let constrainedHeight = height + + // Check minimum constraints + if (constrainedWidth < this.minSize.width) { + constrainedWidth = this.minSize.width + constrainedHeight = constrainedWidth / this.aspectRatio + } + + if (constrainedHeight < this.minSize.height) { + constrainedHeight = this.minSize.height + constrainedWidth = constrainedHeight * this.aspectRatio + } + + // Check maximum constraints + if (this.maxSize?.width && constrainedWidth > this.maxSize.width) { + constrainedWidth = this.maxSize.width + constrainedHeight = constrainedWidth / this.aspectRatio + } + + if (this.maxSize?.height && constrainedHeight > this.maxSize.height) { + constrainedHeight = this.maxSize.height + constrainedWidth = constrainedHeight * this.aspectRatio + } + + return { width: constrainedWidth, height: constrainedHeight } + } + + /** + * Adjusts dimensions to maintain the original aspect ratio. + * + * For horizontal handles (left/right), uses width as the primary dimension + * and calculates height from it. For vertical handles (top/bottom), uses + * height as primary and calculates width. For corner handles, uses width + * as the primary dimension. + * + * @param width - The new width + * @param height - The new height + * @param direction - The active resize direction + * @returns Dimensions adjusted to preserve aspect ratio + */ + private applyAspectRatio( + width: number, + height: number, + direction: ResizableNodeViewDirection, + ): ResizableNodeDimensions { + const isHorizontal = direction === 'left' || direction === 'right' + const isVertical = direction === 'top' || direction === 'bottom' + + if (isHorizontal) { + // For horizontal resize, width is primary + return { + width, + height: width / this.aspectRatio, + } + } + + if (isVertical) { + // For vertical resize, height is primary + return { + width: height * this.aspectRatio, + height, + } + } + + // For corner resize, width is primary + return { + width, + height: width / this.aspectRatio, + } + } +} diff --git a/packages/core/src/lib/index.ts b/packages/core/src/lib/index.ts new file mode 100644 index 0000000000..8bddc4cf21 --- /dev/null +++ b/packages/core/src/lib/index.ts @@ -0,0 +1 @@ +export * from './ResizableNodeview.js' diff --git a/packages/extension-image/src/image.ts b/packages/extension-image/src/image.ts index ef91eaaeb9..f489c27ad2 100644 --- a/packages/extension-image/src/image.ts +++ b/packages/extension-image/src/image.ts @@ -1,4 +1,5 @@ -import { mergeAttributes, Node, nodeInputRule } from '@tiptap/core' +import { mergeAttributes, Node, nodeInputRule, ResizableNodeview } from '@tiptap/core' +import type { ResizableNodeViewDirection } from 'packages/core/src/lib' export interface ImageOptions { /** @@ -22,6 +23,21 @@ export interface ImageOptions { * @example { class: 'foo' } */ HTMLAttributes: Record + + /** + * Controls if the image should be resizable and how the resize is configured. + * @default false + * @example { directions: { top: true, right: true, bottom: true, left: true, topLeft: true, topRight: true, bottomLeft: true, bottomRight: true }, minWidth: 100, minHeight: 100 } + */ + resize: + | { + enabled: boolean + directions?: ResizableNodeViewDirection[] + minWidth?: number + minHeight?: number + alwaysPreserveAspectRatio?: boolean + } + | false } export interface SetImageOptions { @@ -65,6 +81,7 @@ export const Image = Node.create({ inline: false, allowBase64: false, HTMLAttributes: {}, + resize: false, } }, @@ -126,6 +143,90 @@ export const Image = Node.create({ return title ? `![${alt}](${src} "${title}")` : `![${alt}](${src})` }, + addNodeView() { + if ( + !this.options.resize || + !this.options.resize.enabled || + typeof document === 'undefined' || + !this.editor.isEditable + ) { + return null + } + + const { directions, minWidth, minHeight, alwaysPreserveAspectRatio } = this.options.resize + + return ({ node, getPos, HTMLAttributes }) => { + const el = document.createElement('img') + + Object.entries(HTMLAttributes).forEach(([key, value]) => { + if (value != null) { + switch (key) { + case 'width': + case 'height': + break + default: + el.setAttribute(key, value) + break + } + } + }) + + el.src = HTMLAttributes.src + + const nodeView = new ResizableNodeview({ + element: el, + node, + getPos, + onResize: (width, height) => { + el.style.width = `${width}px` + el.style.height = `${height}px` + }, + onCommit: (width, height) => { + const pos = getPos() + if (pos === undefined) { + return + } + + this.editor + .chain() + .setNodeSelection(pos) + .updateAttributes(this.name, { + width, + height, + }) + .run() + }, + onUpdate: (updatedNode, _decorations, _innerDecorations) => { + if (updatedNode.type !== node.type) { + return false + } + + return true + }, + options: { + directions, + min: { + width: minWidth, + height: minHeight, + }, + preserveAspectRatio: alwaysPreserveAspectRatio === true, + }, + }) + + const dom = nodeView.dom as HTMLElement + + // when image is loaded, show the node view to get the correct dimensions + dom.style.visibility = 'hidden' + dom.style.pointerEvents = 'none' + el.onload = () => { + dom.style.visibility = '' + dom.style.pointerEvents = '' + } + + return nodeView + } + }, + addCommands() { return { setImage: From 77a449e36c75d488e5e3bb13d06cb159d1ce5d71 Mon Sep 17 00:00:00 2001 From: bdbch Date: Thu, 30 Oct 2025 15:56:33 +0100 Subject: [PATCH 458/629] remove duplicated changesets --- .changeset/beige-points-drive.md | 5 ----- .changeset/fresh-stingrays-learn.md | 5 ----- 2 files changed, 10 deletions(-) delete mode 100644 .changeset/beige-points-drive.md delete mode 100644 .changeset/fresh-stingrays-learn.md diff --git a/.changeset/beige-points-drive.md b/.changeset/beige-points-drive.md deleted file mode 100644 index 30fdae08b7..0000000000 --- a/.changeset/beige-points-drive.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-image": minor ---- - -Add optional `resize` support to the Image extension. When enabled, images can display configurable resize handles. diff --git a/.changeset/fresh-stingrays-learn.md b/.changeset/fresh-stingrays-learn.md deleted file mode 100644 index 0141be0222..0000000000 --- a/.changeset/fresh-stingrays-learn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': minor ---- - -Added new `createResizableNodeView` helper function that creates resizable node view elements` From 3bb4ed2f4550284e07b3db8a3322886ede2bb33b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 30 Oct 2025 16:04:30 +0100 Subject: [PATCH 459/629] chore(release): publish a new release version (#7148) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/lemon-bikes-retire.md | 5 --- .changeset/orange-coins-smoke.md | 7 ----- .changeset/perfect-mails-drive.md | 5 --- CHANGELOG.md | 17 ++++++++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 13 ++++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 8 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 9 ++++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 10 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 9 ++++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 8 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 9 ++++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 10 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 8 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 11 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 10 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 10 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 9 ++++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 8 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 8 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 8 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 9 ++++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 12 +++++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 10 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 8 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 9 ++++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 9 ++++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 9 ++++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 10 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 9 ++++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 8 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 8 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 9 ++++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 9 ++++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 9 ++++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 9 ++++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 8 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 8 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 8 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 8 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 8 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 9 ++++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 8 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 9 ++++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 9 ++++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 9 ++++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 9 ++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 9 ++++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 9 ++++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 9 ++++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 9 ++++++ packages/vue-3/package.json | 2 +- 144 files changed, 677 insertions(+), 87 deletions(-) delete mode 100644 .changeset/lemon-bikes-retire.md delete mode 100644 .changeset/orange-coins-smoke.md delete mode 100644 .changeset/perfect-mails-drive.md diff --git a/.changeset/lemon-bikes-retire.md b/.changeset/lemon-bikes-retire.md deleted file mode 100644 index 85b233e36d..0000000000 --- a/.changeset/lemon-bikes-retire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": minor ---- - -Add a new ResizableNodeview NodeView to core that wraps elements (images, videos, iframes) with configurable resize handles. It provides live onResize/onCommit callbacks, min/max constraints, aspect-ratio support, and styling hooks (class names + data attributes) to improve UX when resizing media inside the editor. diff --git a/.changeset/orange-coins-smoke.md b/.changeset/orange-coins-smoke.md deleted file mode 100644 index 8c600c4858..0000000000 --- a/.changeset/orange-coins-smoke.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@tiptap/core': minor ---- - -the addNodeView function can now return `null` to dynamically disable rendering of a node view - -While this should not directly cause any issues, it's noteworthy as it still could affect some behavior in some edge cases. diff --git a/.changeset/perfect-mails-drive.md b/.changeset/perfect-mails-drive.md deleted file mode 100644 index 1cb20d677d..0000000000 --- a/.changeset/perfect-mails-drive.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-image': minor ---- - -Added a new `resize` option that allows images to be resized. The option adds resize handlers to images allowing users to manually resize images via drag and drop or touch diff --git a/CHANGELOG.md b/CHANGELOG.md index f0aa87fa55..607aad485e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,22 @@ # Releases +## v3.10.0 + +### @tiptap/core + +#### Minor Changes + +- Add a new ResizableNodeview NodeView to core that wraps elements (images, videos, iframes) with configurable resize handles. It provides live onResize/onCommit callbacks, min/max constraints, aspect-ratio support, and styling hooks (class names + data attributes) to improve UX when resizing media inside the editor. +- the addNodeView function can now return `null` to dynamically disable rendering of a node view + + While this should not directly cause any issues, it's noteworthy as it still could affect some behavior in some edge cases. + +### @tiptap/extension-image + +#### Minor Changes + +- Added a new `resize` option that allows images to be resized. The option adds resize handlers to images allowing users to manually resize images via drag and drop or touch + ## v3.9.1 ### @tiptap/extension-table diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index e50d9e91b5..cf376366ce 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extensions@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index a5a78c5d05..58b72363ce 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 9b8cb4b99d..b585930027 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extensions@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 2989fb4792..484e005dc0 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 8eda547839..4f9bdc350a 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extensions@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 324aa215c7..f13ac4c39b 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index d035971432..41fa4f950f 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extensions@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index a32c929ff1..41f1313e07 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 59bf862e9b..46fc48190e 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extensions@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 3f9b9b2cdd..66f51979f8 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 42aa20b477..fe1c4dff37 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-list@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index fe79e00f5e..dbebeb9a0f 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index ff25d216e3..02b2d1fe46 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-list@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 7774f3f3cf..174f743e60 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 4703d59586..8c460efbc7 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extensions@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 6e66634c75..cbacf2bd31 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 5cdc0d3bf8..5c102463c3 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-table@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 4f803c27e7..8f2a3eaff2 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 3257c678af..67852a062b 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-table@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index f3f914d7b0..32b3920886 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 64dee06cf8..9bd738758a 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-table@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 56049f4896..4936480847 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 76869d33fb..6e7ac3a4cc 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-list@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 7a388cfef9..e3abac1876 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 4571644f57..d5c8b59363 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-list@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index bba6168082..8419cc32af 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 8a01f75453..2ad96a8d60 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,18 @@ # Change Log +## 3.10.0 + +### Minor Changes + +- 4aa9f57: Add a new ResizableNodeview NodeView to core that wraps elements (images, videos, iframes) with configurable resize handles. It provides live onResize/onCommit callbacks, min/max constraints, aspect-ratio support, and styling hooks (class names + data attributes) to improve UX when resizing media inside the editor. +- 4aa9f57: the addNodeView function can now return `null` to dynamically disable rendering of a node view + + While this should not directly cause any issues, it's noteworthy as it still could affect some behavior in some edge cases. + +### Patch Changes + +- @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index efc2feaf36..0130285367 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index fc5db0aebd..d51a9357ea 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 7de983b483..6bb760a254 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index e8a7929bee..e165640e14 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index d4529b0900..4eb00a4ee8 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 8f8e2fdba5..fac661b63c 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 94903b62fb..4023f27233 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 2966cad4b2..07a11ccf92 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-list@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 2d6fa644f7..46b9eaf0d1 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 03e5256b2b..1db686d0b3 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/extension-code-block@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index a52ea9a3ec..2785fd6b70 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index fd9eff44fc..4ef0f344c8 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 43a1558563..0ff1bbd069 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 35d09bb5a8..fc2b29aee7 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index b996b758f4..f12e5f9234 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 229f18f44d..0f2533ffd0 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index e9c55d708e..3283bb0d93 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index b22cdf3fae..b1008fb4d3 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index e7235755d8..bca10bcead 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index d48c1f9259..8c4d5257a8 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 57a43bb6fc..4ba022d687 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 2ed8250bd1..9b8e6a14eb 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-details +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/extension-text-style@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 641a73c049..bce7b14f2c 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index fba0e9bb37..3a0a625879 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 659b7518a2..d0ca69b90e 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 44f5b3e147..43a3fae930 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.10.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.0 +- @tiptap/react@3.10.0 +- @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index cf055f0094..fca64698e1 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 68a9bee090..802049d5c8 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.10.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.0 +- @tiptap/vue-2@3.10.0 +- @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index b1d3dfa0d1..0924a78cd5 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index dc82413b1a..20eab2dd52 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.10.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.0 +- @tiptap/vue-3@3.10.0 +- @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 46c01f013c..1d20bc3c03 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index b911b8568e..b9ae48d5bd 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-drag-handle +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/extension-collaboration@3.10.0 + - @tiptap/extension-node-range@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 6cabd5f610..40dea617e0 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 8a3022481a..24c1fe1d2f 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-emoji +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/suggestion@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 4de8d9a031..64b0dee807 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index b8b4f66d14..76a45ebceb 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-file-handler +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/extension-text-style@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 7c1d3a6a05..5b590a9b34 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index b5cbcef29a..4285ae3934 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 59bbf88951..c8661dcf59 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 1436db4f1d..e022590d98 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index acce036ef4..ccea14e52f 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 7bc3b788a1..3afd9673f2 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 6039789344..eb189c8e20 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 5673485438..d19a93eed2 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index ef2b0acc2f..147aa9d6b3 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 413d1e7090..f9ac01c37d 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index fdcbb16242..b8cf1def6a 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 923f4fca21..5a1d964398 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 20e16cedd9..477ab5c6a6 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 02585f22e0..af6c052ba0 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.10.0 + +### Minor Changes + +- 4aa9f57: Added a new `resize` option that allows images to be resized. The option adds resize handlers to images allowing users to manually resize images via drag and drop or touch + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index df24411c7f..b58ca9ac6b 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 71c0680e4e..5507c4fb13 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-invisible-characters +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/extension-text-style@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 27cc33d89b..2a1aba164c 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 48ba2cda65..e2f35fdde7 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index e332f74c8b..2c544d6ad6 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 3eb4ea7343..84998915c2 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 5f7ef26d7d..fa4c746bd9 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 9ebc3ecf43..618f29299c 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index dcaa74c3a6..d9f6b7fa34 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 2a49ee9e69..45a1e66502 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-mathematics +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 1384e7dd43..d2220d16bf 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 72c03e8456..6962f739d2 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/suggestion@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index eb8e2c6f20..7120cce26f 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index c3c5d9dbb2..3ac3556d65 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-node-range +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index c4129558a0..a85223bf73 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 3c4e6b2d71..8d11cd61cb 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- @tiptap/extension-list@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 35303b7e1d..f1cd7ce930 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index bc5c3a1c65..3974850fcb 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index b319fa6f05..3db45218a4 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 7cac779230..a4ef9572bd 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index c29eed8dcf..450cba7cf5 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 576a5a72e7..a76a77b415 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index baef80e747..cd8d47c612 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index f8f2b30758..9a03f0251c 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index c7954000bc..2047c7066b 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 1b710348ac..c34ca2a814 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-table-of-contents +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 79191be654..798c581b59 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index e06aa28615..4f43ae2774 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index bc66690544..98d4564253 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 0c17eb58b2..70e8935049 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index ebc3daf00b..d0c4926866 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index b5c7f277fc..4ade1291e4 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index c5b5a31b6e..04eda8a129 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index b43b98c5e0..3a29574008 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index c6c277d8ff..5e5d48d134 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 22764ad4f0..03be556696 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index c171942009..80683c2892 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 4d6a3ea6ee..2050f963cd 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 136170810f..7239a62657 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 79500162e1..86e756de55 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-unique-id +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 6b90a2e03f..12b391e746 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 3ee5dad4f9..b57d508767 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 1773854b96..ce9350ca0f 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 0e6d8d3e5f..a0e99160b5 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index ab4bd05a7e..0c3dbc2978 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 57008adfc7..e1369f3d9d 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 429c625f98..4e347a3784 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 879057ec9e..174b2892f7 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/markdown +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 784ba21ed4..6a615028f5 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 59b5ca7f3d..0455b5f303 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.0 + ## 3.9.1 ## 3.9.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index 684059cef4..181865bce4 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index ea6db12199..ff8cf04c3a 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index c25e3062be..86bf2934d0 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 72ba42e438..dd881e9b55 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/extension-blockquote@3.10.0 + - @tiptap/extension-bold@3.10.0 + - @tiptap/extension-code@3.10.0 + - @tiptap/extension-code-block@3.10.0 + - @tiptap/extension-document@3.10.0 + - @tiptap/extension-hard-break@3.10.0 + - @tiptap/extension-heading@3.10.0 + - @tiptap/extension-horizontal-rule@3.10.0 + - @tiptap/extension-italic@3.10.0 + - @tiptap/extension-link@3.10.0 + - @tiptap/extension-list@3.10.0 + - @tiptap/extension-paragraph@3.10.0 + - @tiptap/extension-strike@3.10.0 + - @tiptap/extension-text@3.10.0 + - @tiptap/extension-underline@3.10.0 + - @tiptap/extensions@3.10.0 + - @tiptap/extension-list-item@3.10.0 + - @tiptap/extension-list-keymap@3.10.0 + - @tiptap/extension-bullet-list@3.10.0 + - @tiptap/extension-ordered-list@3.10.0 + - @tiptap/extension-dropcursor@3.10.0 + - @tiptap/extension-gapcursor@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index f9bbebb872..88f545f099 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 25697eae17..9ff1df756b 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 716a6982b7..c67a976ff0 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index c543ea08df..ea4a9a3929 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index f8bab1008c..aa01c61983 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 8a9f02f487..3914134ae2 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index c52211c5b9..5fe5e6ffa8 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index d500341547..92b18e7d34 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.0 + +### Patch Changes + +- Updated dependencies [4aa9f57] +- Updated dependencies [4aa9f57] + - @tiptap/core@3.10.0 + - @tiptap/pm@3.10.0 + ## 3.9.1 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 83b24405e9..581f5d90ac 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.9.1", + "version": "3.10.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 3564e7c2802bf9c8d981b7b762a03c37a22abeaa Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 30 Oct 2025 20:00:53 +0100 Subject: [PATCH 460/629] rename ResizableNodeView class name (#7149) * rename ResizableNodeView class name * also export fallback for existing class name * add note --- .changeset/unlucky-schools-float.md | 5 +++++ packages/core/src/index.ts | 2 +- ...ResizableNodeview.ts => ResizableNodeView.ts} | 16 +++++++++++----- packages/extension-image/src/image.ts | 4 ++-- 4 files changed, 19 insertions(+), 8 deletions(-) create mode 100644 .changeset/unlucky-schools-float.md rename packages/core/src/lib/{ResizableNodeview.ts => ResizableNodeView.ts} (98%) diff --git a/.changeset/unlucky-schools-float.md b/.changeset/unlucky-schools-float.md new file mode 100644 index 0000000000..6eb2522ae1 --- /dev/null +++ b/.changeset/unlucky-schools-float.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Use correct `ResizableNodeView` class name diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index a0dbf61af5..d9e2e69ea2 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -9,7 +9,7 @@ export * from './helpers/index.js' export * from './InputRule.js' export * from './inputRules/index.js' export { createElement, Fragment, createElement as h } from './jsx-runtime.js' -export { ResizableNodeview } from './lib/index.js' +export * from './lib/index.js' export * from './Mark.js' export * from './MarkView.js' export * from './Node.js' diff --git a/packages/core/src/lib/ResizableNodeview.ts b/packages/core/src/lib/ResizableNodeView.ts similarity index 98% rename from packages/core/src/lib/ResizableNodeview.ts rename to packages/core/src/lib/ResizableNodeView.ts index 7395fe9f64..db06c16b40 100644 --- a/packages/core/src/lib/ResizableNodeview.ts +++ b/packages/core/src/lib/ResizableNodeView.ts @@ -33,11 +33,11 @@ export type ResizableNodeDimensions = { } /** - * Configuration options for creating a ResizableNodeview + * Configuration options for creating a ResizableNodeView * * @example * ```ts - * new ResizableNodeview({ + * new ResizableNodeView({ * element: imgElement, * node, * getPos, @@ -222,7 +222,7 @@ export type ResizableNodeViewOptions = { * const img = document.createElement('img') * img.src = node.attrs.src * - * return new ResizableNodeview({ + * return new ResizableNodeView({ * element: img, * node, * getPos, @@ -243,7 +243,7 @@ export type ResizableNodeViewOptions = { * } * ``` */ -export class ResizableNodeview { +export class ResizableNodeView { /** The ProseMirror node instance */ node: PMNode @@ -325,7 +325,7 @@ export class ResizableNodeview { private isShiftKeyPressed: boolean = false /** - * Creates a new ResizableNodeview instance. + * Creates a new ResizableNodeView instance. * * The constructor sets up the resize handles, applies initial sizing from * node attributes, and configures all resize behavior options. @@ -934,3 +934,9 @@ export class ResizableNodeview { } } } + +/** + * Alias for ResizableNodeView to maintain consistent naming. + * @deprecated Use ResizableNodeView instead - will be removed in future versions. + */ +export const ResizableNodeview = ResizableNodeView diff --git a/packages/extension-image/src/image.ts b/packages/extension-image/src/image.ts index f489c27ad2..4e9f2ec23b 100644 --- a/packages/extension-image/src/image.ts +++ b/packages/extension-image/src/image.ts @@ -1,4 +1,4 @@ -import { mergeAttributes, Node, nodeInputRule, ResizableNodeview } from '@tiptap/core' +import { mergeAttributes, Node, nodeInputRule, ResizableNodeView } from '@tiptap/core' import type { ResizableNodeViewDirection } from 'packages/core/src/lib' export interface ImageOptions { @@ -173,7 +173,7 @@ export const Image = Node.create({ el.src = HTMLAttributes.src - const nodeView = new ResizableNodeview({ + const nodeView = new ResizableNodeView({ element: el, node, getPos, From e26355c2fb95c17094116c7e81baaedb04549cd1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 30 Oct 2025 20:03:20 +0100 Subject: [PATCH 461/629] chore(release): publish a new release version (#7150) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/unlucky-schools-float.md | 5 ---- CHANGELOG.md | 8 +++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 +++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 142 files changed, 610 insertions(+), 75 deletions(-) delete mode 100644 .changeset/unlucky-schools-float.md diff --git a/.changeset/unlucky-schools-float.md b/.changeset/unlucky-schools-float.md deleted file mode 100644 index 6eb2522ae1..0000000000 --- a/.changeset/unlucky-schools-float.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Use correct `ResizableNodeView` class name diff --git a/CHANGELOG.md b/CHANGELOG.md index 607aad485e..c737585a76 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Releases +## v3.10.1 + +### @tiptap/core + +#### Patch Changes + +- Use correct `ResizableNodeView` class name + ## v3.10.0 ### @tiptap/core diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index cf376366ce..9331300646 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extensions@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 58b72363ce..a8302cad6b 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index b585930027..11e9d7cd83 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extensions@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 484e005dc0..1186249b70 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 4f9bdc350a..d7efa26afa 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extensions@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index f13ac4c39b..72bac0559c 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 41fa4f950f..33ea334ab6 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extensions@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 41f1313e07..b3b9a50c58 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 46fc48190e..372b499085 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extensions@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 66f51979f8..9b851a2439 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index fe1c4dff37..4044ad6f33 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-list@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index dbebeb9a0f..68cc25af62 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 02b2d1fe46..4e6fe80c09 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-list@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 174f743e60..2c473ed18d 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 8c460efbc7..b915fca20e 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extensions@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index cbacf2bd31..e81f54767a 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 5c102463c3..201cd11233 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-table@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 8f2a3eaff2..51efbbe1b7 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 67852a062b..a30ee454e5 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-table@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 32b3920886..66b31b1002 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 9bd738758a..1a385aed24 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-table@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 4936480847..173bd8522b 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 6e7ac3a4cc..66a67f6034 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-list@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index e3abac1876..0581219273 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index d5c8b59363..53255eff41 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-list@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 8419cc32af..753dd4b7dd 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 2ad96a8d60..3162188bf0 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- 3564e7c: Use correct `ResizableNodeView` class name + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 0130285367..f0478eec99 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index d51a9357ea..9a78ae3dc3 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 6bb760a254..622c646f4c 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index e165640e14..c66f3e3374 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 4eb00a4ee8..524209ce59 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index fac661b63c..795e009447 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 4023f27233..efa8eeacfe 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 07a11ccf92..05f1974f19 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-list@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 46b9eaf0d1..4424f38445 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 1db686d0b3..02be78629c 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/extension-code-block@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 2785fd6b70..ff34df041c 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 4ef0f344c8..8b574bf5fe 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 0ff1bbd069..14d8653df4 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index fc2b29aee7..963ff4f602 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index f12e5f9234..7ac7ede464 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 0f2533ffd0..507f599ed1 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 3283bb0d93..647f25e2b5 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index b1008fb4d3..a03d9d92aa 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index bca10bcead..7b9d5c6ce5 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 8c4d5257a8..28ab4b420a 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 4ba022d687..78ab511b2e 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 9b8e6a14eb..2575167300 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/extension-text-style@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index bce7b14f2c..3860d62a3e 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 3a0a625879..d9f517d93f 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index d0ca69b90e..e9bf1b029a 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 43a3fae930..6f92d1a6a9 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.10.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.1 +- @tiptap/react@3.10.1 +- @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index fca64698e1..892019d21f 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 802049d5c8..539bc9e9ea 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.10.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.1 +- @tiptap/vue-2@3.10.1 +- @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 0924a78cd5..472f4a89f5 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 20eab2dd52..d3317d125b 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.10.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.1 +- @tiptap/vue-3@3.10.1 +- @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 1d20bc3c03..c71e7cc5ef 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index b9ae48d5bd..0288eb1189 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/extension-collaboration@3.10.1 + - @tiptap/extension-node-range@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 40dea617e0..8e15d499a3 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 24c1fe1d2f..90841b5243 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/suggestion@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 64b0dee807..cf80a1a032 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 76a45ebceb..ee24aad18d 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/extension-text-style@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 5b590a9b34..c754d14396 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 4285ae3934..3b0605c61e 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index c8661dcf59..68df9e5a92 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index e022590d98..1f7efafc10 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index ccea14e52f..c004a57a8a 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 3afd9673f2..6f8dea0e20 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index eb189c8e20..10acb1546d 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index d19a93eed2..fa76c20f7b 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 147aa9d6b3..5a01e7353b 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index f9ac01c37d..5e0d1dfe9a 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index b8cf1def6a..5b4e741ca4 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 5a1d964398..81be9e8f47 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 477ab5c6a6..7b605d740d 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index af6c052ba0..812b1740ac 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Minor Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index b58ca9ac6b..6bbefc230c 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 5507c4fb13..0f3746c7ad 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/extension-text-style@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 2a1aba164c..564385170c 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index e2f35fdde7..787022ae73 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 2c544d6ad6..1873f137cb 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 84998915c2..1c9933d242 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index fa4c746bd9..29634eaeb9 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 618f29299c..dd3ef746fc 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index d9f6b7fa34..ea15b5f124 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 45a1e66502..6a861cac6b 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index d2220d16bf..55d8091e99 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 6962f739d2..ae20f5af3f 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/suggestion@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 7120cce26f..adabdf22aa 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 3ac3556d65..97b16521bb 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index a85223bf73..88c0a050f8 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 8d11cd61cb..96b83cfb6f 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- @tiptap/extension-list@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index f1cd7ce930..66288260ec 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 3974850fcb..cca1775c3d 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 3db45218a4..2ae6e215cf 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index a4ef9572bd..60ac7860ed 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 450cba7cf5..9b9f756302 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index a76a77b415..1090fdae34 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index cd8d47c612..734bef8b87 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 9a03f0251c..f0b6cd3d74 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 2047c7066b..eaa193402b 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index c34ca2a814..c89ae1ff86 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.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 798c581b59..a1cac2c25b 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 4f43ae2774..0301e891f7 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 98d4564253..10f34ccdfc 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 70e8935049..7ec31db98e 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index d0c4926866..b82194246a 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 4ade1291e4..799db5dcc7 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 04eda8a129..aa1eca560e 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 3a29574008..2618d83518 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 5e5d48d134..9fdccc4956 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 03be556696..f0b3855cbc 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 80683c2892..6ae5dae83c 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 2050f963cd..f13a73a168 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 7239a62657..307f4e50d3 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 86e756de55..39b601aeac 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 12b391e746..34dcf8f9cd 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index b57d508767..c8ea13386a 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index ce9350ca0f..0b55c7d2e0 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index a0e99160b5..cec666a15e 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 0c3dbc2978..b244fbdf79 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index e1369f3d9d..d12068b4b2 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 4e347a3784..f1e76db6b1 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 174b2892f7..e56959f285 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 6a615028f5..57822c0ef5 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 0455b5f303..f63b91683a 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.1 + ## 3.10.0 ## 3.9.1 diff --git a/packages/pm/package.json b/packages/pm/package.json index 181865bce4..f2ffcde542 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index ff8cf04c3a..32db687a1c 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 86bf2934d0..e306260548 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index dd881e9b55..15b39c13f7 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/extension-blockquote@3.10.1 + - @tiptap/extension-bold@3.10.1 + - @tiptap/extension-code@3.10.1 + - @tiptap/extension-code-block@3.10.1 + - @tiptap/extension-document@3.10.1 + - @tiptap/extension-hard-break@3.10.1 + - @tiptap/extension-heading@3.10.1 + - @tiptap/extension-horizontal-rule@3.10.1 + - @tiptap/extension-italic@3.10.1 + - @tiptap/extension-link@3.10.1 + - @tiptap/extension-list@3.10.1 + - @tiptap/extension-paragraph@3.10.1 + - @tiptap/extension-strike@3.10.1 + - @tiptap/extension-text@3.10.1 + - @tiptap/extension-underline@3.10.1 + - @tiptap/extensions@3.10.1 + - @tiptap/extension-list-item@3.10.1 + - @tiptap/extension-list-keymap@3.10.1 + - @tiptap/extension-bullet-list@3.10.1 + - @tiptap/extension-ordered-list@3.10.1 + - @tiptap/extension-dropcursor@3.10.1 + - @tiptap/extension-gapcursor@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 88f545f099..7258397601 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 9ff1df756b..3bd092af13 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index c67a976ff0..c0644f4e9f 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index ea4a9a3929..986cd13f32 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index aa01c61983..5a07d37e3c 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 3914134ae2..650f2df9df 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 5fe5e6ffa8..6e801b77ff 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 92b18e7d34..8917ee22c6 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.1 + +### Patch Changes + +- Updated dependencies [3564e7c] + - @tiptap/core@3.10.1 + - @tiptap/pm@3.10.1 + ## 3.10.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 581f5d90ac..f72ddd9671 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.0", + "version": "3.10.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 533daafb050503604228d78f15163ed25f06e0ce Mon Sep 17 00:00:00 2001 From: bdbch Date: Thu, 30 Oct 2025 20:28:21 +0100 Subject: [PATCH 462/629] fix imports --- demos/src/Examples/ResizableNodes/Vue/index.vue | 4 ++-- packages/core/src/lib/index.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/demos/src/Examples/ResizableNodes/Vue/index.vue b/demos/src/Examples/ResizableNodes/Vue/index.vue index a87a993897..508b96a057 100644 --- a/demos/src/Examples/ResizableNodes/Vue/index.vue +++ b/demos/src/Examples/ResizableNodes/Vue/index.vue @@ -8,7 +8,7 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import { Editor, EditorContent, Node as NodeExtension, ResizableNodeview } from '@tiptap/vue-3' +import { Editor, EditorContent, Node as NodeExtension, ResizableNodeView } from '@tiptap/vue-3' const ResizableNode = NodeExtension.create({ name: 'resizableNode', @@ -58,7 +58,7 @@ const ResizableNode = NodeExtension.create({ el.style.width = width el.style.height = height - const resizable = new ResizableNodeview({ + const resizable = new ResizableNodeView({ element: el, getPos: props.getPos, node: props.node, diff --git a/packages/core/src/lib/index.ts b/packages/core/src/lib/index.ts index 8bddc4cf21..c6e003d60e 100644 --- a/packages/core/src/lib/index.ts +++ b/packages/core/src/lib/index.ts @@ -1 +1 @@ -export * from './ResizableNodeview.js' +export * from './ResizableNodeView.js' From c8e147b4e7b117efa10ab44d019cc8e6165286b3 Mon Sep 17 00:00:00 2001 From: bdbch Date: Thu, 30 Oct 2025 22:58:00 +0100 Subject: [PATCH 463/629] fix filepath --- packages/core/src/lib/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/lib/index.ts b/packages/core/src/lib/index.ts index 8bddc4cf21..c6e003d60e 100644 --- a/packages/core/src/lib/index.ts +++ b/packages/core/src/lib/index.ts @@ -1 +1 @@ -export * from './ResizableNodeview.js' +export * from './ResizableNodeView.js' From 194af3b6cca37dbfc8882326d79a9ead49176bf6 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 31 Oct 2025 17:09:31 +0100 Subject: [PATCH 464/629] feat: fix MarkdownManager to handle mixed Markdown and HTML parsing (#7154) * feat: enhance MarkdownManager to handle mixed Markdown and HTML parsing * fix: correct parsing of mixed inline HTML within Markdown content * Update demos/vite.config.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update packages/markdown/src/MarkdownManager.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update packages/markdown/src/MarkdownManager.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update tests/cypress/integration/markdown/mixed-html.spec.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: escape regex special characters in HTML tag matching Sanitize tagName before using it in RegExp constructor to prevent regex compilation errors or unintended matching behavior when tag names contain special characters. --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/inline-html-fix.md | 5 ++ demos/vite.config.ts | 1 + packages/markdown/src/MarkdownManager.ts | 80 ++++++++++++++++++- .../integration/markdown/mixed-html.spec.ts | 72 +++++++++++++++++ 4 files changed, 155 insertions(+), 3 deletions(-) create mode 100644 .changeset/inline-html-fix.md create mode 100644 tests/cypress/integration/markdown/mixed-html.spec.ts diff --git a/.changeset/inline-html-fix.md b/.changeset/inline-html-fix.md new file mode 100644 index 0000000000..4ae56690d7 --- /dev/null +++ b/.changeset/inline-html-fix.md @@ -0,0 +1,5 @@ +--- +"@tiptap/markdown": patch +--- + +Fix parsing of mixed inline HTML within Markdown content so that inline HTML fragments are parsed correctly. diff --git a/demos/vite.config.ts b/demos/vite.config.ts index 45a588df76..73e8acaa2f 100644 --- a/demos/vite.config.ts +++ b/demos/vite.config.ts @@ -317,6 +317,7 @@ export default defineConfig({ return () => { viteDevServer.middlewares.use(async (req, res, next) => { if (req?.originalUrl?.startsWith('/preview')) { + // @ts-expect-error - req.url is not typed but exists at runtime in Vite middleware req.url = '/preview/index.html' } diff --git a/packages/markdown/src/MarkdownManager.ts b/packages/markdown/src/MarkdownManager.ts index ebb6d419bf..4a28ec82bf 100644 --- a/packages/markdown/src/MarkdownManager.ts +++ b/packages/markdown/src/MarkdownManager.ts @@ -375,6 +375,13 @@ export class MarkdownManager { } } + /** + * Escape special regex characters in a string. + */ + private escapeRegex(str: string): string { + return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&') + } + /** * Parse inline tokens (bold, italic, links, etc.) into text nodes with marks. * This is the complex part that handles mark nesting and boundaries. @@ -382,14 +389,81 @@ export class MarkdownManager { private parseInlineTokens(tokens: MarkdownToken[]): JSONContent[] { const result: JSONContent[] = [] - // Process tokens sequentially - tokens.forEach(token => { + // Process tokens sequentially using an index so we can lookahead and + // merge split inline HTML fragments like: text / / inner / / text + for (let i = 0; i < tokens.length; i += 1) { + const token = tokens[i] + if (token.type === 'text') { // Create text node result.push({ type: 'text', text: token.text || '', }) + } else if (token.type === 'html') { + // Handle possible split inline HTML by attempting to detect an + // opening tag and searching forward for a matching closing tag. + const raw = (token.raw ?? token.text ?? '').toString() + + // Quick checks for opening vs. closing tag + const isClosing = /^<\/[\s]*[\w-]+/i.test(raw) + const openMatch = raw.match(/^<[\s]*([\w-]+)(\s|>|\/|$)/i) + + if (!isClosing && openMatch && !/\/>$/.test(raw)) { + // Try to find the corresponding closing html token for this tag + const tagName = openMatch[1] + const escapedTagName = this.escapeRegex(tagName) + const closingRegex = new RegExp(`^<\\/\\s*${escapedTagName}\\b`, 'i') + let foundIndex = -1 + + // Collect intermediate raw parts to reconstruct full HTML fragment + const parts: string[] = [raw] + for (let j = i + 1; j < tokens.length; j += 1) { + const t = tokens[j] + const tRaw = (t.raw ?? t.text ?? '').toString() + parts.push(tRaw) + if (t.type === 'html' && closingRegex.test(tRaw)) { + foundIndex = j + break + } + } + + if (foundIndex !== -1) { + // Merge opening + inner + closing into one html fragment and parse + const mergedRaw = parts.join('') + const mergedToken = { + type: 'html', + raw: mergedRaw, + text: mergedRaw, + block: false, + } as unknown as MarkdownToken + + const parsed = this.parseHTMLToken(mergedToken) + if (parsed) { + const normalized = this.normalizeParseResult(parsed as any) + if (Array.isArray(normalized)) { + result.push(...normalized) + } else if (normalized) { + result.push(normalized) + } + } + + // Advance i to the closing token + i = foundIndex + continue + } + } + + // Fallback: single html token parse + const parsedSingle = this.parseHTMLToken(token) + if (parsedSingle) { + const normalized = this.normalizeParseResult(parsedSingle as any) + if (Array.isArray(normalized)) { + result.push(...normalized) + } else if (normalized) { + result.push(normalized) + } + } } else if (token.type) { // Handle inline marks (bold, italic, etc.) const markHandler = this.getHandlerForToken(token.type) @@ -415,7 +489,7 @@ export class MarkdownManager { result.push(...this.parseInlineTokens(token.tokens)) } } - }) + } return result } diff --git a/tests/cypress/integration/markdown/mixed-html.spec.ts b/tests/cypress/integration/markdown/mixed-html.spec.ts new file mode 100644 index 0000000000..222545e0db --- /dev/null +++ b/tests/cypress/integration/markdown/mixed-html.spec.ts @@ -0,0 +1,72 @@ +import { Document } from '@tiptap/extension-document' +import { Heading } from '@tiptap/extension-heading' +import { Italic } from '@tiptap/extension-italic' +import { Paragraph } from '@tiptap/extension-paragraph' +import { Text } from '@tiptap/extension-text' +import { MarkdownManager } from '@tiptap/markdown' + +describe('MarkdownManager Mixed Markdown + HTML', () => { + let manager: MarkdownManager + const basicExtensions = [Document, Paragraph, Text, Heading, Italic] + + beforeEach(() => { + manager = new MarkdownManager({ extensions: basicExtensions }) + }) + + it('parses heading with inline HTML as italic', () => { + const md = '## hello world' + const doc = manager.parse(md) + + expect(doc.type).to.equal('doc') + expect(doc.content).to.be.an('array') + const heading = doc.content[0] + expect(heading.type).to.equal('heading') + // Find the text node that contains 'world' + const textNodes = heading.content.flatMap((n: any) => (n.type === 'text' ? [n] : n.content || [])) + const worldNode = textNodes.find((n: any) => n.text && n.text.includes('world')) + // Use a function-call assertion to avoid the "no-unused-expressions" lint error + expect(worldNode).to.not.equal(undefined) + // The italic mark should be present + expect(worldNode!.marks).to.be.an('array') + const hasItalic = worldNode!.marks.some((m: any) => m.type === 'italic') + expect(hasItalic).to.equal(true) + }) + + it('parses standalone inline HTML world as italic', () => { + const md = 'world' + const doc = manager.parse(md) + + expect(doc.type).to.equal('doc') + // Inline HTML typically produces a paragraph wrapper + const paragraph = doc.content[0] + expect(paragraph.type).to.equal('paragraph') + const textNode = paragraph.content[0] + expect(textNode.text).to.equal('world') + expect(textNode.marks).to.be.an('array') + const hasItalic = (textNode.marks || []).some((m: any) => m.type === 'italic') + expect(hasItalic).to.equal(true) + }) + + it('parses markdown italic next to HTML italic correctly', () => { + const md = '*a* b *c*' + const doc = manager.parse(md) + + expect(doc.type).to.equal('doc') + const para = doc.content[0] + expect(para.type).to.equal('paragraph') + + // Collect texts and their mark states + const runs = para.content.map((n: any) => ({ text: n.text, marks: n.marks || [] })) + // Expect there to be runs containing a, b, c + const texts = runs.map(r => (r.text || '').trim()) + expect(texts).to.include('a') + expect(texts).to.include('b') + expect(texts).to.include('c') + ;['a', 'b', 'c'].forEach(letter => { + const node = runs.find(r => (r.text || '').trim() === letter) + expect(node).to.not.equal(undefined) + const hasItalic = ((node as any).marks || []).some((m: any) => m.type === 'italic') + expect(hasItalic).to.equal(true) + }) + }) +}) From d83e6005a31bfa142dbc2ac5d7b1251555397053 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 4 Nov 2025 16:55:06 +0100 Subject: [PATCH 465/629] Docs/add security md (#7166) * Add SECURITY.md for OSS security policy * Add SECURITY.md for OSS security policy * Update CONTRIBUTING.md to reference SECURITY.md --- CONTRIBUTING.md | 4 ++++ SECURITY.md | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 SECURITY.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index fc435b27d4..8c79662051 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -16,6 +16,10 @@ world that developers are civilized and selfless people. It's the duty of the maintainer to ensure that all submissions to the project are of sufficient quality to benefit the project. Many developers have different skillsets, strengths, and weaknesses. Respect the maintainer's decision, and do not be upset or abusive if your submission is not used. +## Security + +If you discover a security vulnerability, please refer to our [Security Policy](SECURITY.md) for reporting instructions. + ## Viability When requesting or submitting new features, first consider whether it might be useful to others. Open diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000000..b5ee8360b0 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,32 @@ +# Security Policy + +## Reporting Vulnerabilities + +If you discover a security vulnerability in Tiptap, please report it responsibly. We appreciate your help in keeping our users safe. + +### How to Report + +**Please do not report security vulnerabilities through public GitHub issues.** + +Send details to security@tiptap.dev. Include a description of the vulnerability, steps to reproduce, and any potential impact. + +We will acknowledge receipt within 48 hours and provide updates as we investigate. + +## Response Process + +Vulnerabilities are assessed and prioritized based on severity, exploitability, and business impact. Fixes are deployed according to the following timelines: + +- **Critical** (e.g., remote code execution, data breaches): Fixed and released within 24 hours. +- **High** (e.g., significant data exposure): Fixed and released within 72 hours. +- **Medium** (e.g., moderate leaks): Fixed and released within 14 days. +- **Low** (e.g., minor issues): Addressed in the next scheduled update. + +We follow responsible disclosure practices and will credit reporters unless requested otherwise. + +## Scope + +This policy applies to all Tiptap packages and related infrastructure. Reports are handled through our established vulnerability management process. + +## Contact + +For questions, email security@tiptap.dev or humans@tiptap.dev. From 8299f73b4a430642916adfeae0d24dd1f34ab12b Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 4 Nov 2025 17:11:39 +0100 Subject: [PATCH 466/629] feat: enhance table extension to respect user-defined styles for widths (#7165) * feat: enhance table extension to respect user-defined styles for widths * feat: add pull request description template to guidelines * fix: improve width style check in updateColumns function * refactor: remove unused addAttributes method from Table extension --- .changeset/table-width-fix-respect-styles.md | 5 +++ .github/instructions/PR.instructions.md | 43 +++++++++++++++++++ .../instructions/changeset.instructions.md | 9 ++++ .gitignore | 2 + .../extension-table/src/table/TableView.ts | 11 ++++- packages/extension-table/src/table/table.ts | 12 +++++- 6 files changed, 80 insertions(+), 2 deletions(-) create mode 100644 .changeset/table-width-fix-respect-styles.md create mode 100644 .github/instructions/PR.instructions.md create mode 100644 .github/instructions/changeset.instructions.md diff --git a/.changeset/table-width-fix-respect-styles.md b/.changeset/table-width-fix-respect-styles.md new file mode 100644 index 0000000000..278e8c85d8 --- /dev/null +++ b/.changeset/table-width-fix-respect-styles.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-table": patch +--- + +Allow setting custom table widths by respecting user-provided `style` attributes instead of always overriding them with calculated widths. diff --git a/.github/instructions/PR.instructions.md b/.github/instructions/PR.instructions.md new file mode 100644 index 0000000000..45ca6ce3c1 --- /dev/null +++ b/.github/instructions/PR.instructions.md @@ -0,0 +1,43 @@ +--- +applyTo: '**' +--- + +When asked to write a pull request description, use the following template: + +``` +## Changes Overview + + + +## Implementation Approach + + + +## Testing Done + + + +## Verification Steps + + + +## Additional Notes + + + +## Checklist + +- [ ] I have created a [changeset](https://github.com/changesets/changesets) for this PR if necessary. +- [ ] My changes do not break the library. +- [ ] I have added tests where applicable. +- [ ] I have followed the project guidelines. +- [ ] I have fixed any lint issues. + +## Related Issues + + +``` + +When generating the pull request description, ensure it is clear, concise, and follows the provided template. Focus on the key aspects of the changes made, how they were implemented, and how they can be verified. + +Make it as minimal as possible to convey the necessary information effectively without causing to much noise and making it hard to read. diff --git a/.github/instructions/changeset.instructions.md b/.github/instructions/changeset.instructions.md new file mode 100644 index 0000000000..0c22a4da51 --- /dev/null +++ b/.github/instructions/changeset.instructions.md @@ -0,0 +1,9 @@ +--- +applyTo: '**' +--- + +When a user asks for a changeset to be generated, follow the following rules: + +Create a good changeset file for the changes in the diff. Don't include non-frontfacing changes, as the changeset file will be used for the changelog. Our users don't care about deep logic that they'll not interact with so we only want to generate changelog entries for front-facing/user-facing changes and API changes our users will need to know about. + +Make sure that the changeset file stays minimal and short but includes important information that may be important for our users to understand what actually changed. diff --git a/.gitignore b/.gitignore index 4d2d633848..f63c1ff75c 100644 --- a/.gitignore +++ b/.gitignore @@ -44,3 +44,5 @@ demos/src/Dev/** # instructions .github/instructions/* !.github/instructions/tiptap.instructions.md +!.github/instructions/changeset.instructions.md +!.github/instructions/PR.instructions.md diff --git a/packages/extension-table/src/table/TableView.ts b/packages/extension-table/src/table/TableView.ts index 6215f1d1f8..694509037d 100644 --- a/packages/extension-table/src/table/TableView.ts +++ b/packages/extension-table/src/table/TableView.ts @@ -58,7 +58,10 @@ export function updateColumns( nextDOM = after } - if (fixedWidth) { + // Check if user has set a width style on the table node + const hasUserWidth = node.attrs.style && typeof node.attrs.style === 'string' && /\bwidth\s*:/i.test(node.attrs.style) + + if (fixedWidth && !hasUserWidth) { table.style.width = `${totalWidth}px` table.style.minWidth = '' } else { @@ -86,6 +89,12 @@ export class TableView implements NodeView { this.dom = document.createElement('div') this.dom.className = 'tableWrapper' this.table = this.dom.appendChild(document.createElement('table')) + + // Apply user styles to the table element + if (node.attrs.style) { + this.table.style.cssText = node.attrs.style + } + this.colgroup = this.table.appendChild(document.createElement('colgroup')) updateColumns(node, this.colgroup, this.table, cellMinWidth) this.contentDOM = this.table.appendChild(document.createElement('tbody')) diff --git a/packages/extension-table/src/table/table.ts b/packages/extension-table/src/table/table.ts index fa853cd32c..31c8361de8 100644 --- a/packages/extension-table/src/table/table.ts +++ b/packages/extension-table/src/table/table.ts @@ -280,10 +280,20 @@ export const Table = Node.create({ renderHTML({ node, HTMLAttributes }) { const { colgroup, tableWidth, tableMinWidth } = createColGroup(node, this.options.cellMinWidth) + const userStyles = HTMLAttributes.style as string | undefined + + function getTableStyle() { + if (userStyles) { + return userStyles + } + + return tableWidth ? `width: ${tableWidth}` : `min-width: ${tableMinWidth}` + } + const table: DOMOutputSpec = [ 'table', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes, { - style: tableWidth ? `width: ${tableWidth}` : `min-width: ${tableMinWidth}`, + style: getTableStyle(), }), colgroup, ['tbody', 0], From fa9657daba34ed4c712d99f3f0a9550fc0dc3ee3 Mon Sep 17 00:00:00 2001 From: bdbch Date: Wed, 5 Nov 2025 10:18:06 +0100 Subject: [PATCH 467/629] remove unused directive --- demos/vite.config.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/demos/vite.config.ts b/demos/vite.config.ts index 73e8acaa2f..45a588df76 100644 --- a/demos/vite.config.ts +++ b/demos/vite.config.ts @@ -317,7 +317,6 @@ export default defineConfig({ return () => { viteDevServer.middlewares.use(async (req, res, next) => { if (req?.originalUrl?.startsWith('/preview')) { - // @ts-expect-error - req.url is not typed but exists at runtime in Vite middleware req.url = '/preview/index.html' } From 42fb0999a8c23e9d04012e57c7f349a4c33b74ef Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 5 Nov 2025 12:09:10 +0100 Subject: [PATCH 468/629] chore(release): publish a new release version (#7159) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/inline-html-fix.md | 5 ---- .changeset/table-width-fix-respect-styles.md | 5 ---- CHANGELOG.md | 14 +++++++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 7 +++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 7 +++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 7 +++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 143 files changed, 572 insertions(+), 80 deletions(-) delete mode 100644 .changeset/inline-html-fix.md delete mode 100644 .changeset/table-width-fix-respect-styles.md diff --git a/.changeset/inline-html-fix.md b/.changeset/inline-html-fix.md deleted file mode 100644 index 4ae56690d7..0000000000 --- a/.changeset/inline-html-fix.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/markdown": patch ---- - -Fix parsing of mixed inline HTML within Markdown content so that inline HTML fragments are parsed correctly. diff --git a/.changeset/table-width-fix-respect-styles.md b/.changeset/table-width-fix-respect-styles.md deleted file mode 100644 index 278e8c85d8..0000000000 --- a/.changeset/table-width-fix-respect-styles.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-table": patch ---- - -Allow setting custom table widths by respecting user-provided `style` attributes instead of always overriding them with calculated widths. diff --git a/CHANGELOG.md b/CHANGELOG.md index c737585a76..76013ef11d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # Releases +## v3.10.2 + +### @tiptap/markdown + +#### Patch Changes + +- Fix parsing of mixed inline HTML within Markdown content so that inline HTML fragments are parsed correctly. + +### @tiptap/extension-table + +#### Patch Changes + +- Allow setting custom table widths by respecting user-provided `style` attributes instead of always overriding them with calculated widths. + ## v3.10.1 ### @tiptap/core diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 9331300646..fd69a80ffc 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extensions@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index a8302cad6b..15e5ac5128 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 11e9d7cd83..4f01e247ba 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extensions@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 1186249b70..50ed6d9cef 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index d7efa26afa..9fb08e6fcd 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extensions@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 72bac0559c..ce145ca14d 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 33ea334ab6..4298eb5f7c 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extensions@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index b3b9a50c58..ce9250cc9d 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 372b499085..2c205364d6 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extensions@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 9b851a2439..3ab563d03a 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 4044ad6f33..54e06bad4d 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-list@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 68cc25af62..38e13b8001 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 4e6fe80c09..7524e63509 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-list@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 2c473ed18d..f5b59b678d 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index b915fca20e..d9f4ee1729 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extensions@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index e81f54767a..ba6577b7c3 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 201cd11233..399e1d1961 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- Updated dependencies [8299f73] + - @tiptap/extension-table@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 51efbbe1b7..42b8abbcf2 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index a30ee454e5..c0a9dd6918 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- Updated dependencies [8299f73] + - @tiptap/extension-table@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 66b31b1002..d9007c36cd 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 1a385aed24..22856b328c 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- Updated dependencies [8299f73] + - @tiptap/extension-table@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 173bd8522b..78b3d83d49 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 66a67f6034..f93cdfb015 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-list@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 0581219273..fcf4efb892 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 53255eff41..d2383d1c30 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-list@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 753dd4b7dd..9ea53fae1f 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 3162188bf0..e803297868 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index f0478eec99..a2cce8d272 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 9a78ae3dc3..e7e3b99583 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 622c646f4c..dc1caa2cec 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index c66f3e3374..164c348814 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 524209ce59..30bfed0293 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 795e009447..3eb67bd798 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index efa8eeacfe..e22e390074 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 05f1974f19..ef0ed69b36 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-list@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 4424f38445..e46bd818a2 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 02be78629c..f147026706 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/extension-code-block@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index ff34df041c..4bd55c6d4c 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 8b574bf5fe..581d0c169e 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 14d8653df4..04fde556cd 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 963ff4f602..1054ab33d7 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 7ac7ede464..f49b56487c 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 507f599ed1..2be1a3762a 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 647f25e2b5..92312bf702 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index a03d9d92aa..6d1a3b50cc 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 7b9d5c6ce5..0bc144bea1 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 28ab4b420a..43db15051d 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 78ab511b2e..31b1db0209 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 2575167300..f120f86266 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/extension-text-style@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 3860d62a3e..946677f368 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index d9f517d93f..50faac6398 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index e9bf1b029a..363e5b2b5c 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 6f92d1a6a9..1fb49b6a24 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.10.2 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.2 +- @tiptap/pm@3.10.2 +- @tiptap/react@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 892019d21f..b49d165f02 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 539bc9e9ea..cacc8df763 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.10.2 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.2 +- @tiptap/pm@3.10.2 +- @tiptap/vue-2@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 472f4a89f5..1f8e23b609 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index d3317d125b..c08644fa0e 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.10.2 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.2 +- @tiptap/pm@3.10.2 +- @tiptap/vue-3@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index c71e7cc5ef..a95d9b2cea 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 0288eb1189..df7dde983c 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/extension-collaboration@3.10.2 +- @tiptap/extension-node-range@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 8e15d499a3..1a0c7ffc86 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 90841b5243..d7529502cb 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 +- @tiptap/suggestion@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index cf80a1a032..9ba0751459 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index ee24aad18d..613e79f050 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/extension-text-style@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index c754d14396..754b68fe76 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 3b0605c61e..2db2909588 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 68df9e5a92..74637c0b3f 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 1f7efafc10..19593e70a1 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index c004a57a8a..760eff2525 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 6f8dea0e20..373b09114f 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 10acb1546d..f77a461256 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index fa76c20f7b..06f6b7fe6f 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 5a01e7353b..7ea5fca145 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 5e0d1dfe9a..bbe59bf87f 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 5b4e741ca4..3ac830a453 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 81be9e8f47..44a494949f 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 7b605d740d..41a5f94fea 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 812b1740ac..0b8bf98e1d 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 6bbefc230c..53dbe104db 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 0f3746c7ad..957c078165 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/extension-text-style@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 564385170c..45ec7a1fe4 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 787022ae73..8092bef929 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 1873f137cb..8b79660bf2 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 1c9933d242..882cc06735 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 29634eaeb9..cf6efc0a0d 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index dd3ef746fc..3e192ebbbe 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index ea15b5f124..d6f12905b0 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 6a861cac6b..65928da390 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 55d8091e99..3a7a83b7ff 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index ae20f5af3f..ccf28de3c6 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 +- @tiptap/suggestion@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index adabdf22aa..477d80d591 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 97b16521bb..5844b7379e 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 88c0a050f8..cd3b61fd18 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 96b83cfb6f..88c6c2e2fd 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-list@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 66288260ec..95345155d3 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index cca1775c3d..32c592dc91 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 2ae6e215cf..774802bf6c 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 60ac7860ed..d8d049f633 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 9b9f756302..40284eed0b 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 1090fdae34..cfbe0c3ab0 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 734bef8b87..772f84c0ad 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index f0b6cd3d74..3e9e6e0a7d 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index eaa193402b..2ae3a74f9e 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index c89ae1ff86..0342afb1d1 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index a1cac2c25b..89cbdf852f 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 0301e891f7..34b0dae3a2 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- 8299f73: Allow setting custom table widths by respecting user-provided `style` attributes instead of always overriding them with calculated widths. + - @tiptap/core@3.10.2 + - @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 10f34ccdfc..541f639d21 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 7ec31db98e..ce85036176 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index b82194246a..2e2f27d5eb 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 799db5dcc7..5cf05ca21d 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index aa1eca560e..fa765c911f 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 2618d83518..cee1d1e556 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 9fdccc4956..ba46f18432 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index f0b3855cbc..3a5f865279 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 6ae5dae83c..cb5593a521 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index f13a73a168..1c90e98ea2 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 307f4e50d3..2684c8825b 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 39b601aeac..2306349b5c 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 34dcf8f9cd..ca9b425627 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index c8ea13386a..a04396de57 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 0b55c7d2e0..5ddb2144f1 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index cec666a15e..2cc46126e7 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index b244fbdf79..98d368e4ae 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index d12068b4b2..af43b6769f 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index f1e76db6b1..ab1454f103 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index e56959f285..cc4c7ca2b9 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.10.2 + +### Patch Changes + +- 194af3b: Fix parsing of mixed inline HTML within Markdown content so that inline HTML fragments are parsed correctly. + - @tiptap/core@3.10.2 + - @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 57822c0ef5..0a254679d5 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index f63b91683a..4fa92e61b3 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.2 + ## 3.10.1 ## 3.10.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index f2ffcde542..9f4a6c4e80 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 32db687a1c..f0475c74b9 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index e306260548..6105b8285d 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 15b39c13f7..fc0786d15f 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.10.2 +- @tiptap/extension-gapcursor@3.10.2 +- @tiptap/extension-list-item@3.10.2 +- @tiptap/extension-list-keymap@3.10.2 +- @tiptap/core@3.10.2 +- @tiptap/extension-blockquote@3.10.2 +- @tiptap/extension-bold@3.10.2 +- @tiptap/extension-bullet-list@3.10.2 +- @tiptap/extension-code@3.10.2 +- @tiptap/extension-code-block@3.10.2 +- @tiptap/extension-document@3.10.2 +- @tiptap/extension-hard-break@3.10.2 +- @tiptap/extension-heading@3.10.2 +- @tiptap/extension-horizontal-rule@3.10.2 +- @tiptap/extension-italic@3.10.2 +- @tiptap/extension-link@3.10.2 +- @tiptap/extension-list@3.10.2 +- @tiptap/extension-ordered-list@3.10.2 +- @tiptap/extension-paragraph@3.10.2 +- @tiptap/extension-strike@3.10.2 +- @tiptap/extension-text@3.10.2 +- @tiptap/extension-underline@3.10.2 +- @tiptap/extensions@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 7258397601..e4599c4f08 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 3bd092af13..4669c65a98 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index c0644f4e9f..06accb48bb 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 986cd13f32..358f2eb3ab 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 5a07d37e3c..bdb3baced6 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 650f2df9df..13a7636399 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 6e801b77ff..abeb5a2833 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 8917ee22c6..4b4c74c720 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.2 + +### Patch Changes + +- @tiptap/core@3.10.2 +- @tiptap/pm@3.10.2 + ## 3.10.1 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index f72ddd9671..3b3346adb2 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.1", + "version": "3.10.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From f80391b3ad10d4bd72807dd76327806cdee4207e Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 6 Nov 2025 14:51:46 +0100 Subject: [PATCH 469/629] fix: parse mixed bullet lists and task lists correctly (#7178) * fix: parse mixed bullet lists and task lists correctly - Fix Marked.js grouping consecutive bullet and task list items into single list - Add special handling for list tokens to split mixed lists into separate bulletList/taskList nodes - Fix nested content parsing in task items to properly handle headings and nested lists - Move isTaskItem utility function to utils.ts for better separation of concerns - Add test case for mixed list types conversion Fixes #7093 * Update packages/markdown/src/MarkdownManager.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update packages/markdown/src/MarkdownManager.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: improve type safety in markdown utils - Import MarkdownToken type from @tiptap/core - Change isTaskItem function parameter type from 'any' to 'MarkdownToken' for better type safety This change enhances the robustness of the task item detection logic by using proper typing instead of the generic 'any' type, aligning with the ongoing work to correctly parse mixed bullet lists and task lists. * fix: enhance task item detection in isTaskItem function * fix: use nullish coalescing for task item checked state - Change `checked || false` to `checked ?? false` in parseListToken - Ensures that explicit `false` values are preserved instead of being converted to `false` by logical OR - Improves accuracy of task item checked state handling in mixed list parsing This change fixes a potential issue where task items with explicit `false` checked values could be incorrectly handled, ensuring proper boolean state preservation during markdown parsing. --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../fix-mixed-list-parsing--sharp-shark.md | 5 + packages/markdown/src/MarkdownManager.ts | 170 +++++++++++++++++- packages/markdown/src/utils.ts | 27 ++- .../markdown/conversion-files/index.ts | 2 + .../conversion-files/mixed-list-types.ts | 53 ++++++ 5 files changed, 255 insertions(+), 2 deletions(-) create mode 100644 .changeset/fix-mixed-list-parsing--sharp-shark.md create mode 100644 tests/cypress/integration/markdown/conversion-files/mixed-list-types.ts diff --git a/.changeset/fix-mixed-list-parsing--sharp-shark.md b/.changeset/fix-mixed-list-parsing--sharp-shark.md new file mode 100644 index 0000000000..ee7d7d9dfb --- /dev/null +++ b/.changeset/fix-mixed-list-parsing--sharp-shark.md @@ -0,0 +1,5 @@ +--- +"@tiptap/markdown": patch +--- + +Fix parsing of mixed bullet lists and task lists. Previously, Marked.js would group consecutive bullet list items and task list items into a single list token, causing incorrect parsing. Now the parser detects mixed lists and splits them into separate bulletList and taskList nodes. diff --git a/packages/markdown/src/MarkdownManager.ts b/packages/markdown/src/MarkdownManager.ts index 4a28ec82bf..497e5af258 100644 --- a/packages/markdown/src/MarkdownManager.ts +++ b/packages/markdown/src/MarkdownManager.ts @@ -20,6 +20,7 @@ import { findMarksToClose, findMarksToCloseAtEnd, findMarksToOpen, + isTaskItem, reopenMarksAfterNode, wrapInMarkdownBlock, } from './utils.js' @@ -303,6 +304,11 @@ export class MarkdownManager { return null } + // Special handling for 'list' tokens that may contain mixed bullet/task items + if (token.type === 'list') { + return this.parseListToken(token) + } + const handlers = this.getHandlersForToken(token.type) const helpers = this.createParseHelpers() @@ -339,7 +345,169 @@ export class MarkdownManager { private lastParseResult: JSONContent | JSONContent[] | null = null /** - * Create the helper functions that are passed to parse handlers. + * Parse a list token, handling mixed bullet and task list items by splitting them into separate lists. + * This ensures that consecutive task items and bullet items are grouped and parsed as separate list nodes. + * + * @param token The list token to parse + * @returns Array of parsed list nodes, or null if parsing fails + */ + private parseListToken(token: MarkdownToken): JSONContent | JSONContent[] | null { + if (!token.items || token.items.length === 0) { + // No items, parse normally + return this.parseTokenWithHandlers(token) + } + + const hasTask = token.items.some(item => isTaskItem(item).isTask) + const hasNonTask = token.items.some(item => !isTaskItem(item).isTask) + + if (!hasTask || !hasNonTask || this.getHandlersForToken('taskList').length === 0) { + // Not mixed or no taskList extension, parse normally + return this.parseTokenWithHandlers(token) + } + + // Mixed list with taskList extension available: split into separate lists + type TaskListItemToken = MarkdownToken & { type: 'taskItem'; checked?: boolean; indentLevel?: number } + const groups: { type: 'list' | 'taskList'; items: (MarkdownToken | TaskListItemToken)[] }[] = [] + let currentGroup: (MarkdownToken | TaskListItemToken)[] = [] + let currentType: 'list' | 'taskList' | null = null + + for (let i = 0; i < token.items.length; i += 1) { + const item = token.items[i] + const { isTask, checked, indentLevel } = isTaskItem(item) + let processedItem = item + + if (isTask) { + // Transform list_item into taskItem token + const raw = item.raw || item.text || '' + + // Split raw content by lines to separate main content from nested + const lines = raw.split('\n') + + // Extract main content from the first line + const firstLineMatch = lines[0].match(/^\s*[-+*]\s+\[([ xX])\]\s+(.*)$/) + const mainContent = firstLineMatch ? firstLineMatch[2] : '' + + // Parse nested content from remaining lines + let nestedTokens: MarkdownToken[] = [] + if (lines.length > 1) { + // Join all lines after the first + const nestedRaw = lines.slice(1).join('\n') + + // Only parse if there's actual content + if (nestedRaw.trim()) { + // Find minimum indentation of non-empty lines + const nestedLines = lines.slice(1) + const nonEmptyLines = nestedLines.filter(line => line.trim()) + if (nonEmptyLines.length > 0) { + const minIndent = Math.min(...nonEmptyLines.map(line => line.length - line.trimStart().length)) + // Remove common indentation while preserving structure + const trimmedLines = nestedLines.map(line => { + if (!line.trim()) { + return '' // Keep empty lines + } + return line.slice(minIndent) + }) + const nestedContent = trimmedLines.join('\n').trim() + // Use the lexer to parse nested content + if (nestedContent) { + // Use the full lexer pipeline to ensure inline tokens are populated + nestedTokens = this.markedInstance.lexer(`${nestedContent}\n`) + } + } + } + } + + processedItem = { + type: 'taskItem', + raw: '', + mainContent, + indentLevel, + checked: checked ?? false, + text: mainContent, + tokens: this.lexer.inlineTokens(mainContent), + nestedTokens, + } + } + + const itemType: 'list' | 'taskList' = isTask ? 'taskList' : 'list' + + if (currentType !== itemType) { + if (currentGroup.length > 0) { + groups.push({ type: currentType!, items: currentGroup }) + } + currentGroup = [processedItem] + currentType = itemType + } else { + currentGroup.push(processedItem) + } + } + + if (currentGroup.length > 0) { + groups.push({ type: currentType!, items: currentGroup }) + } + + // Parse each group as a separate token + const results: JSONContent[] = [] + for (let i = 0; i < groups.length; i += 1) { + const group = groups[i] + const subToken = { ...token, type: group.type, items: group.items } + const parsed = this.parseToken(subToken) + if (parsed) { + if (Array.isArray(parsed)) { + results.push(...parsed) + } else { + results.push(parsed) + } + } + } + + return results.length > 0 ? results : null + } + + /** + * Parse a token using registered handlers (extracted for reuse). + */ + private parseTokenWithHandlers(token: MarkdownToken): JSONContent | JSONContent[] | null { + if (!token.type) { + return null + } + + const handlers = this.getHandlersForToken(token.type) + const helpers = this.createParseHelpers() + + // Try each handler until one returns a valid result + const result = handlers.find(handler => { + if (!handler.parseMarkdown) { + return false + } + + const parseResult = handler.parseMarkdown(token, helpers) + const normalized = this.normalizeParseResult(parseResult) + + // Check if this handler returned a valid result (not null/empty array) + if (normalized && (!Array.isArray(normalized) || normalized.length > 0)) { + // Store result for return + this.lastParseResult = normalized + return true + } + + return false + }) + + // If a handler worked, return its result + if (result && this.lastParseResult) { + const toReturn = this.lastParseResult + this.lastParseResult = null // Clean up + return toReturn + } + + // If no handler worked, try fallback parsing + return this.parseFallbackToken(token) + } + + /** + * Creates helper functions for parsing markdown tokens. + * @returns An object containing helper functions for parsing. */ private createParseHelpers(): MarkdownParseHelpers { return { diff --git a/packages/markdown/src/utils.ts b/packages/markdown/src/utils.ts index 171cbc3370..3288cce131 100644 --- a/packages/markdown/src/utils.ts +++ b/packages/markdown/src/utils.ts @@ -1,4 +1,4 @@ -import type { Content } from '@tiptap/core' +import type { Content, MarkdownToken } from '@tiptap/core' import type { Fragment, Node } from '@tiptap/pm/model' import type { ContentType } from './types' @@ -133,6 +133,31 @@ export function reopenMarksAfterNode( return afterMarkdown } +/** + * Check if a markdown list item token is a task item and extract its state. + * + * @param item The list item token to check + * @returns Object containing isTask flag, checked state, and indentation level + * + * @example + * ```ts + * isTaskItem({ raw: '- [ ] Task' }) // { isTask: true, checked: false, indentLevel: 0 } + * isTaskItem({ raw: ' - [x] Done' }) // { isTask: true, checked: true, indentLevel: 2 } + * isTaskItem({ raw: '- Regular' }) // { isTask: false, indentLevel: 0 } + * ``` + */ +export function isTaskItem(item: MarkdownToken): { isTask: boolean; checked?: boolean; indentLevel: number } { + const raw = item.raw || item.text || '' + + // Match patterns like "- [ ] " or " - [x] " + const match = raw.match(/^(\s*)[-+*]\s+\[([ xX])\]\s+/) + + if (match) { + return { isTask: true, checked: match[2].toLowerCase() === 'x', indentLevel: match[1].length } + } + return { isTask: false, indentLevel: 0 } +} + /** * Assumes the content type based off the content. * @param content The content to assume the type for. diff --git a/tests/cypress/integration/markdown/conversion-files/index.ts b/tests/cypress/integration/markdown/conversion-files/index.ts index 24d2138a9b..e95019f1bf 100644 --- a/tests/cypress/integration/markdown/conversion-files/index.ts +++ b/tests/cypress/integration/markdown/conversion-files/index.ts @@ -1,6 +1,8 @@ +export * as bulletList from './bullet-list.js' export * as customAtom from './custom-atom.js' export * as customBlock from './custom-block.js' export * as customInline from './custom-inline.js' +export * as mixedListTypes from './mixed-list-types.js' export * as nestedNodes from './nested-nodes.js' export * as orderedList from './ordered-list.js' export * as taskList from './task-list.js' diff --git a/tests/cypress/integration/markdown/conversion-files/mixed-list-types.ts b/tests/cypress/integration/markdown/conversion-files/mixed-list-types.ts new file mode 100644 index 0000000000..380a58e55d --- /dev/null +++ b/tests/cypress/integration/markdown/conversion-files/mixed-list-types.ts @@ -0,0 +1,53 @@ +export const name = 'Mixed List Types' + +export const expectedInput = ` +- Test + +- [ ] Test +- [ ] Test 2 +`.trim() + +export const expectedOutput = { + type: 'doc', + content: [ + { + type: 'bulletList', + content: [ + { + type: 'listItem', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'Test' }], + }, + ], + }, + ], + }, + { + type: 'taskList', + content: [ + { + type: 'taskItem', + attrs: { checked: false }, + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'Test' }], + }, + ], + }, + { + type: 'taskItem', + attrs: { checked: false }, + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'Test 2' }], + }, + ], + }, + ], + }, + ], +} From 13fdcb56580bd7c0b302a84cff328b9bc4edea74 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 7 Nov 2025 15:11:21 +0100 Subject: [PATCH 470/629] fix: prevent marks from continuing across hard breaks in Markdown (#7181) * fix: prevent marks from continuing across hard breaks in Markdown serialization Hard breaks should terminate marks (like bold/italic) in Markdown output, ensuring that line breaks don't inadvertently continue formatting across paragraph boundaries. This fixes issue #7136 where marks were incorrectly retained after hard break nodes. - Modified renderNodesWithMarkBoundaries to skip mark reopening after hardBreak nodes - Added comprehensive tests for hard break mark boundary behavior - Created changeset for @tiptap/markdown package * fix: simplify renderMarkdown function in hard break extension * fix: update renderMarkdown to include two spaces before line break and add soft break marks test * fix: update expectedInput to include line breaks for proper Markdown rendering --- .../fix-hard-break-marks--noble-tiger.md | 5 +++ .../extension-hard-break/src/hard-break.ts | 2 +- packages/markdown/src/MarkdownManager.ts | 8 +++-- .../conversion-files/hard-break-marks.ts | 31 +++++++++++++++++++ .../markdown/conversion-files/index.ts | 2 ++ .../conversion-files/soft-break-marks.ts | 30 ++++++++++++++++++ .../integration/markdown/conversion.spec.ts | 2 ++ 7 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 .changeset/fix-hard-break-marks--noble-tiger.md create mode 100644 tests/cypress/integration/markdown/conversion-files/hard-break-marks.ts create mode 100644 tests/cypress/integration/markdown/conversion-files/soft-break-marks.ts diff --git a/.changeset/fix-hard-break-marks--noble-tiger.md b/.changeset/fix-hard-break-marks--noble-tiger.md new file mode 100644 index 0000000000..336831e664 --- /dev/null +++ b/.changeset/fix-hard-break-marks--noble-tiger.md @@ -0,0 +1,5 @@ +--- +"@tiptap/markdown": patch +--- + +Fix markdown serialization to prevent marks from continuing after hard breaks. Previously, marks like bold would incorrectly persist across hard breaks in the markdown output. diff --git a/packages/extension-hard-break/src/hard-break.ts b/packages/extension-hard-break/src/hard-break.ts index 1d187f4c0a..776f5dcb8e 100644 --- a/packages/extension-hard-break/src/hard-break.ts +++ b/packages/extension-hard-break/src/hard-break.ts @@ -64,7 +64,7 @@ export const HardBreak = Node.create({ return '\n' }, - renderMarkdown: (_node, h) => h.indent(`\n`), + renderMarkdown: () => ` \n`, parseMarkdown: () => { return { diff --git a/packages/markdown/src/MarkdownManager.ts b/packages/markdown/src/MarkdownManager.ts index 497e5af258..9b092136ed 100644 --- a/packages/markdown/src/MarkdownManager.ts +++ b/packages/markdown/src/MarkdownManager.ts @@ -927,8 +927,12 @@ export class MarkdownManager { // Render the node const nodeContent = this.renderNodeToMarkdown(node, parentNode, i, level) - // Reopen marks after the node - const afterMarkdown = reopenMarksAfterNode(marksToReopen, activeMarks, this.getMarkOpening.bind(this)) + // Reopen marks after the node, but NOT after a hard break + // Hard breaks should terminate marks (they create a line break where marks don't continue) + const afterMarkdown = + node.type === 'hardBreak' + ? '' + : reopenMarksAfterNode(marksToReopen, activeMarks, this.getMarkOpening.bind(this)) result.push(beforeMarkdown + nodeContent + afterMarkdown) } diff --git a/tests/cypress/integration/markdown/conversion-files/hard-break-marks.ts b/tests/cypress/integration/markdown/conversion-files/hard-break-marks.ts new file mode 100644 index 0000000000..133a87923b --- /dev/null +++ b/tests/cypress/integration/markdown/conversion-files/hard-break-marks.ts @@ -0,0 +1,31 @@ +export const name = 'Hard Break with Marks' + +export const expectedInput = `**Speaker:** +John Doe. + +**Speaker:** +**John Doe**`.trim() + +export const expectedOutput = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { type: 'text', marks: [{ type: 'bold' }], text: 'Speaker:' }, + { type: 'hardBreak' }, + { type: 'text', text: 'John Doe.' }, + ], + }, + { + type: 'paragraph', + content: [ + { type: 'text', marks: [{ type: 'bold' }], text: 'Speaker:' }, + { type: 'hardBreak' }, + { type: 'text', marks: [{ type: 'bold' }], text: 'John Doe' }, + ], + }, + ], +} + +export const extensions = [] diff --git a/tests/cypress/integration/markdown/conversion-files/index.ts b/tests/cypress/integration/markdown/conversion-files/index.ts index e95019f1bf..21268488ca 100644 --- a/tests/cypress/integration/markdown/conversion-files/index.ts +++ b/tests/cypress/integration/markdown/conversion-files/index.ts @@ -2,7 +2,9 @@ export * as bulletList from './bullet-list.js' export * as customAtom from './custom-atom.js' export * as customBlock from './custom-block.js' export * as customInline from './custom-inline.js' +export * as hardBreakMarks from './hard-break-marks.js' export * as mixedListTypes from './mixed-list-types.js' export * as nestedNodes from './nested-nodes.js' export * as orderedList from './ordered-list.js' +export * as softBreakMarks from './soft-break-marks.js' export * as taskList from './task-list.js' diff --git a/tests/cypress/integration/markdown/conversion-files/soft-break-marks.ts b/tests/cypress/integration/markdown/conversion-files/soft-break-marks.ts new file mode 100644 index 0000000000..8e13c41b27 --- /dev/null +++ b/tests/cypress/integration/markdown/conversion-files/soft-break-marks.ts @@ -0,0 +1,30 @@ +export const name = 'Soft Break with Marks' + +export const expectedInput = `**Speaker:** +John Doe. + +**Speaker:** +**John Doe**`.trim() + +export const expectedOutput = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { type: 'text', marks: [{ type: 'bold' }], text: 'Speaker:' }, + { type: 'text', text: '\nJohn Doe.' }, + ], + }, + { + type: 'paragraph', + content: [ + { type: 'text', marks: [{ type: 'bold' }], text: 'Speaker:' }, + { type: 'text', text: '\n' }, + { type: 'text', marks: [{ type: 'bold' }], text: 'John Doe' }, + ], + }, + ], +} + +export const extensions = [] diff --git a/tests/cypress/integration/markdown/conversion.spec.ts b/tests/cypress/integration/markdown/conversion.spec.ts index 6d7bf1b9bd..b3e1a2dc00 100644 --- a/tests/cypress/integration/markdown/conversion.spec.ts +++ b/tests/cypress/integration/markdown/conversion.spec.ts @@ -1,6 +1,7 @@ import type { Extension } from '@tiptap/core' import { Bold } from '@tiptap/extension-bold' import { Document } from '@tiptap/extension-document' +import { HardBreak } from '@tiptap/extension-hard-break' import { Heading } from '@tiptap/extension-heading' import { Italic } from '@tiptap/extension-italic' import { Link } from '@tiptap/extension-link' @@ -22,6 +23,7 @@ describe('Markdown Conversion Tests', () => { Italic, Link, Heading, + HardBreak, BulletList, OrderedList, ListItem, From 5774fc213c051c60f329a64a9ee3c5a706647507 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 7 Nov 2025 15:46:33 +0100 Subject: [PATCH 471/629] fix: correct order of closing markdown marks (#7188) * fix: correct order of closing markdown marks Co-authored-by: suyao * Update tests/cypress/integration/markdown/manager.spec.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: suyao Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- ...arkdown-mark-closing-order--bright-bear.md | 5 ++ packages/markdown/src/utils.ts | 5 +- .../integration/markdown/manager.spec.ts | 69 ++++++++++++++++++- 3 files changed, 75 insertions(+), 4 deletions(-) create mode 100644 .changeset/fix-markdown-mark-closing-order--bright-bear.md diff --git a/.changeset/fix-markdown-mark-closing-order--bright-bear.md b/.changeset/fix-markdown-mark-closing-order--bright-bear.md new file mode 100644 index 0000000000..f0725f2e13 --- /dev/null +++ b/.changeset/fix-markdown-mark-closing-order--bright-bear.md @@ -0,0 +1,5 @@ +--- +"@tiptap/markdown": patch +--- + +Fixed a bug where marks were resolved in incorrect orders, breaking markdown rendering for nested marks. diff --git a/packages/markdown/src/utils.ts b/packages/markdown/src/utils.ts index 3288cce131..7ec72413f5 100644 --- a/packages/markdown/src/utils.ts +++ b/packages/markdown/src/utils.ts @@ -26,7 +26,6 @@ export function wrapInMarkdownBlock(prefix: string, content: string) { /** * Identifies marks that need to be closed (active but not in current node). - * Returns the mark types in reverse order for proper closing sequence. */ export function findMarksToClose(activeMarks: Map, currentMarks: Map): string[] { const marksToClose: string[] = [] @@ -35,7 +34,7 @@ export function findMarksToClose(activeMarks: Map, currentMarks: Ma marksToClose.push(markType) } }) - return marksToClose.reverse() + return marksToClose } /** @@ -88,7 +87,7 @@ export function findMarksToCloseAtEnd( } } - return marksToCloseAtEnd.reverse() + return marksToCloseAtEnd } /** diff --git a/tests/cypress/integration/markdown/manager.spec.ts b/tests/cypress/integration/markdown/manager.spec.ts index 66dbded891..55d75d81cf 100644 --- a/tests/cypress/integration/markdown/manager.spec.ts +++ b/tests/cypress/integration/markdown/manager.spec.ts @@ -8,6 +8,7 @@ import { Link } from '@tiptap/extension-link' import { BulletList, ListItem, OrderedList, TaskItem, TaskList } from '@tiptap/extension-list' import { Mention } from '@tiptap/extension-mention' import { Paragraph } from '@tiptap/extension-paragraph' +import { Strike } from '@tiptap/extension-strike' import { Text } from '@tiptap/extension-text' import { Youtube } from '@tiptap/extension-youtube' import { MarkdownManager } from '@tiptap/markdown' @@ -61,7 +62,19 @@ describe('MarkdownManager Direct Tests', () => { beforeEach(() => { // Basic extensions for standard markdown - basicExtensions = [Document, Paragraph, Text, Heading, Bold, Italic, Link, BulletList, OrderedList, ListItem] + basicExtensions = [ + Document, + Paragraph, + Text, + Heading, + Bold, + Italic, + Strike, + Link, + BulletList, + OrderedList, + ListItem, + ] // Extended extensions with custom markdown features extendedExtensions = [ @@ -199,6 +212,60 @@ Final paragraph.` expect(markdown).to.equal('Hello world') }) + it('should render nested marks with correct tag order', () => { + // Test case: bold inside strike should render as ~~**text**~~ + const doc = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Test: ', + marks: [], + }, + { + type: 'text', + text: 'abcd', + marks: [ + { type: 'bold' }, // Opens first: ** + { type: 'strike' }, // Opens second: ~ + ], + }, + { + type: 'text', + text: ' end.', + marks: [], + }, + ], + }, + ], + } + + const docAtEnd = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'abcd', + marks: [ + { type: 'bold' }, // Opens first: ** + { type: 'strike' }, // Opens second: ~ + ], + }, + ], + }, + ], + } + + expect(markdownManager.renderNodes(doc)).to.equal('Test: ~~**abcd**~~ end.') + expect(markdownManager.renderNodes(docAtEnd)).to.equal('~~**abcd**~~') + }) + it('should render headings', () => { const doc = { type: 'doc', From 38465711a30530c757130f19d3d406fe27190e04 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 7 Nov 2025 15:50:32 +0100 Subject: [PATCH 472/629] chore(release): publish a new release version (#7189) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../fix-hard-break-marks--noble-tiger.md | 5 ---- ...arkdown-mark-closing-order--bright-bear.md | 5 ---- .../fix-mixed-list-parsing--sharp-shark.md | 5 ---- CHANGELOG.md | 10 +++++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 10 +++++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 144 files changed, 566 insertions(+), 85 deletions(-) delete mode 100644 .changeset/fix-hard-break-marks--noble-tiger.md delete mode 100644 .changeset/fix-markdown-mark-closing-order--bright-bear.md delete mode 100644 .changeset/fix-mixed-list-parsing--sharp-shark.md diff --git a/.changeset/fix-hard-break-marks--noble-tiger.md b/.changeset/fix-hard-break-marks--noble-tiger.md deleted file mode 100644 index 336831e664..0000000000 --- a/.changeset/fix-hard-break-marks--noble-tiger.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/markdown": patch ---- - -Fix markdown serialization to prevent marks from continuing after hard breaks. Previously, marks like bold would incorrectly persist across hard breaks in the markdown output. diff --git a/.changeset/fix-markdown-mark-closing-order--bright-bear.md b/.changeset/fix-markdown-mark-closing-order--bright-bear.md deleted file mode 100644 index f0725f2e13..0000000000 --- a/.changeset/fix-markdown-mark-closing-order--bright-bear.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/markdown": patch ---- - -Fixed a bug where marks were resolved in incorrect orders, breaking markdown rendering for nested marks. diff --git a/.changeset/fix-mixed-list-parsing--sharp-shark.md b/.changeset/fix-mixed-list-parsing--sharp-shark.md deleted file mode 100644 index ee7d7d9dfb..0000000000 --- a/.changeset/fix-mixed-list-parsing--sharp-shark.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/markdown": patch ---- - -Fix parsing of mixed bullet lists and task lists. Previously, Marked.js would group consecutive bullet list items and task list items into a single list token, causing incorrect parsing. Now the parser detects mixed lists and splits them into separate bulletList and taskList nodes. diff --git a/CHANGELOG.md b/CHANGELOG.md index 76013ef11d..0a1d493f76 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ # Releases +## v3.10.3 + +### @tiptap/markdown + +#### Patch Changes + +- Fix markdown serialization to prevent marks from continuing after hard breaks. Previously, marks like bold would incorrectly persist across hard breaks in the markdown output. +- Fixed a bug where marks were resolved in incorrect orders, breaking markdown rendering for nested marks. +- Fix parsing of mixed bullet lists and task lists. Previously, Marked.js would group consecutive bullet list items and task list items into a single list token, causing incorrect parsing. Now the parser detects mixed lists and splits them into separate bulletList and taskList nodes. + ## v3.10.2 ### @tiptap/markdown diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index fd69a80ffc..3396276d20 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extensions@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 15e5ac5128..8eaa9a936d 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 4f01e247ba..e746b721c1 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extensions@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 50ed6d9cef..c1b0fdce04 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 9fb08e6fcd..af9ce8f685 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extensions@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index ce145ca14d..aa0b03a9a9 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 4298eb5f7c..654be3996d 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extensions@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index ce9250cc9d..d84b3afa24 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 2c205364d6..33e68d5993 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extensions@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 3ab563d03a..ba6645900f 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 54e06bad4d..c9b9f408e0 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-list@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 38e13b8001..1bf7a0a76e 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 7524e63509..2c69813d44 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-list@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index f5b59b678d..b4ca964097 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index d9f4ee1729..fbb23f7151 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extensions@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index ba6577b7c3..c57ded26db 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 399e1d1961..4bf774336d 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-table@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 42b8abbcf2..1ceb4ba600 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index c0a9dd6918..650db55119 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-table@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index d9007c36cd..70c4c51d2a 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 22856b328c..4f19b838c9 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-table@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 78b3d83d49..6bcf588bb3 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index f93cdfb015..070ea9331e 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-list@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index fcf4efb892..698989588b 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index d2383d1c30..69f30d8e33 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-list@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 9ea53fae1f..ea9a2de53f 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index e803297868..327003befb 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index a2cce8d272..f6f98e56b9 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index e7e3b99583..5ae9ef590c 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index dc1caa2cec..62c5b7bc3f 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 164c348814..91f24eb513 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 30bfed0293..6f1d6d9684 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 3eb67bd798..34d7fb8659 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index e22e390074..dfd2e0adac 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index ef0ed69b36..3b6929de59 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-list@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index e46bd818a2..d45f7881d8 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index f147026706..7484b0a16f 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/extension-code-block@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 4bd55c6d4c..f7e0966d4f 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 581d0c169e..5ef65f1b4b 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 04fde556cd..b8c4179457 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 1054ab33d7..93a8fb4fa7 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index f49b56487c..30041ef8a7 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 2be1a3762a..e2bb728854 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 92312bf702..d3444bd319 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 6d1a3b50cc..5713104323 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 0bc144bea1..f87c15ab7c 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 43db15051d..ce3e551abf 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 31b1db0209..166eba9b2e 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index f120f86266..1de84bf870 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/extension-text-style@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 946677f368..0201c11066 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 50faac6398..f66996a6e5 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 363e5b2b5c..4fb64585e4 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 1fb49b6a24..9b258255aa 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.10.3 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.3 +- @tiptap/pm@3.10.3 +- @tiptap/react@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index b49d165f02..10cd321806 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index cacc8df763..7a0f48ce32 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.10.3 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.3 +- @tiptap/pm@3.10.3 +- @tiptap/vue-2@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 1f8e23b609..3ea199a1cf 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index c08644fa0e..92510c8996 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.10.3 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.3 +- @tiptap/pm@3.10.3 +- @tiptap/vue-3@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index a95d9b2cea..02447f72df 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index df7dde983c..8d075057ba 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/extension-collaboration@3.10.3 +- @tiptap/extension-node-range@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 1a0c7ffc86..d8fb9ff7ef 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index d7529502cb..29c70ed16b 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 +- @tiptap/suggestion@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 9ba0751459..d1e258d098 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 613e79f050..490f3c49fb 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/extension-text-style@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 754b68fe76..b25654c9dc 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 2db2909588..40fa89cf34 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 74637c0b3f..f54f673ffb 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 19593e70a1..8f36a25fb5 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 760eff2525..9a72f9854b 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 373b09114f..e6f70933d6 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index f77a461256..8000dd6db6 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 06f6b7fe6f..8455ce3c08 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 7ea5fca145..46660cb7de 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index bbe59bf87f..4ea8115e14 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 3ac830a453..cbe6ef9fbc 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 44a494949f..86691d2444 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 41a5f94fea..bdefa1d0cc 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 0b8bf98e1d..fc79309960 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 53dbe104db..497ef9f911 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 957c078165..eea4422957 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/extension-text-style@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 45ec7a1fe4..33db1ef035 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 8092bef929..058802fe33 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 8b79660bf2..ace6a202f9 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 882cc06735..3621d7a9db 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index cf6efc0a0d..8d458ac929 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 3e192ebbbe..cfe8381b3c 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index d6f12905b0..50a90d958f 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 65928da390..d0ae403a28 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 3a7a83b7ff..7fec49a6fd 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index ccf28de3c6..c4d85c2f2d 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 +- @tiptap/suggestion@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 477d80d591..dc4e76d7cd 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 5844b7379e..f2309f44a7 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index cd3b61fd18..3a2d21d4df 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 88c6c2e2fd..8409764fdd 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-list@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 95345155d3..d06a502c7c 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 32c592dc91..ad7ba6e65e 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 774802bf6c..eebc4ce2ec 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index d8d049f633..4f53eccf08 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 40284eed0b..5b49bc7878 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index cfbe0c3ab0..e7ad964fba 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 772f84c0ad..f0926044fe 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 3e9e6e0a7d..1972e95eb9 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 2ae3a74f9e..7073e4c58e 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 0342afb1d1..54ea13bcb7 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 89cbdf852f..9342004f17 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 34b0dae3a2..a56ef22319 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 541f639d21..68416af09c 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index ce85036176..3053b589c5 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 2e2f27d5eb..e518c6d096 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 5cf05ca21d..96137090e9 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index fa765c911f..0d82d6e46b 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index cee1d1e556..fb6bc77391 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index ba46f18432..496a183a46 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 3a5f865279..2afc17f584 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index cb5593a521..0f0c47c86d 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 1c90e98ea2..66c54ad09e 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 2684c8825b..0ff9d70369 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 2306349b5c..8019a08932 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index ca9b425627..8d3d27d754 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index a04396de57..9d5bb25f5b 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 5ddb2144f1..7fd1feec5d 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 2cc46126e7..2135528acc 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 98d368e4ae..6f043e2d71 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index af43b6769f..3a2937407f 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index ab1454f103..0c9545d2a1 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index cc4c7ca2b9..3bb7ac1627 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/markdown +## 3.10.3 + +### Patch Changes + +- 13fdcb5: Fix markdown serialization to prevent marks from continuing after hard breaks. Previously, marks like bold would incorrectly persist across hard breaks in the markdown output. +- 5774fc2: Fixed a bug where marks were resolved in incorrect orders, breaking markdown rendering for nested marks. +- f80391b: Fix parsing of mixed bullet lists and task lists. Previously, Marked.js would group consecutive bullet list items and task list items into a single list token, causing incorrect parsing. Now the parser detects mixed lists and splits them into separate bulletList and taskList nodes. + - @tiptap/core@3.10.3 + - @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 0a254679d5..8051a7a801 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 4fa92e61b3..44c51dbfc9 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.3 + ## 3.10.2 ## 3.10.1 diff --git a/packages/pm/package.json b/packages/pm/package.json index 9f4a6c4e80..7da077e8e2 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index f0475c74b9..a8ddcdb551 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 6105b8285d..8a80ded8f7 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index fc0786d15f..dc917badcf 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.10.3 +- @tiptap/extension-gapcursor@3.10.3 +- @tiptap/extension-list-item@3.10.3 +- @tiptap/extension-list-keymap@3.10.3 +- @tiptap/core@3.10.3 +- @tiptap/extension-blockquote@3.10.3 +- @tiptap/extension-bold@3.10.3 +- @tiptap/extension-bullet-list@3.10.3 +- @tiptap/extension-code@3.10.3 +- @tiptap/extension-code-block@3.10.3 +- @tiptap/extension-document@3.10.3 +- @tiptap/extension-hard-break@3.10.3 +- @tiptap/extension-heading@3.10.3 +- @tiptap/extension-horizontal-rule@3.10.3 +- @tiptap/extension-italic@3.10.3 +- @tiptap/extension-link@3.10.3 +- @tiptap/extension-list@3.10.3 +- @tiptap/extension-ordered-list@3.10.3 +- @tiptap/extension-paragraph@3.10.3 +- @tiptap/extension-strike@3.10.3 +- @tiptap/extension-text@3.10.3 +- @tiptap/extension-underline@3.10.3 +- @tiptap/extensions@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index e4599c4f08..41c4287939 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 4669c65a98..56040e25b2 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 06accb48bb..2a9ef524c3 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 358f2eb3ab..77b02a9cf2 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index bdb3baced6..b9dac9c182 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 13a7636399..3247800bba 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index abeb5a2833..dc3102bd9d 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 4b4c74c720..df078d87f2 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.3 + +### Patch Changes + +- @tiptap/core@3.10.3 +- @tiptap/pm@3.10.3 + ## 3.10.2 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 3b3346adb2..923a0792e9 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.2", + "version": "3.10.3", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 64561c459718336442b29effa9e265962636a2c7 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 8 Nov 2025 08:42:00 +0100 Subject: [PATCH 473/629] fix: prevent autofocus scrolling when disabled (#7192) * fix: prevent autofocus scrolling when disabled Add conditional check in Editor.mount() to only call focus command when autofocus is not explicitly set to false or null. This fixes unwanted page scrolling on editor mount when autofocus is disabled. Resolves #4235 * fix: add wait for asynchronous plugin registration in menu tests * fix: improve stability of menu plugin initialization test by using requestAnimationFrame --- .changeset/fix-autofocus-disable--scroll-prevention.md | 5 +++++ .../CollaborationWithMenus/Vue/index.spec.js | 10 ++++++---- packages/core/src/Editor.ts | 4 +++- 3 files changed, 14 insertions(+), 5 deletions(-) create mode 100644 .changeset/fix-autofocus-disable--scroll-prevention.md diff --git a/.changeset/fix-autofocus-disable--scroll-prevention.md b/.changeset/fix-autofocus-disable--scroll-prevention.md new file mode 100644 index 0000000000..7c657ab98a --- /dev/null +++ b/.changeset/fix-autofocus-disable--scroll-prevention.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": patch +--- + +Fix autofocus behavior to prevent unwanted scrolling when disabled diff --git a/demos/src/Extensions/CollaborationWithMenus/Vue/index.spec.js b/demos/src/Extensions/CollaborationWithMenus/Vue/index.spec.js index 385a03e48a..b8d61497a0 100644 --- a/demos/src/Extensions/CollaborationWithMenus/Vue/index.spec.js +++ b/demos/src/Extensions/CollaborationWithMenus/Vue/index.spec.js @@ -12,11 +12,13 @@ context('/src/Extensions/CollaborationWithMenus/Vue/', () => { it('should have menu plugins initiated', () => { cy.get('.tiptap').then(([{ editor }]) => { - const bubbleMenuPlugin = editor.view.state.plugins.find(plugin => plugin.spec.key?.key === 'bubbleMenu$') - const floatingMenuPlugin = editor.view.state.plugins.find(plugin => plugin.spec.key?.key === 'floatingMenu$') - const hasBothMenuPluginsLoaded = !!bubbleMenuPlugin && !!floatingMenuPlugin + requestAnimationFrame(() => { + const bubbleMenuPlugin = editor.view.state.plugins.find(plugin => plugin.spec.key?.key === 'bubbleMenu$') + const floatingMenuPlugin = editor.view.state.plugins.find(plugin => plugin.spec.key?.key === 'floatingMenu$') + const hasBothMenuPluginsLoaded = !!bubbleMenuPlugin && !!floatingMenuPlugin - expect(hasBothMenuPluginsLoaded).to.equal(true) + expect(hasBothMenuPluginsLoaded).to.equal(true) + }) }) }) diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index b42426e2a3..cdd5b670c0 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -171,7 +171,9 @@ export class Editor extends EventEmitter { return } - this.commands.focus(this.options.autofocus) + if (this.options.autofocus !== false && this.options.autofocus !== null) { + this.commands.focus(this.options.autofocus) + } this.emit('create', { editor: this }) this.isInitialized = true }, 0) From 5d1714018a6a21f4b9b5a0568f84a4181897c49d Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 8 Nov 2025 08:49:31 +0100 Subject: [PATCH 474/629] Fix #7173 nested blockquotes markdown (#7191) * chore(release): publish a new release version (#7189) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * fix: improve blockquote rendering for nested structures and add comprehensive tests * added changeset --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...sted-blockquotes-markdown--golden-eagle.md | 5 + .../extension-blockquote/src/blockquote.tsx | 32 +++++-- .../integration/markdown/blockquote.spec.ts | 92 +++++++++++++++++++ 3 files changed, 119 insertions(+), 10 deletions(-) create mode 100644 .changeset/fix-nested-blockquotes-markdown--golden-eagle.md create mode 100644 tests/cypress/integration/markdown/blockquote.spec.ts diff --git a/.changeset/fix-nested-blockquotes-markdown--golden-eagle.md b/.changeset/fix-nested-blockquotes-markdown--golden-eagle.md new file mode 100644 index 0000000000..5050dddf3b --- /dev/null +++ b/.changeset/fix-nested-blockquotes-markdown--golden-eagle.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-blockquote': patch +--- + +Fixed nested blockquote markdown serialization to properly handle multi-level nesting diff --git a/packages/extension-blockquote/src/blockquote.tsx b/packages/extension-blockquote/src/blockquote.tsx index 7c7f5b6178..329f36af41 100644 --- a/packages/extension-blockquote/src/blockquote.tsx +++ b/packages/extension-blockquote/src/blockquote.tsx @@ -74,20 +74,32 @@ export const Blockquote = Node.create({ return '' } - const lines: string[] = [] + // Use a single '>' prefix regardless of nesting level + // Nested blockquotes will add their own '>' prefix recursively + const prefix = '>' + const result: string[] = [] node.content.forEach(child => { - const lineContent = h.renderChildren(child) - const withPrefix = lineContent - .split('\n') - .map(line => `> ${line}`) - .join('\n') - lines.push(withPrefix) + // Render each child node as an array so it gets processed properly + const childContent = h.renderChildren([child]) + const lines = childContent.split('\n') + + const linesWithPrefix = lines.map(line => { + // Don't add prefix to empty lines + if (line.trim() === '') { + return prefix + } + + // Nested blockquotes will already have their own prefixes + // We just need to add our own prefix at the start + return `${prefix} ${line}` + }) + + result.push(linesWithPrefix.join('\n')) }) - const linesWithSeparators = lines.flatMap(line => [line, '> ']) - - return linesWithSeparators.slice(0, -1).join('\n') + // Add separator lines between children + return result.join(`\n${prefix}\n`) }, addCommands() { diff --git a/tests/cypress/integration/markdown/blockquote.spec.ts b/tests/cypress/integration/markdown/blockquote.spec.ts new file mode 100644 index 0000000000..32588fa125 --- /dev/null +++ b/tests/cypress/integration/markdown/blockquote.spec.ts @@ -0,0 +1,92 @@ +import type { Extension } from '@tiptap/core' +import { Blockquote } from '@tiptap/extension-blockquote' +import { Document } from '@tiptap/extension-document' +import { Heading } from '@tiptap/extension-heading' +import { Paragraph } from '@tiptap/extension-paragraph' +import { Text } from '@tiptap/extension-text' +import { MarkdownManager } from '@tiptap/markdown' + +describe('Blockquote Markdown Conversion', () => { + let markdownManager: MarkdownManager + + beforeEach(() => { + markdownManager = new MarkdownManager() + const extensions = [Document, Paragraph, Text, Blockquote, Heading] + extensions.forEach(extension => { + markdownManager.registerExtension(extension as Extension) + }) + }) + + it('should convert a single-level blockquote to markdown', () => { + const markdown = '> This is a blockquote' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) + + it('should convert a single-level blockquote with multiple paragraphs to markdown', () => { + const markdown = '> First paragraph\n>\n> Second paragraph' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) + + it('should convert nested blockquotes to markdown', () => { + const markdown = '> Level 1\n>\n> > Level 2\n> >\n> > > Level 3' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) + + it('should handle blockquotes with varying nesting depths', () => { + const markdown = '> Level 1\n>\n> > Level 2\n> >\n> > > Level 3\n> >\n> > Back to level 2\n>\n> Back to level 1' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) + + it('should convert nested blockquotes with multiple paragraphs', () => { + const markdown = '> First paragraph\n>\n> Second paragraph\n>\n> > Nested paragraph\n> >\n> > > Deeply nested' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) + + it('should handle a blockquote that jumps multiple levels deep', () => { + const markdown = '> Level 1\n>\n> > > Level 3 (jumped from 1 to 3)' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) + + it('should handle blockquotes going back to shallower nesting', () => { + const markdown = '> Level 1\n>\n> > Level 2\n> >\n> > > Level 3\n> >\n> > Back to level 2\n>\n> Back to level 1' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) + + it('should handle blockquotes with text content at different levels', () => { + const markdown = '> Outer quote with some text\n>\n> > Inner quote with more text\n> >\n> > > Innermost quote' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) + + it('should handle blockquotes with mixed content including headings', () => { + const markdown = + '> This is a block quote\n>\n> With more paragraphs\n>\n> # And a heading\n>\n> > And nested\n> >\n> > ## And another heading' + const json = markdownManager.parse(markdown) + const output = markdownManager.serialize(json) + + expect(output.trim()).to.equal(markdown) + }) +}) From f78bf61c0da06cd2ca9b16c4633fa76c02b4290c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 8 Nov 2025 08:51:18 +0100 Subject: [PATCH 475/629] chore(release): publish a new release version (#7194) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...ix-autofocus-disable--scroll-prevention.md | 5 --- ...sted-blockquotes-markdown--golden-eagle.md | 5 --- CHANGELOG.md | 14 +++++++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 +++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 143 files changed, 618 insertions(+), 80 deletions(-) delete mode 100644 .changeset/fix-autofocus-disable--scroll-prevention.md delete mode 100644 .changeset/fix-nested-blockquotes-markdown--golden-eagle.md diff --git a/.changeset/fix-autofocus-disable--scroll-prevention.md b/.changeset/fix-autofocus-disable--scroll-prevention.md deleted file mode 100644 index 7c657ab98a..0000000000 --- a/.changeset/fix-autofocus-disable--scroll-prevention.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Fix autofocus behavior to prevent unwanted scrolling when disabled diff --git a/.changeset/fix-nested-blockquotes-markdown--golden-eagle.md b/.changeset/fix-nested-blockquotes-markdown--golden-eagle.md deleted file mode 100644 index 5050dddf3b..0000000000 --- a/.changeset/fix-nested-blockquotes-markdown--golden-eagle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-blockquote': patch ---- - -Fixed nested blockquote markdown serialization to properly handle multi-level nesting diff --git a/CHANGELOG.md b/CHANGELOG.md index 0a1d493f76..15733b689e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # Releases +## v3.10.4 + +### @tiptap/core + +#### Patch Changes + +- Fix autofocus behavior to prevent unwanted scrolling when disabled + +### @tiptap/extension-blockquote + +#### Patch Changes + +- Fixed nested blockquote markdown serialization to properly handle multi-level nesting + ## v3.10.3 ### @tiptap/markdown diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 3396276d20..95524bb009 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extensions@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 8eaa9a936d..875687813b 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index e746b721c1..2090e0a10a 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extensions@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index c1b0fdce04..d3666c79eb 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index af9ce8f685..c54b0a1477 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extensions@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index aa0b03a9a9..096f138af1 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 654be3996d..9255829665 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extensions@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index d84b3afa24..41594ce319 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 33e68d5993..b77cda87c7 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extensions@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index ba6645900f..384a8738f6 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index c9b9f408e0..7cceb62cfa 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-list@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 1bf7a0a76e..82a7ef947a 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 2c69813d44..77a7ecf9a3 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-list@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index b4ca964097..e1ccef75d6 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index fbb23f7151..1f85df8431 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extensions@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index c57ded26db..a513bfc968 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 4bf774336d..7936ebdd0f 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-table@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 1ceb4ba600..37618bbe2c 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 650db55119..d41164d361 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-table@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 70c4c51d2a..2879df62dd 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 4f19b838c9..6a282f9981 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-table@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 6bcf588bb3..15b9dfa4c5 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 070ea9331e..ad99eb8042 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-list@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 698989588b..2e016b42cb 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 69f30d8e33..06e24d5875 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-list@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index ea9a2de53f..3a9b782ba9 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 327003befb..4262250679 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- 64561c4: Fix autofocus behavior to prevent unwanted scrolling when disabled + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index f6f98e56b9..e7d5cd2464 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 5ae9ef590c..9a502b01b7 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- 5d17140: Fixed nested blockquote markdown serialization to properly handle multi-level nesting +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 62c5b7bc3f..710c61d1ec 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 91f24eb513..5cec361e08 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 6f1d6d9684..fb1ce598c7 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 34d7fb8659..6cb951c2e2 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index dfd2e0adac..0cba24e9b6 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 3b6929de59..5268391920 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-list@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index d45f7881d8..3585d47eb2 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 7484b0a16f..035ce21159 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/extension-code-block@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index f7e0966d4f..974e108201 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 5ef65f1b4b..18b5211533 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index b8c4179457..f11f858607 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 93a8fb4fa7..c18720c648 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 30041ef8a7..6aca5da52f 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index e2bb728854..e471fb89eb 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index d3444bd319..bc66de8ea9 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 5713104323..85e1c344a8 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index f87c15ab7c..f7b6a01527 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index ce3e551abf..88b9ee9cb2 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 166eba9b2e..9cc23c173b 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 1de84bf870..116917b6ec 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/extension-text-style@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 0201c11066..716746dd83 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index f66996a6e5..7b1eded48b 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 4fb64585e4..e775b24e5c 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 9b258255aa..355e50e81d 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.10.4 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.4 +- @tiptap/react@3.10.4 +- @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 10cd321806..4fa116fc80 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 7a0f48ce32..734953e639 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.10.4 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.4 +- @tiptap/vue-2@3.10.4 +- @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 3ea199a1cf..f856a1c668 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 92510c8996..a4bbf61c34 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.10.4 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.4 +- @tiptap/vue-3@3.10.4 +- @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 02447f72df..7ec118144b 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 8d075057ba..c1a7ad8bae 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/extension-collaboration@3.10.4 + - @tiptap/extension-node-range@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index d8fb9ff7ef..3da0629b61 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 29c70ed16b..1a38ca90d1 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/suggestion@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index d1e258d098..5009256216 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 490f3c49fb..d8755cc76b 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/extension-text-style@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index b25654c9dc..74ca96fa5b 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 40fa89cf34..a2b247bb1f 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index f54f673ffb..8e6e5f239c 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 8f36a25fb5..eacd0cb654 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 9a72f9854b..5bb4556e06 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index e6f70933d6..172e8354f1 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 8000dd6db6..94817cab3e 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 8455ce3c08..0b71d2247a 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 46660cb7de..ce7d8def8a 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 4ea8115e14..349dea22d7 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index cbe6ef9fbc..fae1457a98 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 86691d2444..87f4e5003a 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index bdefa1d0cc..31a77df15b 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index fc79309960..46130f7b97 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 497ef9f911..5a94cd8bb9 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index eea4422957..7c5f6b6cb8 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/extension-text-style@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 33db1ef035..c557f88d43 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 058802fe33..587ce67faa 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index ace6a202f9..bd9076f7dd 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 3621d7a9db..9e9c0c94c3 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 8d458ac929..3370adbb18 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index cfe8381b3c..a5d22a78ad 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 50a90d958f..4c3497c878 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index d0ae403a28..207bd5bbf4 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 7fec49a6fd..ae4b49a94c 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index c4d85c2f2d..a5cc0a9831 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/suggestion@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index dc4e76d7cd..0a050a06d4 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index f2309f44a7..39103f166a 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 3a2d21d4df..42717ea232 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 8409764fdd..4425a65592 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- @tiptap/extension-list@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index d06a502c7c..857e764cc1 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index ad7ba6e65e..4adabadf1e 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index eebc4ce2ec..e9f8216601 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 4f53eccf08..879729f833 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 5b49bc7878..45dbcbfde8 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index e7ad964fba..d58a5b5560 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index f0926044fe..8d68a0c341 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 1972e95eb9..9c9a0e7f10 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 7073e4c58e..dc34f25152 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 54ea13bcb7..c6e2ea73f8 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.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 9342004f17..5078de548d 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index a56ef22319..e4813f91e9 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 68416af09c..a14d86e4e9 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 3053b589c5..0d183298dd 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index e518c6d096..19710c7b73 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 96137090e9..64a3f62f36 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 0d82d6e46b..feda87deac 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index fb6bc77391..e9d0f56c3b 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 496a183a46..8b00cab5f0 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 2afc17f584..e00f9a2398 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 0f0c47c86d..5a402dc5b3 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 66c54ad09e..52c84d2823 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 0ff9d70369..75d7cb22fc 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 8019a08932..d32d4680df 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 8d3d27d754..52365166a2 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 9d5bb25f5b..aa40607e2d 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 7fd1feec5d..60fcf4b800 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 2135528acc..4e5e0818a9 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 6f043e2d71..d08357e07b 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 3a2937407f..e4bff7546a 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 0c9545d2a1..bf83110917 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 3bb7ac1627..061ecca6b2 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 8051a7a801..a92d881b94 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 44c51dbfc9..097748dd48 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.4 + ## 3.10.3 ## 3.10.2 diff --git a/packages/pm/package.json b/packages/pm/package.json index 7da077e8e2..d47810dae1 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index a8ddcdb551..95f49a05f6 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 8a80ded8f7..21c7ab3b4e 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index dc917badcf..8e90a244b0 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] +- Updated dependencies [5d17140] + - @tiptap/core@3.10.4 + - @tiptap/extension-blockquote@3.10.4 + - @tiptap/extension-bold@3.10.4 + - @tiptap/extension-code@3.10.4 + - @tiptap/extension-code-block@3.10.4 + - @tiptap/extension-document@3.10.4 + - @tiptap/extension-hard-break@3.10.4 + - @tiptap/extension-heading@3.10.4 + - @tiptap/extension-horizontal-rule@3.10.4 + - @tiptap/extension-italic@3.10.4 + - @tiptap/extension-link@3.10.4 + - @tiptap/extension-list@3.10.4 + - @tiptap/extension-paragraph@3.10.4 + - @tiptap/extension-strike@3.10.4 + - @tiptap/extension-text@3.10.4 + - @tiptap/extension-underline@3.10.4 + - @tiptap/extensions@3.10.4 + - @tiptap/extension-list-item@3.10.4 + - @tiptap/extension-list-keymap@3.10.4 + - @tiptap/extension-bullet-list@3.10.4 + - @tiptap/extension-ordered-list@3.10.4 + - @tiptap/extension-dropcursor@3.10.4 + - @tiptap/extension-gapcursor@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 41c4287939..6effada1c7 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 56040e25b2..ce27295ca0 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 2a9ef524c3..7f1e8870de 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 77b02a9cf2..0b7227cd86 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index b9dac9c182..8db2ab74de 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 3247800bba..9506094e29 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index dc3102bd9d..0231864e69 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index df078d87f2..0b19e5ff7e 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.4 + +### Patch Changes + +- Updated dependencies [64561c4] + - @tiptap/core@3.10.4 + - @tiptap/pm@3.10.4 + ## 3.10.3 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 923a0792e9..8d057e8644 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.3", + "version": "3.10.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 92fae1841a91ce5c183aa5a5f8b47c716e0e32d1 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Mon, 10 Nov 2025 11:34:25 +0100 Subject: [PATCH 476/629] fix: respect isRequired attribute in ProseMirror schema generation (#7198) * fix: respect isRequired attribute in ProseMirror schema generation Fixes #6952 When building the ProseMirror schema from Tiptap extensions, the code was always including a 'default' property in attribute specs, even when attributes were marked as required (isRequired: true). This caused ProseMirror to treat all attributes as optional, since ProseMirror determines if an attribute is required by checking for the absence of the 'default' property using hasOwnProperty. Changes: - Modified getSchemaByResolvedExtensions.ts to only include the 'default' property when the attribute is not marked as required AND a default value is defined - Applied fix to both Node and Mark attribute processing - Added comprehensive tests for required attribute functionality * added changeset * refactor: extract duplicate attribute spec building logic into shared helper Extracted the duplicated code for building attribute specs (used for both nodes and marks) into a shared `buildAttributeSpec` helper function. This reduces code duplication and improves maintainability by centralizing the logic for handling isRequired and validate properties. --- ...ix-required-attributes-schema--wise-owl.md | 5 + .../helpers/getSchemaByResolvedExtensions.ts | 41 ++-- .../core/requiredAttributes.spec.ts | 175 ++++++++++++++++++ 3 files changed, 205 insertions(+), 16 deletions(-) create mode 100644 .changeset/fix-required-attributes-schema--wise-owl.md create mode 100644 tests/cypress/integration/core/requiredAttributes.spec.ts diff --git a/.changeset/fix-required-attributes-schema--wise-owl.md b/.changeset/fix-required-attributes-schema--wise-owl.md new file mode 100644 index 0000000000..eb243fad62 --- /dev/null +++ b/.changeset/fix-required-attributes-schema--wise-owl.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Fixed ProseMirror schema generation to properly respect `isRequired` attribute configuration. Previously, attributes marked with `isRequired: true` were incorrectly treated as optional because a `default` property was always included in the schema specification. ProseMirror determines attribute requirements by the absence of the `default` property, so now the `default` is only included when the attribute is not required and a default value is explicitly defined. diff --git a/packages/core/src/helpers/getSchemaByResolvedExtensions.ts b/packages/core/src/helpers/getSchemaByResolvedExtensions.ts index 9bb856da5c..aef82a8b2c 100644 --- a/packages/core/src/helpers/getSchemaByResolvedExtensions.ts +++ b/packages/core/src/helpers/getSchemaByResolvedExtensions.ts @@ -24,6 +24,29 @@ function cleanUpSchemaItem(data: T) { ) as T } +/** + * Builds an attribute spec tuple for ProseMirror schema from an extension attribute. + * @param extensionAttribute The extension attribute to build the spec for + * @returns A tuple of [attributeName, spec] + */ +function buildAttributeSpec( + extensionAttribute: ReturnType[number], +): [string, Record] { + const spec: Record = {} + + // Only include 'default' if the attribute is not required and default is defined + if (!extensionAttribute?.attribute?.isRequired && extensionAttribute?.attribute?.default !== undefined) { + spec.default = extensionAttribute.attribute.default + } + + // Only include 'validate' if it's defined + if (extensionAttribute?.attribute?.validate !== undefined) { + spec.validate = extensionAttribute.attribute.validate + } + + return [extensionAttribute.name, spec] +} + /** * Creates a new Prosemirror schema based on the given extensions. * @param extensions An array of Tiptap extensions @@ -70,14 +93,7 @@ export function getSchemaByResolvedExtensions(extensions: Extensions, editor?: E ), defining: callOrReturn(getExtensionField(extension, 'defining', context)), isolating: callOrReturn(getExtensionField(extension, 'isolating', context)), - attrs: Object.fromEntries( - extensionAttributes.map(extensionAttribute => { - return [ - extensionAttribute.name, - { default: extensionAttribute?.attribute?.default, validate: extensionAttribute?.attribute?.validate }, - ] - }), - ), + attrs: Object.fromEntries(extensionAttributes.map(buildAttributeSpec)), }) const parseHTML = callOrReturn(getExtensionField(extension, 'parseHTML', context)) @@ -134,14 +150,7 @@ export function getSchemaByResolvedExtensions(extensions: Extensions, editor?: E group: callOrReturn(getExtensionField(extension, 'group', context)), spanning: callOrReturn(getExtensionField(extension, 'spanning', context)), code: callOrReturn(getExtensionField(extension, 'code', context)), - attrs: Object.fromEntries( - extensionAttributes.map(extensionAttribute => { - return [ - extensionAttribute.name, - { default: extensionAttribute?.attribute?.default, validate: extensionAttribute?.attribute?.validate }, - ] - }), - ), + attrs: Object.fromEntries(extensionAttributes.map(buildAttributeSpec)), }) const parseHTML = callOrReturn(getExtensionField(extension, 'parseHTML', context)) diff --git a/tests/cypress/integration/core/requiredAttributes.spec.ts b/tests/cypress/integration/core/requiredAttributes.spec.ts new file mode 100644 index 0000000000..0e81ce7e49 --- /dev/null +++ b/tests/cypress/integration/core/requiredAttributes.spec.ts @@ -0,0 +1,175 @@ +/// + +import { Editor, Mark, Node } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' + +describe('Required Attributes', () => { + it('should mark node attributes as required when isRequired is true and no default is set', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + requiredAttr: { + isRequired: true, + // No default value specified + }, + optionalAttr: { + default: null, + }, + } + }, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomNode], + }) + + const schema = editor.schema + const nodeType = schema.nodes.customNode + + // Check that the required attribute does not have a default + expect(nodeType.spec.attrs?.requiredAttr).to.not.equal(undefined) + expect(nodeType.spec.attrs?.requiredAttr).to.not.have.property('default') + + // Check that the optional attribute has a default + expect(nodeType.spec.attrs?.optionalAttr).to.not.equal(undefined) + expect(nodeType.spec.attrs?.optionalAttr).to.have.property('default') + + editor.destroy() + }) + + it('should mark mark attributes as required when isRequired is true and no default is set', () => { + const CustomMark = Mark.create({ + name: 'customMark', + addAttributes() { + return { + requiredAttr: { + isRequired: true, + // No default value specified + }, + optionalAttr: { + default: 'test', + }, + } + }, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomMark], + }) + + const schema = editor.schema + const markType = schema.marks.customMark + + // Check that the required attribute does not have a default + expect(markType?.spec.attrs?.requiredAttr).to.not.equal(undefined) + expect(markType?.spec.attrs?.requiredAttr).to.not.have.property('default') + + // Check that the optional attribute has a default + expect(markType?.spec.attrs?.optionalAttr).to.not.equal(undefined) + expect(markType?.spec.attrs?.optionalAttr).to.have.property('default') + expect(markType?.spec.attrs?.optionalAttr.default).to.equal('test') + + editor.destroy() + }) + + it('should not mark attributes as required when they have an explicit default value', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + attrWithNull: { + default: null, + }, + attrWithValue: { + default: 'defaultValue', + }, + attrWithZero: { + default: 0, + }, + attrWithFalse: { + default: false, + }, + } + }, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomNode], + }) + + const schema = editor.schema + const nodeType = schema.nodes.customNode + + // All attributes should have a default property + expect(nodeType.spec.attrs?.attrWithNull).to.have.property('default', null) + expect(nodeType.spec.attrs?.attrWithValue).to.have.property('default', 'defaultValue') + expect(nodeType.spec.attrs?.attrWithZero).to.have.property('default', 0) + expect(nodeType.spec.attrs?.attrWithFalse).to.have.property('default', false) + + editor.destroy() + }) + + it('should only include validate property when it is defined', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + validatedAttr: { + default: null, + validate: (value: any) => typeof value === 'string', + }, + nonValidatedAttr: { + default: null, + }, + } + }, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomNode], + }) + + const schema = editor.schema + const nodeType = schema.nodes.customNode + + // Check that the validated attribute has a validate property + expect(nodeType.spec.attrs?.validatedAttr).to.have.property('validate') + expect(nodeType.spec.attrs?.validatedAttr.validate).to.be.a('function') + + // Check that the non-validated attribute does not have a validate property + expect(nodeType.spec.attrs?.nonValidatedAttr).to.not.have.property('validate') + + editor.destroy() + }) + + it('should handle attributes with isRequired and validate together', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + strictAttr: { + isRequired: true, + validate: (value: any) => value !== null, + }, + } + }, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomNode], + }) + + const schema = editor.schema + const nodeType = schema.nodes.customNode + + // Check that the attribute is required (no default) but has validation + expect(nodeType.spec.attrs?.strictAttr).to.not.equal(undefined) + expect(nodeType.spec.attrs?.strictAttr).to.not.have.property('default') + expect(nodeType.spec.attrs?.strictAttr).to.have.property('validate') + + editor.destroy() + }) +}) From 50e8905c27871c692c36b9de136c7491ff0c2616 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Mon, 10 Nov 2025 11:40:51 +0100 Subject: [PATCH 477/629] fix: update y-tiptap to stable v3.0.0 to resolve emoji collaboration issues (#7199) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix: update y-tiptap to stable v3.0.0 to resolve emoji collaboration issues Updated @tiptap/y-tiptap from beta.3 to stable v3.0.0 in collaboration-related packages to fix URIError issues with certain emoji combinations (🔴🟢, 😎🐈, 🟣🔵). The stable release includes lib0 v0.2.100+ which properly handles UTF-16 surrogate pairs, preventing them from being split during collaborative text operations. Affected packages: - @tiptap/extension-collaboration - @tiptap/extension-collaboration-caret - @tiptap/extension-drag-handle * fix: resolve collaborative editing errors with specific emoji combinations by updating to stable v3.0.0 --- ...boration-surrogate-pairs--swift-phoenix.md | 7 +++++ .../package.json | 4 +-- packages/extension-collaboration/package.json | 4 +-- packages/extension-drag-handle/package.json | 4 +-- pnpm-lock.yaml | 31 ++++--------------- 5 files changed, 19 insertions(+), 31 deletions(-) create mode 100644 .changeset/fix-emoji-collaboration-surrogate-pairs--swift-phoenix.md diff --git a/.changeset/fix-emoji-collaboration-surrogate-pairs--swift-phoenix.md b/.changeset/fix-emoji-collaboration-surrogate-pairs--swift-phoenix.md new file mode 100644 index 0000000000..31e58cfd36 --- /dev/null +++ b/.changeset/fix-emoji-collaboration-surrogate-pairs--swift-phoenix.md @@ -0,0 +1,7 @@ +--- +'@tiptap/extension-collaboration': patch +'@tiptap/extension-collaboration-caret': patch +'@tiptap/extension-drag-handle': patch +--- + +Fixed collaborative editing errors with certain emoji combinations (like 🔴🟢, 😎🐈, 🟣🔵) by updating `@tiptap/y-tiptap` to stable v3.0.0. diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index bc66de8ea9..0976ae73a2 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -33,12 +33,12 @@ "devDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0-beta.3" + "@tiptap/y-tiptap": "^3.0.0" }, "peerDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0-beta.3" + "@tiptap/y-tiptap": "^3.0.0" }, "repository": { "type": "git", diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index f7b6a01527..9b2c5278d8 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -33,12 +33,12 @@ "devDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0-beta.3" + "@tiptap/y-tiptap": "^3.0.0" }, "peerDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0-beta.3", + "@tiptap/y-tiptap": "^3.0.0", "yjs": "^13" }, "repository": { diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 3da0629b61..4be496650d 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -40,7 +40,7 @@ "@tiptap/core": "workspace:^", "@tiptap/extension-collaboration": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0-beta.3" + "@tiptap/y-tiptap": "^3.0.0" }, "dependencies": { "@floating-ui/dom": "^1.6.13" @@ -51,7 +51,7 @@ "@tiptap/core": "workspace:^", "@tiptap/extension-collaboration": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0-beta.3" + "@tiptap/y-tiptap": "^3.0.0" }, "scripts": { "build": "tsup", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 26a98abc79..d7a5b931cc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -474,8 +474,8 @@ importers: specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': - specifier: ^3.0.0-beta.3 - version: 3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.0 + version: 3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) packages/extension-collaboration-caret: devDependencies: @@ -486,8 +486,8 @@ importers: specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': - specifier: ^3.0.0-beta.3 - version: 3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.0 + version: 3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) packages/extension-color: devDependencies: @@ -532,8 +532,8 @@ importers: specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': - specifier: ^3.0.0-beta.3 - version: 3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.0 + version: 3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) packages/extension-drag-handle-react: devDependencies: @@ -3087,16 +3087,6 @@ packages: y-protocols: ^1.0.1 yjs: ^13.5.38 - '@tiptap/y-tiptap@3.0.0-beta.3': - resolution: {integrity: sha512-1U/MTG7mpkc2VEIRzVueXqpHpawflF0DUuqkPwTezmBst6HPZ+NnZuDbJGay8dh//KSXcrS1Vtu1Wqa2Z/1HTw==} - engines: {node: '>=16.0.0', npm: '>=8.0.0'} - peerDependencies: - prosemirror-model: ^1.7.1 - prosemirror-state: ^1.2.3 - prosemirror-view: ^1.9.10 - y-protocols: ^1.0.1 - yjs: ^13.5.38 - '@types/aria-query@5.0.4': resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} @@ -9226,15 +9216,6 @@ snapshots: y-protocols: 1.0.6(yjs@13.6.23) yjs: 13.6.23 - '@tiptap/y-tiptap@3.0.0-beta.3(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23)': - dependencies: - lib0: 0.2.104 - prosemirror-model: 1.24.1 - prosemirror-state: 1.4.3 - prosemirror-view: 1.38.1 - y-protocols: 1.0.6(yjs@13.6.23) - yjs: 13.6.23 - '@types/aria-query@5.0.4': {} '@types/conventional-commits-parser@5.0.1': From 3e873306d1cb599ec0c0b79b818cacc369da478b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 12:05:40 +0100 Subject: [PATCH 478/629] feat: add function to map yjs position from transaction --- .../src/helpers/mapPositionFromTransaction.ts | 53 +++++++++++++++++++ .../src/helpers/mapRangeFromTransaction.ts | 51 ++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts create mode 100644 packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts diff --git a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts new file mode 100644 index 0000000000..0cbcd90a7c --- /dev/null +++ b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts @@ -0,0 +1,53 @@ +import type { EditorState, Transaction } from '@tiptap/pm/state' +import { + absolutePositionToRelativePosition, + relativePositionToAbsolutePosition, + ySyncPluginKey, +} from '@tiptap/y-tiptap' + +import { isChangeOrigin } from './isChangeOrigin.js' + +function getAbsolutePosition(state: EditorState, relativePos: YRelativePosition) { + const ystate = ySyncPluginKey.getState(state) + return relativePositionToAbsolutePosition(ystate.doc, ystate.type, relativePos, ystate.binding.mapping) || 0 +} + +function getRelativePosition(state: EditorState, absolutePos: number): YRelativePosition { + const ystate = ySyncPluginKey.getState(state) + return absolutePositionToRelativePosition(absolutePos, ystate.type, ystate.binding.mapping) +} + +export type YRelativePosition = any | null + +export interface MapPositionFromTransactionOptions { + transaction: Transaction + state: EditorState + position: number + yRelativePosition: YRelativePosition +} + +export interface MapPositionFromTransactionResult { + newPosition: number + newYRelativePosition: YRelativePosition +} + +export function mapPositionFromTransaction({ + transaction, + state, + position, + yRelativePosition, +}: MapPositionFromTransactionOptions): MapPositionFromTransactionResult { + if (isChangeOrigin(transaction)) { + return { + newPosition: getAbsolutePosition(state, yRelativePosition), + newYRelativePosition: yRelativePosition, + } + } + + const newPosition = transaction.mapping.map(position) + + return { + newPosition, + newYRelativePosition: newPosition === position ? yRelativePosition : getRelativePosition(state, newPosition), + } +} diff --git a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts new file mode 100644 index 0000000000..6480df7072 --- /dev/null +++ b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts @@ -0,0 +1,51 @@ +import type { Range } from '@tiptap/core' +import type { EditorState, Transaction } from '@tiptap/pm/state' + +import { type YRelativePosition, mapPositionFromTransaction } from './mapPositionFromTransaction.js' + +export type YRelativeRange = { + from: YRelativePosition + to: YRelativePosition +} + +export interface MapRangeFromTransactionOptions { + transaction: Transaction + state: EditorState + range: Range + yRelativeRange: YRelativeRange +} + +export interface MapRangeFromTransactionResult { + newRange: Range + newYRelativeRange: YRelativeRange +} + +export function mapRangeFromTransaction({ + transaction, + state, + range, + yRelativeRange, +}: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { + const fromResult = mapPositionFromTransaction({ + transaction, + state, + position: range.from, + yRelativePosition: yRelativeRange.from, + }) + const toResult = mapPositionFromTransaction({ + transaction, + state, + position: range.to, + yRelativePosition: yRelativeRange.to, + }) + return { + newRange: { + from: fromResult.newPosition, + to: toResult.newPosition, + }, + newYRelativeRange: { + from: fromResult.newYRelativePosition, + to: toResult.newYRelativePosition, + }, + } +} From c470ee1dfc633dd43fa38d6b2806eed063678b7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 12:45:21 +0100 Subject: [PATCH 479/629] refactor: extract function --- .../src/helpers/mapPositionFromTransaction.ts | 23 ++++--------------- .../src/helpers/mapRangeFromTransaction.ts | 21 ++++++----------- .../src/helpers/yRelativePosition.ts | 18 +++++++++++++++ .../src/helpers/yRelativeRange.ts | 23 +++++++++++++++++++ 4 files changed, 52 insertions(+), 33 deletions(-) create mode 100644 packages/extension-collaboration/src/helpers/yRelativePosition.ts create mode 100644 packages/extension-collaboration/src/helpers/yRelativeRange.ts diff --git a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts index 0cbcd90a7c..baf6acef4d 100644 --- a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts +++ b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts @@ -1,23 +1,8 @@ import type { EditorState, Transaction } from '@tiptap/pm/state' -import { - absolutePositionToRelativePosition, - relativePositionToAbsolutePosition, - ySyncPluginKey, -} from '@tiptap/y-tiptap' import { isChangeOrigin } from './isChangeOrigin.js' - -function getAbsolutePosition(state: EditorState, relativePos: YRelativePosition) { - const ystate = ySyncPluginKey.getState(state) - return relativePositionToAbsolutePosition(ystate.doc, ystate.type, relativePos, ystate.binding.mapping) || 0 -} - -function getRelativePosition(state: EditorState, absolutePos: number): YRelativePosition { - const ystate = ySyncPluginKey.getState(state) - return absolutePositionToRelativePosition(absolutePos, ystate.type, ystate.binding.mapping) -} - -export type YRelativePosition = any | null +import type { YRelativePosition } from './yRelativePosition.js' +import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' export interface MapPositionFromTransactionOptions { transaction: Transaction @@ -39,7 +24,7 @@ export function mapPositionFromTransaction({ }: MapPositionFromTransactionOptions): MapPositionFromTransactionResult { if (isChangeOrigin(transaction)) { return { - newPosition: getAbsolutePosition(state, yRelativePosition), + newPosition: getYAbsolutePosition(state, yRelativePosition), newYRelativePosition: yRelativePosition, } } @@ -48,6 +33,6 @@ export function mapPositionFromTransaction({ return { newPosition, - newYRelativePosition: newPosition === position ? yRelativePosition : getRelativePosition(state, newPosition), + newYRelativePosition: newPosition === position ? yRelativePosition : getYRelativePosition(state, newPosition), } } diff --git a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts index 6480df7072..5e6ce5d207 100644 --- a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts +++ b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts @@ -1,40 +1,33 @@ import type { Range } from '@tiptap/core' import type { EditorState, Transaction } from '@tiptap/pm/state' -import { type YRelativePosition, mapPositionFromTransaction } from './mapPositionFromTransaction.js' - -export type YRelativeRange = { - from: YRelativePosition - to: YRelativePosition -} +import { mapPositionFromTransaction } from './mapPositionFromTransaction.js' +import { type YRelativePosition } from './yRelativePosition.js' export interface MapRangeFromTransactionOptions { transaction: Transaction state: EditorState range: Range - yRelativeRange: YRelativeRange + yRelativeRange: YRelativePosition } export interface MapRangeFromTransactionResult { newRange: Range - newYRelativeRange: YRelativeRange + newYRelativeRange: YRelativePosition } export function mapRangeFromTransaction({ - transaction, - state, range, yRelativeRange, + ...options }: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { const fromResult = mapPositionFromTransaction({ - transaction, - state, + ...options, position: range.from, yRelativePosition: yRelativeRange.from, }) const toResult = mapPositionFromTransaction({ - transaction, - state, + ...options, position: range.to, yRelativePosition: yRelativeRange.to, }) diff --git a/packages/extension-collaboration/src/helpers/yRelativePosition.ts b/packages/extension-collaboration/src/helpers/yRelativePosition.ts new file mode 100644 index 0000000000..69df11c0cd --- /dev/null +++ b/packages/extension-collaboration/src/helpers/yRelativePosition.ts @@ -0,0 +1,18 @@ +import type { EditorState } from '@tiptap/pm/state' +import { + absolutePositionToRelativePosition, + relativePositionToAbsolutePosition, + ySyncPluginKey, +} from '@tiptap/y-tiptap' + +export type YRelativePosition = any | null + +export function getYAbsolutePosition(state: EditorState, relativePos: YRelativePosition) { + const ystate = ySyncPluginKey.getState(state) + return relativePositionToAbsolutePosition(ystate.doc, ystate.type, relativePos, ystate.binding.mapping) || 0 +} + +export function getYRelativePosition(state: EditorState, absolutePos: number): YRelativePosition { + const ystate = ySyncPluginKey.getState(state) + return absolutePositionToRelativePosition(absolutePos, ystate.type, ystate.binding.mapping) +} diff --git a/packages/extension-collaboration/src/helpers/yRelativeRange.ts b/packages/extension-collaboration/src/helpers/yRelativeRange.ts new file mode 100644 index 0000000000..f6896a861d --- /dev/null +++ b/packages/extension-collaboration/src/helpers/yRelativeRange.ts @@ -0,0 +1,23 @@ +import type { Range } from '@tiptap/core' +import type { EditorState } from 'packages/pm/state/index.js' + +import { type YRelativePosition, getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' + +export interface YRelativeRange { + from: YRelativePosition + to: YRelativePosition +} + +export function getYAbsoluteRange(state: EditorState, yRelativeRange: YRelativeRange): Range { + return { + from: getYAbsolutePosition(state, yRelativeRange.from), + to: getYAbsolutePosition(state, yRelativeRange.to), + } +} + +export function getYRelativeRange(state: EditorState, absoluteRange: Range): YRelativeRange { + return { + from: getYRelativePosition(state, absoluteRange.from), + to: getYRelativePosition(state, absoluteRange.to), + } +} From 9d5aeb1cfe4e8e514d870b8f3a30c20a2be42f20 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Mon, 10 Nov 2025 13:10:23 +0100 Subject: [PATCH 480/629] fix: prevent infinite loop between UniqueID and TrailingNode extensions (#7202) This resolves an issue where using UniqueID and TrailingNode extensions together caused an infinite transaction loop, freezing browser tabs. The problem occurred because: 1. TrailingNode would insert a trailing node 2. UniqueID would add an ID to that node via setNodeMarkup 3. TrailingNode would see the document change and re-evaluate 4. This triggered another insertion, creating an infinite loop The fix introduces a transaction metadata flag (__uniqueIDTransaction) that UniqueID sets on its transactions. TrailingNode now checks for this flag and skips re-evaluation for UniqueID transactions, breaking the loop while preserving correct behavior for both extensions. Fixes #6870 --- .changeset/fix-unique-id-trailing-node-infinite-loop.md | 6 ++++++ packages/extension-unique-id/src/unique-id.ts | 6 +++++- packages/extensions/src/trailing-node/trailing-node.ts | 6 ++++++ 3 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 .changeset/fix-unique-id-trailing-node-infinite-loop.md diff --git a/.changeset/fix-unique-id-trailing-node-infinite-loop.md b/.changeset/fix-unique-id-trailing-node-infinite-loop.md new file mode 100644 index 0000000000..25c9f1baa7 --- /dev/null +++ b/.changeset/fix-unique-id-trailing-node-infinite-loop.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-unique-id': patch +'@tiptap/extension-trailing-node': patch +--- + +Fixed infinite transaction loop that caused browser tabs to freeze when using UniqueID and TrailingNode extensions together. diff --git a/packages/extension-unique-id/src/unique-id.ts b/packages/extension-unique-id/src/unique-id.ts index 6cb13a2140..136fdb2315 100644 --- a/packages/extension-unique-id/src/unique-id.ts +++ b/packages/extension-unique-id/src/unique-id.ts @@ -243,9 +243,13 @@ export const UniqueID = Extension.create({ } // `tr.setNodeMarkup` resets the stored marks - // so we’ll restore them if they exist + // so we'll restore them if they exist tr.setStoredMarks(newState.tr.storedMarks) + // Mark this transaction as coming from UniqueID + // to prevent infinite loops with other extensions (e.g., TrailingNode) + tr.setMeta('__uniqueIDTransaction', true) + return tr }, diff --git a/packages/extensions/src/trailing-node/trailing-node.ts b/packages/extensions/src/trailing-node/trailing-node.ts index c994e22259..676f3ab282 100644 --- a/packages/extensions/src/trailing-node/trailing-node.ts +++ b/packages/extensions/src/trailing-node/trailing-node.ts @@ -76,6 +76,12 @@ export const TrailingNode = Extension.create({ return value } + // Ignore transactions from UniqueID extension to prevent infinite loops + // when UniqueID adds IDs to newly inserted trailing nodes + if (tr.getMeta('__uniqueIDTransaction')) { + return value + } + const lastNode = tr.doc.lastChild return !nodeEqualsType({ node: lastNode, types: disabledNodes }) From e9261bb89ede01c25867744f0a50ab2cb6507198 Mon Sep 17 00:00:00 2001 From: bdbch Date: Mon, 10 Nov 2025 13:43:06 +0100 Subject: [PATCH 481/629] fix: resolve infinite transaction loop between UniqueID and TrailingNode extensions --- .changeset/fix-unique-id-trailing-node-infinite-loop.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/fix-unique-id-trailing-node-infinite-loop.md b/.changeset/fix-unique-id-trailing-node-infinite-loop.md index 25c9f1baa7..3ebbeb7af9 100644 --- a/.changeset/fix-unique-id-trailing-node-infinite-loop.md +++ b/.changeset/fix-unique-id-trailing-node-infinite-loop.md @@ -1,6 +1,6 @@ --- '@tiptap/extension-unique-id': patch -'@tiptap/extension-trailing-node': patch +'@tiptap/extensions': patch --- Fixed infinite transaction loop that caused browser tabs to freeze when using UniqueID and TrailingNode extensions together. From a365c6108d1d5a85190abbd31a8649c850cc1e87 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 10 Nov 2025 13:44:35 +0100 Subject: [PATCH 482/629] chore(release): publish a new release version (#7204) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...boration-surrogate-pairs--swift-phoenix.md | 7 ---- ...ix-required-attributes-schema--wise-owl.md | 5 --- ...x-unique-id-trailing-node-infinite-loop.md | 6 --- CHANGELOG.md | 38 +++++++++++++++++++ .../extension-character-count/CHANGELOG.md | 7 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 7 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 7 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 7 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 7 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 +++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 +++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 7 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 +++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 +++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 +++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 +++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 +++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 ++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 +++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 ++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 9 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 +++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 12 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 ++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 +++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 ++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 ++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 ++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 ++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 ++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 +++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 ++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 ++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 ++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 ++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 9 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 9 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 ++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 ++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 ++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 ++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 ++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 ++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 ++++ packages/vue-3/package.json | 2 +- 144 files changed, 656 insertions(+), 88 deletions(-) delete mode 100644 .changeset/fix-emoji-collaboration-surrogate-pairs--swift-phoenix.md delete mode 100644 .changeset/fix-required-attributes-schema--wise-owl.md delete mode 100644 .changeset/fix-unique-id-trailing-node-infinite-loop.md diff --git a/.changeset/fix-emoji-collaboration-surrogate-pairs--swift-phoenix.md b/.changeset/fix-emoji-collaboration-surrogate-pairs--swift-phoenix.md deleted file mode 100644 index 31e58cfd36..0000000000 --- a/.changeset/fix-emoji-collaboration-surrogate-pairs--swift-phoenix.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@tiptap/extension-collaboration': patch -'@tiptap/extension-collaboration-caret': patch -'@tiptap/extension-drag-handle': patch ---- - -Fixed collaborative editing errors with certain emoji combinations (like 🔴🟢, 😎🐈, 🟣🔵) by updating `@tiptap/y-tiptap` to stable v3.0.0. diff --git a/.changeset/fix-required-attributes-schema--wise-owl.md b/.changeset/fix-required-attributes-schema--wise-owl.md deleted file mode 100644 index eb243fad62..0000000000 --- a/.changeset/fix-required-attributes-schema--wise-owl.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Fixed ProseMirror schema generation to properly respect `isRequired` attribute configuration. Previously, attributes marked with `isRequired: true` were incorrectly treated as optional because a `default` property was always included in the schema specification. ProseMirror determines attribute requirements by the absence of the `default` property, so now the `default` is only included when the attribute is not required and a default value is explicitly defined. diff --git a/.changeset/fix-unique-id-trailing-node-infinite-loop.md b/.changeset/fix-unique-id-trailing-node-infinite-loop.md deleted file mode 100644 index 3ebbeb7af9..0000000000 --- a/.changeset/fix-unique-id-trailing-node-infinite-loop.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-unique-id': patch -'@tiptap/extensions': patch ---- - -Fixed infinite transaction loop that caused browser tabs to freeze when using UniqueID and TrailingNode extensions together. diff --git a/CHANGELOG.md b/CHANGELOG.md index 15733b689e..61612c8e2d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,43 @@ # Releases +## v3.10.5 + +### @tiptap/extension-collaboration + +#### Patch Changes + +- Fixed collaborative editing errors with certain emoji combinations (like 🔴🟢, 😎🐈, 🟣🔵) by updating `@tiptap/y-tiptap` to stable v3.0.0. + +### @tiptap/extension-collaboration-caret + +#### Patch Changes + +- Fixed collaborative editing errors with certain emoji combinations (like 🔴🟢, 😎🐈, 🟣🔵) by updating `@tiptap/y-tiptap` to stable v3.0.0. + +### @tiptap/extension-drag-handle + +#### Patch Changes + +- Fixed collaborative editing errors with certain emoji combinations (like 🔴🟢, 😎🐈, 🟣🔵) by updating `@tiptap/y-tiptap` to stable v3.0.0. + +### @tiptap/core + +#### Patch Changes + +- Fixed ProseMirror schema generation to properly respect `isRequired` attribute configuration. Previously, attributes marked with `isRequired: true` were incorrectly treated as optional because a `default` property was always included in the schema specification. ProseMirror determines attribute requirements by the absence of the `default` property, so now the `default` is only included when the attribute is not required and a default value is explicitly defined. + +### @tiptap/extension-unique-id + +#### Patch Changes + +- Fixed infinite transaction loop that caused browser tabs to freeze when using UniqueID and TrailingNode extensions together. + +### @tiptap/extensions + +#### Patch Changes + +- Fixed infinite transaction loop that caused browser tabs to freeze when using UniqueID and TrailingNode extensions together. + ## v3.10.4 ### @tiptap/core diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 95524bb009..94fcc6e017 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [9d5aeb1] + - @tiptap/extensions@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 875687813b..f6aa895120 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 2090e0a10a..ebc157fcba 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [9d5aeb1] + - @tiptap/extensions@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index d3666c79eb..ae4090763e 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index c54b0a1477..c4c69cf90f 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [9d5aeb1] + - @tiptap/extensions@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 096f138af1..e309a93c26 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 9255829665..b729ee0f96 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [9d5aeb1] + - @tiptap/extensions@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 41594ce319..67cf880d59 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index b77cda87c7..131cb8b23a 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [9d5aeb1] + - @tiptap/extensions@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 384a8738f6..bc59dc1da9 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 7cceb62cfa..9305efeb18 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-list@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 82a7ef947a..83342ef7bc 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 77a7ecf9a3..0162ffbe50 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-list@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index e1ccef75d6..7276ef6c1a 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 1f85df8431..92a74ac14a 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [9d5aeb1] + - @tiptap/extensions@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index a513bfc968..32a4846e0f 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 7936ebdd0f..768e60c73e 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-table@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 37618bbe2c..3231472985 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index d41164d361..ffc6a2055b 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-table@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 2879df62dd..bfb791c298 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 6a282f9981..87d89d0419 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-table@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 15b9dfa4c5..f9baf1b329 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index ad99eb8042..84abc75a29 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-list@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 2e016b42cb..cb1d550fa5 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 06e24d5875..4dbe4b5e02 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-list@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 3a9b782ba9..e16435d3ea 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 4262250679..d09bde511e 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- 92fae18: Fixed ProseMirror schema generation to properly respect `isRequired` attribute configuration. Previously, attributes marked with `isRequired: true` were incorrectly treated as optional because a `default` property was always included in the schema specification. ProseMirror determines attribute requirements by the absence of the `default` property, so now the `default` is only included when the attribute is not required and a default value is explicitly defined. + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index e7d5cd2464..53e82e941e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 9a502b01b7..42832d72e3 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 710c61d1ec..3ec03b341a 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 5cec361e08..1ccc964bca 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index fb1ce598c7..b8051caaa3 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 6cb951c2e2..4e4535c887 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 0cba24e9b6..fc4bba607b 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 5268391920..2d2735f0f7 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-list@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 3585d47eb2..3e1a789362 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 035ce21159..7cfefc0608 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/extension-code-block@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 974e108201..b675963399 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 18b5211533..6c17901fc2 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index f11f858607..b0bfe31989 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index c18720c648..cd6c222bad 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 6aca5da52f..a1783ad7a8 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index e471fb89eb..0e649b06dd 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- 50e8905: Fixed collaborative editing errors with certain emoji combinations (like 🔴🟢, 😎🐈, 🟣🔵) by updating `@tiptap/y-tiptap` to stable v3.0.0. +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 0976ae73a2..d44c3c76b4 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 85e1c344a8..6346f5853d 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- 50e8905: Fixed collaborative editing errors with certain emoji combinations (like 🔴🟢, 😎🐈, 🟣🔵) by updating `@tiptap/y-tiptap` to stable v3.0.0. +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 9b2c5278d8..d064553bed 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 88b9ee9cb2..f6957773ca 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 9cc23c173b..0ef7c819e8 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 116917b6ec..9d9fc241c2 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/extension-text-style@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 716746dd83..88234c27b9 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 7b1eded48b..887ab271e5 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index e775b24e5c..e5abfecb86 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 355e50e81d..f1ee27afef 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.10.5 + +### Patch Changes + +- Updated dependencies [50e8905] + - @tiptap/extension-drag-handle@3.10.5 + - @tiptap/react@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 4fa116fc80..31fa911481 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 734953e639..fd3c45968c 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.10.5 + +### Patch Changes + +- Updated dependencies [50e8905] + - @tiptap/extension-drag-handle@3.10.5 + - @tiptap/vue-2@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index f856a1c668..5965d36aa1 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index a4bbf61c34..0ba22a2892 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.10.5 + +### Patch Changes + +- Updated dependencies [50e8905] + - @tiptap/extension-drag-handle@3.10.5 + - @tiptap/vue-3@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 7ec118144b..4d1ba1a38c 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index c1a7ad8bae..39fe1e5da1 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/extension-drag-handle +## 3.10.5 + +### Patch Changes + +- 50e8905: Fixed collaborative editing errors with certain emoji combinations (like 🔴🟢, 😎🐈, 🟣🔵) by updating `@tiptap/y-tiptap` to stable v3.0.0. +- Updated dependencies [50e8905] +- Updated dependencies [92fae18] + - @tiptap/extension-collaboration@3.10.5 + - @tiptap/core@3.10.5 + - @tiptap/extension-node-range@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 4be496650d..6c988e39e1 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 1a38ca90d1..cf8d54048c 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/suggestion@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 5009256216..e2a995140c 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index d8755cc76b..ea83c02e2e 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/extension-text-style@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 74ca96fa5b..0fcaf1bffe 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index a2b247bb1f..4aa8ba1f49 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 8e6e5f239c..625eacbcf0 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index eacd0cb654..0862f8134f 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 5bb4556e06..4e62022541 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 172e8354f1..1b71b9d50a 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 94817cab3e..5eaceccf04 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 0b71d2247a..2348b0f79d 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index ce7d8def8a..ba593f31c7 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 349dea22d7..00b4de2890 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index fae1457a98..599bbc7378 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 87f4e5003a..02f88d43d3 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 31a77df15b..25296eaebd 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 46130f7b97..810a8b86b1 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 5a94cd8bb9..e960aa054a 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 7c5f6b6cb8..25b39370bf 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/extension-text-style@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index c557f88d43..0f8435108a 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 587ce67faa..2bcd539ace 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index bd9076f7dd..78f2eac6ee 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 9e9c0c94c3..7bf65b278d 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 3370adbb18..be4ca4070e 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index a5d22a78ad..92b38630be 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 4c3497c878..bf11ac21b7 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 207bd5bbf4..94e55925ed 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index ae4b49a94c..b67f779406 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index a5cc0a9831..20773ea5e0 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/suggestion@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 0a050a06d4..8e054dba7c 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 39103f166a..62f690e60f 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 42717ea232..414e044cee 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 4425a65592..658ce85616 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- @tiptap/extension-list@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 857e764cc1..731b6bc787 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 4adabadf1e..30957752d8 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index e9f8216601..7348895afa 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 879729f833..dc4ec88270 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 45dbcbfde8..645d1aacad 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index d58a5b5560..b9d924f368 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 8d68a0c341..d4923518c2 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 9c9a0e7f10..f9f316c6e0 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index dc34f25152..0a81fce880 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index c6e2ea73f8..0a57cdc7df 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.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 5078de548d..1c43bcf227 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index e4813f91e9..a859ab4f05 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index a14d86e4e9..9636132ab0 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 0d183298dd..4985d4ae05 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 19710c7b73..67ff6a847c 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 64a3f62f36..16b8a8e145 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index feda87deac..7e410687a2 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index e9d0f56c3b..b580c68b1c 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 8b00cab5f0..aa3c7d3f20 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index e00f9a2398..65912e7fea 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 5a402dc5b3..6aa1e5dea4 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 52c84d2823..342529983a 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 75d7cb22fc..7ebfb9638e 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index d32d4680df..7b1dff152b 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-unique-id +## 3.10.5 + +### Patch Changes + +- 9d5aeb1: Fixed infinite transaction loop that caused browser tabs to freeze when using UniqueID and TrailingNode extensions together. +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 52365166a2..9f7190edde 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index aa40607e2d..c60db12516 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 60fcf4b800..a98f83fe21 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 4e5e0818a9..e78502fc29 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- 9d5aeb1: Fixed infinite transaction loop that caused browser tabs to freeze when using UniqueID and TrailingNode extensions together. +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index d08357e07b..e3ca4fadbe 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index e4bff7546a..e54d858881 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index bf83110917..18796967b6 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 061ecca6b2..3a03cdc7c5 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index a92d881b94..86dc4e1840 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 097748dd48..02d2f39b1c 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.5 + ## 3.10.4 ## 3.10.3 diff --git a/packages/pm/package.json b/packages/pm/package.json index d47810dae1..a6ad3cf863 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 95f49a05f6..67fa97aaa6 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 21c7ab3b4e..b4c0dbe7a1 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 8e90a244b0..d4dd7163e2 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] +- Updated dependencies [9d5aeb1] + - @tiptap/core@3.10.5 + - @tiptap/extensions@3.10.5 + - @tiptap/extension-blockquote@3.10.5 + - @tiptap/extension-bold@3.10.5 + - @tiptap/extension-code@3.10.5 + - @tiptap/extension-code-block@3.10.5 + - @tiptap/extension-document@3.10.5 + - @tiptap/extension-hard-break@3.10.5 + - @tiptap/extension-heading@3.10.5 + - @tiptap/extension-horizontal-rule@3.10.5 + - @tiptap/extension-italic@3.10.5 + - @tiptap/extension-link@3.10.5 + - @tiptap/extension-list@3.10.5 + - @tiptap/extension-paragraph@3.10.5 + - @tiptap/extension-strike@3.10.5 + - @tiptap/extension-text@3.10.5 + - @tiptap/extension-underline@3.10.5 + - @tiptap/extension-dropcursor@3.10.5 + - @tiptap/extension-gapcursor@3.10.5 + - @tiptap/extension-list-item@3.10.5 + - @tiptap/extension-list-keymap@3.10.5 + - @tiptap/extension-bullet-list@3.10.5 + - @tiptap/extension-ordered-list@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 6effada1c7..18f43dd810 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index ce27295ca0..5280fbfbfd 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 7f1e8870de..b60858bac8 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 0b7227cd86..9487a5eb78 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 8db2ab74de..328512fbb0 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 9506094e29..e7f6027d16 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 0231864e69..0428143183 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 0b19e5ff7e..7acdbf05d2 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.5 + +### Patch Changes + +- Updated dependencies [92fae18] + - @tiptap/core@3.10.5 + - @tiptap/pm@3.10.5 + ## 3.10.4 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 8d057e8644..155b2a46b8 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.4", + "version": "3.10.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 34ec997ae4d64bb3c8c181748709fdddb3d568f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 15:13:04 +0100 Subject: [PATCH 483/629] feat: add position helpers for Y.js collaboration extension - Introduced `positionHelpers` in the collaboration extension to facilitate mapping Y.js positions and ranges from transactions. - Added methods for getting absolute and relative positions and ranges, enhancing collaboration functionality. - Updated relevant files to integrate new position helper methods and ensure proper type exports. --- CHANGELOG.md | 94 ++++++----- .../ResizableImages/React/styles.scss | 2 +- .../Examples/ResizableNodes/React/styles.scss | 2 +- packages/core/src/Editor.ts | 32 ++++ packages/core/src/helpers/index.ts | 1 + packages/core/src/helpers/positionHelpers.ts | 159 ++++++++++++++++++ .../src/collaboration.ts | 39 +++++ .../src/helpers/mapPositionFromTransaction.ts | 36 +--- .../src/helpers/mapRangeFromTransaction.ts | 25 +-- .../src/helpers/yRelativePosition.ts | 3 +- .../src/helpers/yRelativeRange.ts | 9 +- 11 files changed, 303 insertions(+), 99 deletions(-) create mode 100644 packages/core/src/helpers/positionHelpers.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index 15733b689e..1c22d7471c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,7 +54,7 @@ - Add a new ResizableNodeview NodeView to core that wraps elements (images, videos, iframes) with configurable resize handles. It provides live onResize/onCommit callbacks, min/max constraints, aspect-ratio support, and styling hooks (class names + data attributes) to improve UX when resizing media inside the editor. - the addNodeView function can now return `null` to dynamically disable rendering of a node view - + While this should not directly cause any issues, it's noteworthy as it still could affect some behavior in some edge cases. ### @tiptap/extension-image @@ -84,7 +84,7 @@ #### Patch Changes - Ensure that markdown hard breaks (two spaces followed by a newline) are parsed so they render as line breaks (`
`) in the editor when using `contentType: 'markdown'`. - + Fixes #7107 ### @tiptap/extension-unique-id @@ -104,7 +104,7 @@ #### Patch Changes - Replace DOM traversal with browser's native elementsFromPoint for better performance. - + - Use elementsFromPoint instead of querySelectorAll - Add clampToContent helper for coordinate boundary validation - Add findClosestTopLevelBlock helper for efficient block lookup @@ -154,48 +154,55 @@ #### Minor Changes - All commands and their corresponding TypeScript types are now exported from `@tiptap/core` so they can be imported and referenced directly by consumers. This makes it easier to build typed helpers, extensions, and tests that depend on the command signatures. - + Why: + - Previously some command option types were only available as internal types or scattered across files, which made it awkward for downstream users to import and reuse them. - + ```ts import { commands } from '@tiptap/core' ``` - + Notes: + - This is a non-breaking, additive change. It improves ergonomics for TypeScript consumers. - If you rely on previously private/internal types, prefer the exported types from `@tiptap/core` going forward. + - Add comprehensive bidirectional markdown support to Tiptap through a new `@tiptap/markdown` package and Markdown utilities in `@tiptap/core`. - + **New Package: `@tiptap/markdown`** - A new official extension that provides full Markdown parsing and serialization capabilities using [MarkedJS](https://marked.js.org) as the underlying Markdown parser. - + **Core Features:** - + **Extension API** + - **`Markdown` Extension**: Main extension that adds Markdown support to your editor - **`MarkdownManager`**: Core engine for parsing and serializing Markdown - Parse Markdown strings to Tiptap JSON: `editor.markdown.parse(markdown)` - Serialize Tiptap JSON to Markdown: `editor.markdown.serialize(json)` - Access to underlying marked.js instance: `editor.markdown.instance` - + #### Editor Methods + - **`editor.getMarkdown()`**: Serialize current editor content to Markdown string - **`editor.markdown`**: Access to MarkdownManager instance for advanced operations - + **Editor Options:** + - **`contentType`**: Control the type of content that is inserted into the editor. Can be `json`, `html` or `markdown` - defaults to `json` and will automatically detect invalid content types (like JSON when it is actually Markdown). ```typescript new Editor({ content: '# Hello World', - contentType: 'markdown' + contentType: 'markdown', }) ``` - + **Command Options:** All content commands now support an `contentType` option: + - **`setContent(markdown, { contentType: 'markdown' })`**: Replace editor content with markdown - **`insertContent(markdown, { contentType: 'markdown' })`**: Insert markdown at cursor position - **`insertContentAt(position, markdown, { contentType: 'markdown' })`**: Insert Markdown at specific position - + For more, check [the documentation](https://tiptap.dev/docs/editor/markdown). #### Patch Changes @@ -207,36 +214,40 @@ #### Minor Changes - Add comprehensive bidirectional markdown support to Tiptap through a new `@tiptap/markdown` package and Markdown utilities in `@tiptap/core`. - + **New Package: `@tiptap/markdown`** - A new official extension that provides full Markdown parsing and serialization capabilities using [MarkedJS](https://marked.js.org) as the underlying Markdown parser. - + **Core Features:** - + **Extension API** + - **`Markdown` Extension**: Main extension that adds Markdown support to your editor - **`MarkdownManager`**: Core engine for parsing and serializing Markdown - Parse Markdown strings to Tiptap JSON: `editor.markdown.parse(markdown)` - Serialize Tiptap JSON to Markdown: `editor.markdown.serialize(json)` - Access to underlying marked.js instance: `editor.markdown.instance` - + #### Editor Methods + - **`editor.getMarkdown()`**: Serialize current editor content to Markdown string - **`editor.markdown`**: Access to MarkdownManager instance for advanced operations - + **Editor Options:** + - **`contentType`**: Control the type of content that is inserted into the editor. Can be `json`, `html` or `markdown` - defaults to `json` and will automatically detect invalid content types (like JSON when it is actually Markdown). ```typescript new Editor({ content: '# Hello World', - contentType: 'markdown' + contentType: 'markdown', }) ``` - + **Command Options:** All content commands now support an `contentType` option: + - **`setContent(markdown, { contentType: 'markdown' })`**: Replace editor content with markdown - **`insertContent(markdown, { contentType: 'markdown' })`**: Insert markdown at cursor position - **`insertContentAt(position, markdown, { contentType: 'markdown' })`**: Insert Markdown at specific position - + For more, check [the documentation](https://tiptap.dev/docs/editor/markdown). ### @tiptap/extension-link @@ -251,15 +262,15 @@ - Make the `TrailingNode` extension's `node` option optional and derive the default node type from the editor schema when available. - + Previously the extension used a hard-coded `'paragraph'` default and the `node` option was required in the TypeScript definitions. This change: - + - makes `node` optional in the options type, - prefers the editor schema's top node default type when resolving the trailing node, and - falls back to the configured option or `'paragraph'` as a last resort. - + This fixes cases where projects use a different top-level default node and prevents the extension from inserting an incorrect trailing node type. @@ -270,10 +281,11 @@ #### Patch Changes - Fix CVE-2025-61927 by bumping happy-dom to 20.0.0 - + Bumps the transitive/dev dependency happy-dom from ^18.0.1 → ^20.0.0 in @tiptap/html to address CVE-2025-61927. This is a dependency/security-only change and does not modify any public APIs. - + Why: + - happy-dom released a security fix for CVE-2025-61927; updating prevents the vulnerability being pulled into consumers that depend on @tiptap/html. ## v3.6.6 @@ -402,7 +414,7 @@ #### Patch Changes - Improve typing and docs for `EditorOptions.element` to reflect all supported mounting modes and align behavior across adapters. - + - `element` now accepts: - `Element`: the editor is appended inside the given element. - `{ mount: HTMLElement }`: the editor is mounted directly to `mount` (no extra wrapper). @@ -414,14 +426,15 @@ #### Patch Changes - Parse cell `colwidth` from nearest `` when missing on the cell - + When importing HTML, table column widths are often declared on a surrounding `` rather than on each ``. Previously, `tableCell` only read the `colwidth` attribute from the cell itself and would lose width information in that case. The implementation now falls back to reading the corresponding ``'s `width` from the table's `` using the cell's index. - + This is a non-breaking bugfix that preserves layout information when HTML uses ``. Consider adding a small demo or unit test to assert colwidth is preserved for cells when only the `` contains width attributes. + - Fixes table wrapper replacement and lost selections when `resizable: true`. - + TableView.ignoreMutation now ignores attribute/childList/characterData mutations that occur inside the table wrapper but outside the editable `contentDOM`, preventing wrapper re-creation during resize interactions so selections (e.g. `mergeCells()`) are preserved. - + No API or breaking changes. ### @tiptap/extension-bubble-menu @@ -429,7 +442,7 @@ #### Patch Changes - Remove recently added `updateBubbleMenuPosition` method because it would not work in the React and Vue versions of the BubbleMenu, only in the vanilla extension. And that would confuse developers. - + Write the `transactionHandler` method as an arrow function because arrow functions have no `this`, so the `this` remains the instance of the `BubbleMenuView` class. ### @tiptap/extension-unique-id @@ -437,16 +450,16 @@ #### Minor Changes - Create a utility to add unique IDs to a document in the server - + The utility is called `generateUniqueIds` and is exported from the `@tiptap/extension-unique-id` package. - + It has the same functionality as the `UniqueID` extension, but without the need to create an `Editor` instance. This lets you add unique IDs to the document in the server. - + It takes the following parameters: - + - `doc`: The Tiptap JSON document to add unique IDs to. - `extensions`: The extensions to use. Must include the `UniqueID` extension. - + It returns the updated Tiptap JSON document, with the unique IDs added to the nodes. ### @tiptap/vue-3 @@ -462,11 +475,11 @@ #### Patch Changes - Merge nested span styles only for immediate child spans and guard style values. - + - Replace non-standard/fragile selector approach and avoid re-processing nested `` elements. - Read parent style once, merge with child style only when present, and remove empty `style` attributes. - Improves parsing performance and robustness in browsers, Node/JSDOM and tests. - + This change fixes a bug that could cause exponential work when parsing deeply nested `` elements - in extreme cases that could make the tab unresponsive or crash the renderer. It is a bugfix / performance improvement with no public API @@ -506,7 +519,6 @@ - Add `appendTo` support to `FloatingMenu` and pass it through in React/Vue 2/Vue 3 for both `BubbleMenu` and `FloatingMenu` to allow fixing clipping/z-index issues. - # [2.4.0](https://github.com/ueberdosis/tiptap/compare/v2.3.2...v2.4.0) (2024-05-14) ### Bug Fixes diff --git a/demos/src/Examples/ResizableImages/React/styles.scss b/demos/src/Examples/ResizableImages/React/styles.scss index 322ed35948..f6a7678beb 100644 --- a/demos/src/Examples/ResizableImages/React/styles.scss +++ b/demos/src/Examples/ResizableImages/React/styles.scss @@ -88,7 +88,7 @@ } } - [data-resize-state="true"] [data-resize-wrapper] { + [data-resize-state='true'] [data-resize-wrapper] { outline: 1px solid rgba(0, 0, 0, 0.25); border-radius: 0.125rem; } diff --git a/demos/src/Examples/ResizableNodes/React/styles.scss b/demos/src/Examples/ResizableNodes/React/styles.scss index 45d69bbc24..5f01596447 100644 --- a/demos/src/Examples/ResizableNodes/React/styles.scss +++ b/demos/src/Examples/ResizableNodes/React/styles.scss @@ -88,7 +88,7 @@ } } - [data-resize-state="true"] [data-resize-wrapper] { + [data-resize-state='true'] [data-resize-wrapper] { outline: 1px solid rgba(0, 0, 0, 0.25); border-radius: 0.125rem; } diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index cdd5b670c0..51330e9151 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -25,6 +25,15 @@ import { getText } from './helpers/getText.js' import { getTextSerializersFromSchema } from './helpers/getTextSerializersFromSchema.js' import { isActive } from './helpers/isActive.js' import { isNodeEmpty } from './helpers/isNodeEmpty.js' +import { + type PositionHelpers, + getYAbsolutePosition, + getYAbsoluteRange, + getYRelativePosition, + getYRelativeRange, + mapPositionFromTransaction, + mapRangeFromTransaction, +} from './helpers/positionHelpers.js' import { resolveFocusPosition } from './helpers/resolveFocusPosition.js' import type { Storage } from './index.js' import { NodePos } from './NodePos.js' @@ -773,4 +782,27 @@ export class Editor extends EventEmitter { get $doc() { return this.$pos(0) } + + public get positionHelpers(): PositionHelpers { + return ( + this.storage.collaboration?.positionHelpers ?? { + mapPositionFromTransaction: options => { + return mapPositionFromTransaction({ + state: this.state, + ...options, + }) + }, + mapRangeFromTransaction: options => { + return mapRangeFromTransaction({ + state: this.state, + ...options, + }) + }, + getYAbsolutePosition, + getYRelativePosition, + getYAbsoluteRange, + getYRelativeRange, + } + ) + } } diff --git a/packages/core/src/helpers/index.ts b/packages/core/src/helpers/index.ts index 5ce5583b29..1bb18c9d2a 100644 --- a/packages/core/src/helpers/index.ts +++ b/packages/core/src/helpers/index.ts @@ -45,6 +45,7 @@ export * from './isNodeActive.js' export * from './isNodeEmpty.js' export * from './isNodeSelection.js' export * from './isTextSelection.js' +export * from './positionHelpers.js' export * from './posToDOMRect.js' export * from './resolveExtensions.js' export * from './resolveFocusPosition.js' diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts new file mode 100644 index 0000000000..f92b215a4b --- /dev/null +++ b/packages/core/src/helpers/positionHelpers.ts @@ -0,0 +1,159 @@ +import type { Range } from '@tiptap/core' +import type { EditorState, Transaction } from '@tiptap/pm/state' +import type { MapResult } from '@tiptap/pm/transform' + +type WithOptionalProperties = Pick, K> & Omit + +/** + * A type that represents a Y.js relative position. Used to map a position from + * a transaction, handling both Yjs changes and regular transactions. + */ +export type YRelativePosition = any | null + +/** + * A type that represents the Y.js relative positions of a range. Used to map a + * range from a transaction, handling both Yjs changes and regular transactions. + */ +export interface YRelativeRange { + from: YRelativePosition + to: YRelativePosition +} + +/** + * Options for the mapPositionFromTransaction function. + */ +export interface MapPositionFromTransactionOptions { + transaction: Transaction + state: EditorState + position: number + yRelativePosition: YRelativePosition +} + +/** + * The result of the mapPositionFromTransaction function. + */ +export interface MapPositionFromTransactionResult { + newPosition: number + newYRelativePosition: YRelativePosition + mapResult: MapResult | null +} + +/** + * Options for the mapRangeFromTransaction function. + */ +export interface MapRangeFromTransactionOptions { + transaction: Transaction + state: EditorState + range: Range + yRelativeRange: YRelativePosition +} + +/** + * The result of the mapRangeFromTransaction function. + */ +export interface MapRangeFromTransactionResult { + newRange: Range + newYRelativeRange: YRelativePosition + mapResultFrom: MapResult | null + mapResultTo: MapResult | null +} + +export function mapPositionFromTransaction({ + transaction, + position, + yRelativePosition, +}: MapPositionFromTransactionOptions): MapPositionFromTransactionResult { + const mapResult = transaction.mapping.mapResult(position) + return { + newPosition: mapResult.pos, + newYRelativePosition: yRelativePosition, + mapResult, + } +} + +export function mapRangeFromTransaction({ + range, + yRelativeRange, + ...options +}: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { + const fromResult = mapPositionFromTransaction({ + position: range.from, + yRelativePosition: yRelativeRange.from, + ...options, + }) + const toResult = mapPositionFromTransaction({ + position: range.to, + yRelativePosition: yRelativeRange.to, + ...options, + }) + + return { + newRange: { + from: fromResult.newPosition, + to: toResult.newPosition, + }, + newYRelativeRange: { + from: fromResult.newYRelativePosition, + to: toResult.newYRelativePosition, + }, + mapResultFrom: fromResult.mapResult, + mapResultTo: toResult.mapResult, + } +} + +const notImplementedError = new Error('Not implemented') + +export function getYAbsolutePosition(): number { + throw notImplementedError +} + +export function getYRelativePosition(): YRelativePosition { + throw notImplementedError +} + +export function getYAbsoluteRange(): Range { + throw notImplementedError +} + +export function getYRelativeRange(): YRelativeRange { + throw notImplementedError +} + +/** + * Helper methods for working with positions and ranges. + */ +export interface PositionHelpers { + /** + * Maps a position from a transaction, handling both Yjs changes and regular transactions. + */ + mapPositionFromTransaction: ( + options: WithOptionalProperties, + ) => MapPositionFromTransactionResult + + /** + * Maps a range from a transaction, handling both Yjs changes and regular transactions. + */ + mapRangeFromTransaction: ( + options: WithOptionalProperties, + ) => MapRangeFromTransactionResult + + /** + * Converts a Y.js relative position to an absolute position in the editor. + */ + getYAbsolutePosition: (relativePos: YRelativePosition) => number + + /** + * Converts an absolute position in the editor to a Y.js relative position. + */ + getYRelativePosition: (absolutePos: number) => YRelativePosition + + /** + * Converts a Y.js relative range to an absolute range in the editor. + */ + getYAbsoluteRange: (yRelativeRange: YRelativeRange) => Range + + /** + * Converts an absolute range in the editor to a Y.js relative range. + */ + getYRelativeRange: (absoluteRange: Range) => YRelativeRange +} diff --git a/packages/extension-collaboration/src/collaboration.ts b/packages/extension-collaboration/src/collaboration.ts index afc0293c9a..97737fdc2d 100644 --- a/packages/extension-collaboration/src/collaboration.ts +++ b/packages/extension-collaboration/src/collaboration.ts @@ -1,9 +1,15 @@ +import type { PositionHelpers } from '@tiptap/core' import { Extension } from '@tiptap/core' import { Plugin, PluginKey } from '@tiptap/pm/state' import type { EditorView } from '@tiptap/pm/view' import { redo, undo, ySyncPlugin, yUndoPlugin, yUndoPluginKey, yXmlFragmentToProsemirrorJSON } from '@tiptap/y-tiptap' import type { Doc, UndoManager, XmlFragment } from 'yjs' +import { mapPositionFromTransaction } from './helpers/mapPositionFromTransaction.js' +import { mapRangeFromTransaction } from './helpers/mapRangeFromTransaction.js' +import { getYAbsolutePosition, getYRelativePosition } from './helpers/yRelativePosition.js' +import { getYAbsoluteRange, getYRelativeRange } from './helpers/yRelativeRange.js' + type YSyncOpts = Parameters[1] type YUndoOpts = Parameters[0] @@ -13,6 +19,11 @@ export interface CollaborationStorage { * Disabling collaboration will prevent any changes from being synced with other users. */ isDisabled: boolean + + /** + * Helper methods for working with Y.js positions and ranges. + */ + positionHelpers: PositionHelpers | null } declare module '@tiptap/core' { @@ -99,6 +110,7 @@ export const Collaboration = Extension.create { + return mapPositionFromTransaction({ + ...options, + state: this.editor.state, + }) + }, + mapRangeFromTransaction: options => { + return mapRangeFromTransaction({ + ...options, + state: this.editor.state, + }) + }, + getYAbsolutePosition: relativePos => { + return getYAbsolutePosition(this.editor.state, relativePos) + }, + getYRelativePosition: absolutePos => { + return getYRelativePosition(this.editor.state, absolutePos) + }, + getYAbsoluteRange: yRelativeRange => { + return getYAbsoluteRange(this.editor.state, yRelativeRange) + }, + getYRelativeRange: absoluteRange => { + return getYRelativeRange(this.editor.state, absoluteRange) + }, + } }, addCommands() { diff --git a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts index baf6acef4d..d7d8f7d2b6 100644 --- a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts +++ b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts @@ -1,38 +1,20 @@ -import type { EditorState, Transaction } from '@tiptap/pm/state' +import type { MapPositionFromTransactionOptions, MapPositionFromTransactionResult } from '@tiptap/core' +import { mapPositionFromTransaction as coreMapPositionFromTransaction } from '@tiptap/core' import { isChangeOrigin } from './isChangeOrigin.js' -import type { YRelativePosition } from './yRelativePosition.js' -import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' +import { getYAbsolutePosition } from './yRelativePosition.js' -export interface MapPositionFromTransactionOptions { - transaction: Transaction - state: EditorState - position: number - yRelativePosition: YRelativePosition -} - -export interface MapPositionFromTransactionResult { - newPosition: number - newYRelativePosition: YRelativePosition -} - -export function mapPositionFromTransaction({ - transaction, - state, - position, - yRelativePosition, -}: MapPositionFromTransactionOptions): MapPositionFromTransactionResult { +export function mapPositionFromTransaction( + options: MapPositionFromTransactionOptions, +): MapPositionFromTransactionResult { + const { transaction, state, yRelativePosition } = options if (isChangeOrigin(transaction)) { return { newPosition: getYAbsolutePosition(state, yRelativePosition), newYRelativePosition: yRelativePosition, + mapResult: null, } } - const newPosition = transaction.mapping.map(position) - - return { - newPosition, - newYRelativePosition: newPosition === position ? yRelativePosition : getYRelativePosition(state, newPosition), - } + return coreMapPositionFromTransaction(options) } diff --git a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts index 5e6ce5d207..22b75659aa 100644 --- a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts +++ b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts @@ -1,26 +1,9 @@ -import type { Range } from '@tiptap/core' -import type { EditorState, Transaction } from '@tiptap/pm/state' +import type { MapRangeFromTransactionOptions, MapRangeFromTransactionResult } from '@tiptap/core' import { mapPositionFromTransaction } from './mapPositionFromTransaction.js' -import { type YRelativePosition } from './yRelativePosition.js' -export interface MapRangeFromTransactionOptions { - transaction: Transaction - state: EditorState - range: Range - yRelativeRange: YRelativePosition -} - -export interface MapRangeFromTransactionResult { - newRange: Range - newYRelativeRange: YRelativePosition -} - -export function mapRangeFromTransaction({ - range, - yRelativeRange, - ...options -}: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { +export function mapRangeFromTransaction(options: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { + const { range, yRelativeRange } = options const fromResult = mapPositionFromTransaction({ ...options, position: range.from, @@ -40,5 +23,7 @@ export function mapRangeFromTransaction({ from: fromResult.newYRelativePosition, to: toResult.newYRelativePosition, }, + mapResultFrom: fromResult.mapResult, + mapResultTo: toResult.mapResult, } } diff --git a/packages/extension-collaboration/src/helpers/yRelativePosition.ts b/packages/extension-collaboration/src/helpers/yRelativePosition.ts index 69df11c0cd..59eb5e14c5 100644 --- a/packages/extension-collaboration/src/helpers/yRelativePosition.ts +++ b/packages/extension-collaboration/src/helpers/yRelativePosition.ts @@ -1,3 +1,4 @@ +import type { YRelativePosition } from '@tiptap/core' import type { EditorState } from '@tiptap/pm/state' import { absolutePositionToRelativePosition, @@ -5,8 +6,6 @@ import { ySyncPluginKey, } from '@tiptap/y-tiptap' -export type YRelativePosition = any | null - export function getYAbsolutePosition(state: EditorState, relativePos: YRelativePosition) { const ystate = ySyncPluginKey.getState(state) return relativePositionToAbsolutePosition(ystate.doc, ystate.type, relativePos, ystate.binding.mapping) || 0 diff --git a/packages/extension-collaboration/src/helpers/yRelativeRange.ts b/packages/extension-collaboration/src/helpers/yRelativeRange.ts index f6896a861d..a80706c974 100644 --- a/packages/extension-collaboration/src/helpers/yRelativeRange.ts +++ b/packages/extension-collaboration/src/helpers/yRelativeRange.ts @@ -1,12 +1,7 @@ -import type { Range } from '@tiptap/core' +import type { Range, YRelativeRange } from '@tiptap/core' import type { EditorState } from 'packages/pm/state/index.js' -import { type YRelativePosition, getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' - -export interface YRelativeRange { - from: YRelativePosition - to: YRelativePosition -} +import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' export function getYAbsoluteRange(state: EditorState, yRelativeRange: YRelativeRange): Range { return { From 9aacab1cd3f88e4f41cfc427522fbadd1de05534 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 15:58:59 +0100 Subject: [PATCH 484/629] refactor: reorganize collaboration extension lifecycle methods and enhance position mapping - Moved the warning for incompatible extensions from `onCreate` to `onBeforeCreate` for better lifecycle management. - Updated the `mapPositionFromTransaction` function to handle new Y.js position mapping logic, including conditional handling for absolute positions. - Improved type imports for better clarity and consistency across the collaboration extension files. --- .../extension-collaboration/src/collaboration.ts | 15 +++++++++------ .../src/helpers/mapPositionFromTransaction.ts | 11 ++++++++--- .../src/helpers/yRelativeRange.ts | 2 +- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/packages/extension-collaboration/src/collaboration.ts b/packages/extension-collaboration/src/collaboration.ts index 97737fdc2d..c528bbbd1a 100644 --- a/packages/extension-collaboration/src/collaboration.ts +++ b/packages/extension-collaboration/src/collaboration.ts @@ -114,12 +114,7 @@ export const Collaboration = Extension.create extension.name === 'undoRedo')) { - console.warn( - '[tiptap warn]: "@tiptap/extension-collaboration" comes with its own history support and is not compatible with "@tiptap/extension-undo-redo".', - ) - } + onBeforeCreate() { // Initialize helpers with access to the editor this.storage.positionHelpers = { mapPositionFromTransaction: options => { @@ -149,6 +144,14 @@ export const Collaboration = Extension.create extension.name === 'undoRedo')) { + console.warn( + '[tiptap warn]: "@tiptap/extension-collaboration" comes with its own history support and is not compatible with "@tiptap/extension-undo-redo".', + ) + } + }, + addCommands() { return { undo: diff --git a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts index d7d8f7d2b6..41fc33dc57 100644 --- a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts +++ b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts @@ -2,7 +2,7 @@ import type { MapPositionFromTransactionOptions, MapPositionFromTransactionResul import { mapPositionFromTransaction as coreMapPositionFromTransaction } from '@tiptap/core' import { isChangeOrigin } from './isChangeOrigin.js' -import { getYAbsolutePosition } from './yRelativePosition.js' +import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' export function mapPositionFromTransaction( options: MapPositionFromTransactionOptions, @@ -10,11 +10,16 @@ export function mapPositionFromTransaction( const { transaction, state, yRelativePosition } = options if (isChangeOrigin(transaction)) { return { - newPosition: getYAbsolutePosition(state, yRelativePosition), + newPosition: yRelativePosition ? getYAbsolutePosition(state, yRelativePosition) : options.position, newYRelativePosition: yRelativePosition, mapResult: null, } } - return coreMapPositionFromTransaction(options) + const result = coreMapPositionFromTransaction(options) + return { + newPosition: result.newPosition, + newYRelativePosition: getYRelativePosition(state, result.newPosition), + mapResult: result.mapResult, + } } diff --git a/packages/extension-collaboration/src/helpers/yRelativeRange.ts b/packages/extension-collaboration/src/helpers/yRelativeRange.ts index a80706c974..7352b80abe 100644 --- a/packages/extension-collaboration/src/helpers/yRelativeRange.ts +++ b/packages/extension-collaboration/src/helpers/yRelativeRange.ts @@ -1,5 +1,5 @@ import type { Range, YRelativeRange } from '@tiptap/core' -import type { EditorState } from 'packages/pm/state/index.js' +import type { EditorState } from '@tiptap/pm/state' import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' From 90e1600f6044738ee460c2b9823c222c2fcbfcf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 16:54:01 +0100 Subject: [PATCH 485/629] chore: create a demo to showcase how to map positions --- .../React/index.html | 0 .../CollaborationMapPositions/React/index.tsx | 152 ++++++++++++++++++ .../React/styles.scss | 22 +++ 3 files changed, 174 insertions(+) create mode 100644 demos/src/Extensions/CollaborationMapPositions/React/index.html create mode 100644 demos/src/Extensions/CollaborationMapPositions/React/index.tsx create mode 100644 demos/src/Extensions/CollaborationMapPositions/React/styles.scss diff --git a/demos/src/Extensions/CollaborationMapPositions/React/index.html b/demos/src/Extensions/CollaborationMapPositions/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx new file mode 100644 index 0000000000..035cf6a23f --- /dev/null +++ b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx @@ -0,0 +1,152 @@ +import './styles.scss' + +import type { YRelativePosition } from '@tiptap/core' +import Collaboration from '@tiptap/extension-collaboration' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { Placeholder } from '@tiptap/extensions' +import type { Node } from '@tiptap/pm/model' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import { Decoration, DecorationSet } from '@tiptap/pm/view' +import { EditorContent, Extension, useEditor } from '@tiptap/react' +import { WebrtcProvider } from 'y-webrtc' +import * as Y from 'yjs' + +/** + * How decorations are stored in the plugin state. + */ +interface DecorationData { + position: number + yRelativePosition: YRelativePosition +} + +/** + * Creates a ProseMirror DecorationSet from a list of decoration data. + * @returns A ProseMirror DecorationSet + */ +function createDecorations(data: DecorationData[], doc: Node): DecorationSet { + return DecorationSet.create( + doc, + data.map(({ position }) => + Decoration.widget(position, () => { + const element = document.createElement('span') + element.classList.add('decoration') + return element + }), + ), + ) +} + +/** + * The state of the DecorationsExtension ProseMirror plugin. + */ +interface PluginState { + decorationData: DecorationData[] + decorations: DecorationSet +} + +const DecorationsPluginKey = new PluginKey('decorations') + +/** + * An extension that allows you to insert decorations into the editor. Inside + * its ProseMirror plugin, it keeps track of the decoration data and + * decorations. + */ +const DecorationsExtension = Extension.create({ + name: 'decorations', + addProseMirrorPlugins() { + const editor = this.editor + return [ + new Plugin({ + key: DecorationsPluginKey, + state: { + init: () => ({ + decorationData: [], + decorations: DecorationSet.empty, + }), + apply(transaction, pluginState, _oldState, newState) { + let decorationData = pluginState.decorationData + + // If the transaction changes the document, update the decoration + // positions + if (transaction.docChanged) { + decorationData = decorationData.map(data => { + const result = editor.positionHelpers.mapPositionFromTransaction({ + transaction, + position: data.position, + yRelativePosition: data.yRelativePosition, + }) + return { + position: result.newPosition, + yRelativePosition: result.newYRelativePosition, + } + }) + } + + // If the transaction adds a decoration, add it to the decoration data. + const metadata = transaction.getMeta(DecorationsPluginKey) as DecorationData | undefined + if (metadata) { + decorationData.push(metadata) + } + + return { + decorationData, + // Create new ProseMirror decorations in the positions determined + // by the decoration data. + decorations: createDecorations(decorationData, newState.doc), + } + }, + }, + props: { + decorations: state => DecorationsPluginKey.getState(state)?.decorations, + }, + }), + ] + }, +}) + +const ydoc = new Y.Doc() + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +const provider = new WebrtcProvider('tiptap-collaboration-extension', ydoc) + +export default () => { + const editor = useEditor({ + extensions: [ + Document, + Paragraph, + Text, + Collaboration.configure({ + document: ydoc, + }), + Placeholder.configure({ + placeholder: 'Write something … It’ll be shared with everyone else looking at this example.', + }), + DecorationsExtension, + ], + }) + + return ( + <> +
+ +
+ + + ) +} diff --git a/demos/src/Extensions/CollaborationMapPositions/React/styles.scss b/demos/src/Extensions/CollaborationMapPositions/React/styles.scss new file mode 100644 index 0000000000..1ee0a5a1d2 --- /dev/null +++ b/demos/src/Extensions/CollaborationMapPositions/React/styles.scss @@ -0,0 +1,22 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* Placeholder (at the top) */ + p.is-editor-empty:first-child::before { + color: var(--gray-4); + content: attr(data-placeholder); + float: left; + height: 0; + pointer-events: none; + } +} + +.decoration { + background-color: red; + display: inline-block; + width: 10px; + height: 10px; +} From 0553b6fccde42fcb2e30a4aca3577f2fc8d3cafc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 17:04:38 +0100 Subject: [PATCH 486/629] docs: add tsdoc comments --- packages/core/src/helpers/positionHelpers.ts | 27 +++++++++++-------- .../src/helpers/mapPositionFromTransaction.ts | 14 ++++++++-- .../src/helpers/mapRangeFromTransaction.ts | 4 +++ .../src/helpers/yRelativePosition.ts | 6 +++++ .../src/helpers/yRelativeRange.ts | 6 +++++ 5 files changed, 44 insertions(+), 13 deletions(-) diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts index f92b215a4b..944c76988b 100644 --- a/packages/core/src/helpers/positionHelpers.ts +++ b/packages/core/src/helpers/positionHelpers.ts @@ -101,22 +101,25 @@ export function mapRangeFromTransaction({ } } -const notImplementedError = new Error('Not implemented') +// The methods below are implemented by the Collaboration extension, +// if you try to call them without the Collaboration extension installed, +// an error will be thrown. +const missingCollabExtensionError = new Error('The Collaboration extension is not installed or initialized yet.') export function getYAbsolutePosition(): number { - throw notImplementedError + throw missingCollabExtensionError } export function getYRelativePosition(): YRelativePosition { - throw notImplementedError + throw missingCollabExtensionError } export function getYAbsoluteRange(): Range { - throw notImplementedError + throw missingCollabExtensionError } export function getYRelativeRange(): YRelativeRange { - throw notImplementedError + throw missingCollabExtensionError } /** @@ -124,36 +127,38 @@ export function getYRelativeRange(): YRelativeRange { */ export interface PositionHelpers { /** - * Maps a position from a transaction, handling both Yjs changes and regular transactions. + * Returns the new position after applying a transaction. Handles both Y.js + * transactions and regular transactions. */ mapPositionFromTransaction: ( options: WithOptionalProperties, ) => MapPositionFromTransactionResult /** - * Maps a range from a transaction, handling both Yjs changes and regular transactions. + * Returns the new Range after applying a transaction. Handles both Y.js + * transactions and regular transactions. */ mapRangeFromTransaction: ( options: WithOptionalProperties, ) => MapRangeFromTransactionResult /** - * Converts a Y.js relative position to an absolute position in the editor. + * Converts a Y.js relative position to a position in the editor. */ getYAbsolutePosition: (relativePos: YRelativePosition) => number /** - * Converts an absolute position in the editor to a Y.js relative position. + * Converts a position in the editor to a Y.js relative position. */ getYRelativePosition: (absolutePos: number) => YRelativePosition /** - * Converts a Y.js relative range to an absolute range in the editor. + * Converts a Y.js relative range to a Range in the editor. */ getYAbsoluteRange: (yRelativeRange: YRelativeRange) => Range /** - * Converts an absolute range in the editor to a Y.js relative range. + * Converts a Range in the editor to a Y.js relative range. */ getYRelativeRange: (absoluteRange: Range) => YRelativeRange } diff --git a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts index 41fc33dc57..ae91740e1a 100644 --- a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts +++ b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts @@ -4,14 +4,24 @@ import { mapPositionFromTransaction as coreMapPositionFromTransaction } from '@t import { isChangeOrigin } from './isChangeOrigin.js' import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' +/** + * Returns the new position after applying a transaction. Handles both Y.js + * transactions and regular transactions. + */ export function mapPositionFromTransaction( options: MapPositionFromTransactionOptions, ): MapPositionFromTransactionResult { const { transaction, state, yRelativePosition } = options if (isChangeOrigin(transaction)) { + /** + * If there is no yRelativePosition that we can use to get the new position, + * we'll use this position as a fallback. + */ + const fallbackPosition = Math.min(options.position, state.doc.content.size) + return { - newPosition: yRelativePosition ? getYAbsolutePosition(state, yRelativePosition) : options.position, - newYRelativePosition: yRelativePosition, + newPosition: yRelativePosition ? getYAbsolutePosition(state, yRelativePosition) : fallbackPosition, + newYRelativePosition: yRelativePosition ?? getYRelativePosition(state, fallbackPosition), mapResult: null, } } diff --git a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts index 22b75659aa..17bfee91b0 100644 --- a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts +++ b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts @@ -2,6 +2,10 @@ import type { MapRangeFromTransactionOptions, MapRangeFromTransactionResult } fr import { mapPositionFromTransaction } from './mapPositionFromTransaction.js' +/** + * Returns the new Range after applying a transaction. Handles both Y.js + * transactions and regular transactions. + */ export function mapRangeFromTransaction(options: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { const { range, yRelativeRange } = options const fromResult = mapPositionFromTransaction({ diff --git a/packages/extension-collaboration/src/helpers/yRelativePosition.ts b/packages/extension-collaboration/src/helpers/yRelativePosition.ts index 59eb5e14c5..f2dc85b654 100644 --- a/packages/extension-collaboration/src/helpers/yRelativePosition.ts +++ b/packages/extension-collaboration/src/helpers/yRelativePosition.ts @@ -6,11 +6,17 @@ import { ySyncPluginKey, } from '@tiptap/y-tiptap' +/** + * Converts a Y.js relative position to a position in the Tiptap document. + */ export function getYAbsolutePosition(state: EditorState, relativePos: YRelativePosition) { const ystate = ySyncPluginKey.getState(state) return relativePositionToAbsolutePosition(ystate.doc, ystate.type, relativePos, ystate.binding.mapping) || 0 } +/** + * Converts a position in the Tiptap document to a Y.js relative position. + */ export function getYRelativePosition(state: EditorState, absolutePos: number): YRelativePosition { const ystate = ySyncPluginKey.getState(state) return absolutePositionToRelativePosition(absolutePos, ystate.type, ystate.binding.mapping) diff --git a/packages/extension-collaboration/src/helpers/yRelativeRange.ts b/packages/extension-collaboration/src/helpers/yRelativeRange.ts index 7352b80abe..508335a95d 100644 --- a/packages/extension-collaboration/src/helpers/yRelativeRange.ts +++ b/packages/extension-collaboration/src/helpers/yRelativeRange.ts @@ -3,6 +3,9 @@ import type { EditorState } from '@tiptap/pm/state' import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' +/** + * Converts a Y.js relative range to a Range in the Tiptap document. + */ export function getYAbsoluteRange(state: EditorState, yRelativeRange: YRelativeRange): Range { return { from: getYAbsolutePosition(state, yRelativeRange.from), @@ -10,6 +13,9 @@ export function getYAbsoluteRange(state: EditorState, yRelativeRange: YRelativeR } } +/** + * Converts a Range in the Tiptap document to a Y.js relative range. + */ export function getYRelativeRange(state: EditorState, absoluteRange: Range): YRelativeRange { return { from: getYRelativePosition(state, absoluteRange.from), From 477ea64e40ecf04f6ce11cecf6e6573d927801e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 17:23:59 +0100 Subject: [PATCH 487/629] fix: types error --- packages/core/src/Editor.ts | 2 +- packages/core/src/helpers/positionHelpers.ts | 2 +- .../src/collaboration.ts | 43 +++---------------- .../src/helpers/getPositionHelpers.ts | 36 ++++++++++++++++ .../src/helpers/mapRangeFromTransaction.ts | 2 + 5 files changed, 45 insertions(+), 40 deletions(-) create mode 100644 packages/extension-collaboration/src/helpers/getPositionHelpers.ts diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 51330e9151..cab9fccb55 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -785,7 +785,7 @@ export class Editor extends EventEmitter { public get positionHelpers(): PositionHelpers { return ( - this.storage.collaboration?.positionHelpers ?? { + (this.storage as any).collaboration?.getPositionHelpers(this) ?? { mapPositionFromTransaction: options => { return mapPositionFromTransaction({ state: this.state, diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts index 944c76988b..e28017ef20 100644 --- a/packages/core/src/helpers/positionHelpers.ts +++ b/packages/core/src/helpers/positionHelpers.ts @@ -104,7 +104,7 @@ export function mapRangeFromTransaction({ // The methods below are implemented by the Collaboration extension, // if you try to call them without the Collaboration extension installed, // an error will be thrown. -const missingCollabExtensionError = new Error('The Collaboration extension is not installed or initialized yet.') +const missingCollabExtensionError = new Error('Collaboration extension not installed') export function getYAbsolutePosition(): number { throw missingCollabExtensionError diff --git a/packages/extension-collaboration/src/collaboration.ts b/packages/extension-collaboration/src/collaboration.ts index c528bbbd1a..be73e44087 100644 --- a/packages/extension-collaboration/src/collaboration.ts +++ b/packages/extension-collaboration/src/collaboration.ts @@ -1,14 +1,11 @@ -import type { PositionHelpers } from '@tiptap/core' +import type { Editor, PositionHelpers } from '@tiptap/core' import { Extension } from '@tiptap/core' import { Plugin, PluginKey } from '@tiptap/pm/state' import type { EditorView } from '@tiptap/pm/view' import { redo, undo, ySyncPlugin, yUndoPlugin, yUndoPluginKey, yXmlFragmentToProsemirrorJSON } from '@tiptap/y-tiptap' import type { Doc, UndoManager, XmlFragment } from 'yjs' -import { mapPositionFromTransaction } from './helpers/mapPositionFromTransaction.js' -import { mapRangeFromTransaction } from './helpers/mapRangeFromTransaction.js' -import { getYAbsolutePosition, getYRelativePosition } from './helpers/yRelativePosition.js' -import { getYAbsoluteRange, getYRelativeRange } from './helpers/yRelativeRange.js' +import { getPositionHelpers } from './helpers/getPositionHelpers.js' type YSyncOpts = Parameters[1] type YUndoOpts = Parameters[0] @@ -21,9 +18,9 @@ export interface CollaborationStorage { isDisabled: boolean /** - * Helper methods for working with Y.js positions and ranges. + * Get helper methods for working with Y.js positions and ranges. */ - positionHelpers: PositionHelpers | null + getPositionHelpers: (editor: Editor) => PositionHelpers } declare module '@tiptap/core' { @@ -110,37 +107,7 @@ export const Collaboration = Extension.create { - return mapPositionFromTransaction({ - ...options, - state: this.editor.state, - }) - }, - mapRangeFromTransaction: options => { - return mapRangeFromTransaction({ - ...options, - state: this.editor.state, - }) - }, - getYAbsolutePosition: relativePos => { - return getYAbsolutePosition(this.editor.state, relativePos) - }, - getYRelativePosition: absolutePos => { - return getYRelativePosition(this.editor.state, absolutePos) - }, - getYAbsoluteRange: yRelativeRange => { - return getYAbsoluteRange(this.editor.state, yRelativeRange) - }, - getYRelativeRange: absoluteRange => { - return getYRelativeRange(this.editor.state, absoluteRange) - }, + getPositionHelpers, } }, diff --git a/packages/extension-collaboration/src/helpers/getPositionHelpers.ts b/packages/extension-collaboration/src/helpers/getPositionHelpers.ts new file mode 100644 index 0000000000..a389312e6d --- /dev/null +++ b/packages/extension-collaboration/src/helpers/getPositionHelpers.ts @@ -0,0 +1,36 @@ +import type { Editor, PositionHelpers } from '@tiptap/core' + +import { mapPositionFromTransaction } from './mapPositionFromTransaction.js' +import { mapRangeFromTransaction } from './mapRangeFromTransaction.js' +import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' +import { getYAbsoluteRange, getYRelativeRange } from './yRelativeRange.js' + +export function getPositionHelpers(editor: Editor): PositionHelpers { + const { state } = editor + return { + mapPositionFromTransaction: options => { + return mapPositionFromTransaction({ + ...options, + state, + }) + }, + mapRangeFromTransaction: options => { + return mapRangeFromTransaction({ + ...options, + state, + }) + }, + getYAbsolutePosition: relativePos => { + return getYAbsolutePosition(state, relativePos) + }, + getYRelativePosition: absolutePos => { + return getYRelativePosition(state, absolutePos) + }, + getYAbsoluteRange: yRelativeRange => { + return getYAbsoluteRange(state, yRelativeRange) + }, + getYRelativeRange: absoluteRange => { + return getYRelativeRange(state, absoluteRange) + }, + } +} diff --git a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts index 17bfee91b0..8842e87476 100644 --- a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts +++ b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts @@ -8,6 +8,7 @@ import { mapPositionFromTransaction } from './mapPositionFromTransaction.js' */ export function mapRangeFromTransaction(options: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { const { range, yRelativeRange } = options + const fromResult = mapPositionFromTransaction({ ...options, position: range.from, @@ -18,6 +19,7 @@ export function mapRangeFromTransaction(options: MapRangeFromTransactionOptions) position: range.to, yRelativePosition: yRelativeRange.to, }) + return { newRange: { from: fromResult.newPosition, From 3e828cf1253eb7ae328ccd61097742a0aebfd19c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 17:26:47 +0100 Subject: [PATCH 488/629] chore: format --- .../Extensions/CollaborationMapPositions/React/index.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx index 035cf6a23f..3a3bc9fd85 100644 --- a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx +++ b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx @@ -71,11 +71,11 @@ const DecorationsExtension = Extension.create({ // If the transaction changes the document, update the decoration // positions if (transaction.docChanged) { - decorationData = decorationData.map(data => { + decorationData = decorationData.map(({ position, yRelativePosition }) => { const result = editor.positionHelpers.mapPositionFromTransaction({ transaction, - position: data.position, - yRelativePosition: data.yRelativePosition, + position, + yRelativePosition, }) return { position: result.newPosition, From f232c5a7d92840992857f924ebc8d9e9ab9b1b01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 17:44:19 +0100 Subject: [PATCH 489/629] chore: changeset --- .changeset/bright-walls-wash.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .changeset/bright-walls-wash.md diff --git a/.changeset/bright-walls-wash.md b/.changeset/bright-walls-wash.md new file mode 100644 index 0000000000..12e4866326 --- /dev/null +++ b/.changeset/bright-walls-wash.md @@ -0,0 +1,16 @@ +--- +'@tiptap/extension-collaboration': minor +'@tiptap/core': minor +'tiptap-demos': minor +--- + +Create utility to update a position after a transaction. Fixes a bug where the positions were not correctly updated after a transaction when the editor had real-time collaboration enabled. + +- Create `editor.positionHelpers` property that returns a `PositionHelpers` object with the following methods: + - `mapPositionFromTransaction` + - `mapRangeFromTransaction` + - `getYAbsolutePosition` + - `getYRelativePosition` + - `getYAbsoluteRange` + - `getYRelativeRange` +- Create demo that showcases how to update a position after a transaction in a collaborative editor. \ No newline at end of file From 84b7eec63b1341b672f8ff1f548066f18acd422a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 10 Nov 2025 17:47:30 +0100 Subject: [PATCH 490/629] feat: make position helpers more resilient to errors --- packages/core/src/helpers/positionHelpers.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts index e28017ef20..8b52940ad4 100644 --- a/packages/core/src/helpers/positionHelpers.ts +++ b/packages/core/src/helpers/positionHelpers.ts @@ -7,6 +7,8 @@ type WithOptionalProperties = Pick, K> & Omit Date: Mon, 10 Nov 2025 18:54:09 +0100 Subject: [PATCH 491/629] Apply suggestion from @Copilot Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/bright-walls-wash.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/bright-walls-wash.md b/.changeset/bright-walls-wash.md index 12e4866326..ec894bc1bc 100644 --- a/.changeset/bright-walls-wash.md +++ b/.changeset/bright-walls-wash.md @@ -4,7 +4,7 @@ 'tiptap-demos': minor --- -Create utility to update a position after a transaction. Fixes a bug where the positions were not correctly updated after a transaction when the editor had real-time collaboration enabled. +Create utilities to update a position after a transaction. Fixes a bug where positions were not correctly updated after a transaction when the editor had real-time collaboration enabled. - Create `editor.positionHelpers` property that returns a `PositionHelpers` object with the following methods: - `mapPositionFromTransaction` From 32eb2e8938834353c9b2734e5cae61d9721d7a47 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 11 Nov 2025 00:28:30 +0100 Subject: [PATCH 492/629] fix: resolve YouTube extension blocking subsequent content in static renderer (#7205) --- ...tube-rendering-stops-sunny-ocean-breeze.md | 5 +++ packages/extension-youtube/src/youtube.ts | 1 + .../static-renderer/json-string.spec.ts | 32 +++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 .changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md diff --git a/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md b/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md new file mode 100644 index 0000000000..3fc46ef6fe --- /dev/null +++ b/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-youtube': patch +--- + +Fix static HTML renderer not rendering content after YouTube embeds. diff --git a/packages/extension-youtube/src/youtube.ts b/packages/extension-youtube/src/youtube.ts index c261ae382f..8b02388924 100644 --- a/packages/extension-youtube/src/youtube.ts +++ b/packages/extension-youtube/src/youtube.ts @@ -331,6 +331,7 @@ export const Youtube = Node.create({ }, HTMLAttributes, ), + 0, ], ] }, diff --git a/tests/cypress/integration/static-renderer/json-string.spec.ts b/tests/cypress/integration/static-renderer/json-string.spec.ts index 6fb6dabea1..9ea062d450 100644 --- a/tests/cypress/integration/static-renderer/json-string.spec.ts +++ b/tests/cypress/integration/static-renderer/json-string.spec.ts @@ -5,6 +5,7 @@ import Bold from '@tiptap/extension-bold' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import Youtube from '@tiptap/extension-youtube' import { Mark, Node } from '@tiptap/pm/model' import { renderJSONContentToString, serializeChildrenToHTMLString } from '@tiptap/static-renderer/json/html-string' import { renderToHTMLString } from '@tiptap/static-renderer/pm/html-string' @@ -293,4 +294,35 @@ describe('static render json to string (with prosemirror)', () => { expect(html).to.eq('

Example Text

') }) + + it('renders youtube extension followed by other nodes correctly', () => { + const json = { + type: 'doc', + content: [ + { + type: 'youtube', + attrs: { + src: 'https://www.youtube.com/watch?v=3lTUAWOgoHs', + }, + }, + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'text after youtube', + }, + ], + }, + ], + } + + const html = renderToHTMLString({ + content: json, + extensions: [Document, Paragraph, Text, Youtube], + }) + + expect(html).to.include('data-youtube-video') + expect(html).to.include('

text after youtube

') + }) }) From 144416f3b584f067577c98410e1f93c4ae94c17e Mon Sep 17 00:00:00 2001 From: bdbch Date: Tue, 11 Nov 2025 01:30:52 +0100 Subject: [PATCH 493/629] fix: prevent static renderer from generating invalid self-closing tags for iframe and other elements The static renderer was incorrectly generating self-closing tags (). --- .../fix-youtube-rendering-stops-sunny-ocean-breeze.md | 4 ++-- packages/extension-youtube/src/youtube.ts | 1 - .../static-renderer/src/pm/html-string/html-string.ts | 9 +++++++++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md b/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md index 3fc46ef6fe..593a9d75ee 100644 --- a/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md +++ b/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md @@ -1,5 +1,5 @@ --- -'@tiptap/extension-youtube': patch +'@tiptap/static-renderer': patch --- -Fix static HTML renderer not rendering content after YouTube embeds. +Fix static HTML renderer incorrectly generating self-closing tags for HTML elements that require proper closing tags (iframe, script, style, etc.). diff --git a/packages/extension-youtube/src/youtube.ts b/packages/extension-youtube/src/youtube.ts index 8b02388924..c261ae382f 100644 --- a/packages/extension-youtube/src/youtube.ts +++ b/packages/extension-youtube/src/youtube.ts @@ -331,7 +331,6 @@ export const Youtube = Node.create({ }, HTMLAttributes, ), - 0, ], ] }, diff --git a/packages/static-renderer/src/pm/html-string/html-string.ts b/packages/static-renderer/src/pm/html-string/html-string.ts index d4e63fb4ab..0b8f804a07 100644 --- a/packages/static-renderer/src/pm/html-string/html-string.ts +++ b/packages/static-renderer/src/pm/html-string/html-string.ts @@ -12,6 +12,12 @@ import { renderToElement } from '../extensionRenderer.js' export { serializeAttrsToHTMLString, serializeChildrenToHTMLString } from '../../json/html-string/string.js' +/** + * HTML elements that cannot be self-closing and must always have a closing tag. + * These elements must be rendered as even when empty, not . + */ +const NON_SELF_CLOSING_TAGS = new Set(['iframe', 'script', 'style', 'title', 'textarea', 'div', 'span', 'a', 'button']) + /** * Take a DOMOutputSpec and return a function that can render it to a string * @param content The DOMOutputSpec to convert to a string @@ -50,6 +56,9 @@ export function domOutputSpecToHTMLString(content: DOMOutputSpec): (children?: s .map(a => domOutputSpecToHTMLString(a)(child))}` } if (children === undefined) { + if (NON_SELF_CLOSING_TAGS.has(tag)) { + return () => `<${tag}${serializeAttrsToHTMLString(attrs)}>` + } return () => `<${tag}${serializeAttrsToHTMLString(attrs)}/>` } if (children === 0) { From fd479bd6dba11c7f34cfe6c45eab7de7089912ad Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 11 Nov 2025 02:02:01 +0100 Subject: [PATCH 494/629] fix: ensure updateAttributes and resetAttributes return false when no matching nodes exist (#7206) Previously, updateAttributes and resetAttributes always returned true, making .can() checks unreliable. These commands now correctly return false when no matching nodes or marks are found in the selection. The text-align extension was updated to use .some() instead of .every() to properly work with the fixed commands across multiple configured node types. --- ...text-align-can-check-bright-moon-forest.md | 5 + ...ttributes-return-value-blue-sky-thunder.md | 5 + packages/core/src/commands/resetAttributes.ts | 32 +++-- .../core/src/commands/updateAttributes.ts | 126 ++++++++++-------- .../extension-text-align/src/text-align.ts | 4 +- 5 files changed, 100 insertions(+), 72 deletions(-) create mode 100644 .changeset/fix-text-align-can-check-bright-moon-forest.md create mode 100644 .changeset/fix-update-reset-attributes-return-value-blue-sky-thunder.md diff --git a/.changeset/fix-text-align-can-check-bright-moon-forest.md b/.changeset/fix-text-align-can-check-bright-moon-forest.md new file mode 100644 index 0000000000..921fd23422 --- /dev/null +++ b/.changeset/fix-text-align-can-check-bright-moon-forest.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-text-align": patch +--- + +Fix `setTextAlign` and `unsetTextAlign` commands to work correctly with `.can()` checks. Changed logic from `.every()` to `.some()` to return `true` when at least one configured node type matches, rather than requiring all types to match. diff --git a/.changeset/fix-update-reset-attributes-return-value-blue-sky-thunder.md b/.changeset/fix-update-reset-attributes-return-value-blue-sky-thunder.md new file mode 100644 index 0000000000..f22c78fb32 --- /dev/null +++ b/.changeset/fix-update-reset-attributes-return-value-blue-sky-thunder.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": patch +--- + +Fix `updateAttributes` and `resetAttributes` commands to return accurate results when used with `.can()`. Previously, these commands would always return `true` even when they couldn't perform the operation. Now they correctly return `false` when no matching nodes or marks are found in the selection. diff --git a/packages/core/src/commands/resetAttributes.ts b/packages/core/src/commands/resetAttributes.ts index 783d44b860..05c56e66a9 100644 --- a/packages/core/src/commands/resetAttributes.ts +++ b/packages/core/src/commands/resetAttributes.ts @@ -43,23 +43,31 @@ export const resetAttributes: RawCommands['resetAttributes'] = markType = getMarkType(typeOrName as MarkType, state.schema) } - if (dispatch) { - tr.selection.ranges.forEach(range => { - state.doc.nodesBetween(range.$from.pos, range.$to.pos, (node, pos) => { - if (nodeType && nodeType === node.type) { + let canReset = false + + tr.selection.ranges.forEach(range => { + state.doc.nodesBetween(range.$from.pos, range.$to.pos, (node, pos) => { + if (nodeType && nodeType === node.type) { + canReset = true + + if (dispatch) { tr.setNodeMarkup(pos, undefined, deleteProps(node.attrs, attributes)) } + } + + if (markType && node.marks.length) { + node.marks.forEach(mark => { + if (markType === mark.type) { + canReset = true - if (markType && node.marks.length) { - node.marks.forEach(mark => { - if (markType === mark.type) { + if (dispatch) { tr.addMark(pos, pos + node.nodeSize, markType.create(deleteProps(mark.attrs, attributes))) } - }) - } - }) + } + }) + } }) - } + }) - return true + return canReset } diff --git a/packages/core/src/commands/updateAttributes.ts b/packages/core/src/commands/updateAttributes.ts index 7fe805758c..a488065613 100644 --- a/packages/core/src/commands/updateAttributes.ts +++ b/packages/core/src/commands/updateAttributes.ts @@ -53,45 +53,55 @@ export const updateAttributes: RawCommands['updateAttributes'] = markType = getMarkType(typeOrName as MarkType, state.schema) } - if (dispatch) { - tr.selection.ranges.forEach((range: SelectionRange) => { - const from = range.$from.pos - const to = range.$to.pos - - let lastPos: number | undefined - let lastNode: Node | undefined - let trimmedFrom: number - let trimmedTo: number - - if (tr.selection.empty) { - state.doc.nodesBetween(from, to, (node: Node, pos: number) => { + let canUpdate = false + + tr.selection.ranges.forEach((range: SelectionRange) => { + const from = range.$from.pos + const to = range.$to.pos + + let lastPos: number | undefined + let lastNode: Node | undefined + let trimmedFrom: number + let trimmedTo: number + + if (tr.selection.empty) { + state.doc.nodesBetween(from, to, (node: Node, pos: number) => { + if (nodeType && nodeType === node.type) { + canUpdate = true + trimmedFrom = Math.max(pos, from) + trimmedTo = Math.min(pos + node.nodeSize, to) + lastPos = pos + lastNode = node + } + }) + } else { + state.doc.nodesBetween(from, to, (node: Node, pos: number) => { + if (pos < from && nodeType && nodeType === node.type) { + canUpdate = true + trimmedFrom = Math.max(pos, from) + trimmedTo = Math.min(pos + node.nodeSize, to) + lastPos = pos + lastNode = node + } + + if (pos >= from && pos <= to) { if (nodeType && nodeType === node.type) { - trimmedFrom = Math.max(pos, from) - trimmedTo = Math.min(pos + node.nodeSize, to) - lastPos = pos - lastNode = node - } - }) - } else { - state.doc.nodesBetween(from, to, (node: Node, pos: number) => { - if (pos < from && nodeType && nodeType === node.type) { - trimmedFrom = Math.max(pos, from) - trimmedTo = Math.min(pos + node.nodeSize, to) - lastPos = pos - lastNode = node - } + canUpdate = true - if (pos >= from && pos <= to) { - if (nodeType && nodeType === node.type) { + if (dispatch) { tr.setNodeMarkup(pos, undefined, { ...node.attrs, ...attributes, }) } + } + + if (markType && node.marks.length) { + node.marks.forEach((mark: Mark) => { + if (markType === mark.type) { + canUpdate = true - if (markType && node.marks.length) { - node.marks.forEach((mark: Mark) => { - if (markType === mark.type) { + if (dispatch) { const trimmedFrom2 = Math.max(pos, from) const trimmedTo2 = Math.min(pos + node.nodeSize, to) @@ -104,37 +114,37 @@ export const updateAttributes: RawCommands['updateAttributes'] = }), ) } - }) - } + } + }) } + } + }) + } + + if (lastNode) { + if (lastPos !== undefined && dispatch) { + tr.setNodeMarkup(lastPos, undefined, { + ...lastNode.attrs, + ...attributes, }) } - if (lastNode) { - if (lastPos !== undefined) { - tr.setNodeMarkup(lastPos, undefined, { - ...lastNode.attrs, - ...attributes, - }) - } - - if (markType && lastNode.marks.length) { - lastNode.marks.forEach((mark: Mark) => { - if (markType === mark.type) { - tr.addMark( - trimmedFrom, - trimmedTo, - markType.create({ - ...mark.attrs, - ...attributes, - }), - ) - } - }) - } + if (markType && lastNode.marks.length) { + lastNode.marks.forEach((mark: Mark) => { + if (markType === mark.type && dispatch) { + tr.addMark( + trimmedFrom, + trimmedTo, + markType.create({ + ...mark.attrs, + ...attributes, + }), + ) + } + }) } - }) - } + } + }) - return true + return canUpdate } diff --git a/packages/extension-text-align/src/text-align.ts b/packages/extension-text-align/src/text-align.ts index e9a0e0b939..124cc1e106 100644 --- a/packages/extension-text-align/src/text-align.ts +++ b/packages/extension-text-align/src/text-align.ts @@ -98,13 +98,13 @@ export const TextAlign = Extension.create({ return this.options.types .map(type => commands.updateAttributes(type, { textAlign: alignment })) - .every(response => response) + .some(response => response) }, unsetTextAlign: () => ({ commands }) => { - return this.options.types.map(type => commands.resetAttributes(type, 'textAlign')).every(response => response) + return this.options.types.map(type => commands.resetAttributes(type, 'textAlign')).some(response => response) }, toggleTextAlign: From 07394274fb3cb265e132b122959eaae48a755c39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Tue, 11 Nov 2025 13:50:58 +0100 Subject: [PATCH 495/629] Update packages/core/src/helpers/positionHelpers.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- packages/core/src/helpers/positionHelpers.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts index 8b52940ad4..68bd4009f5 100644 --- a/packages/core/src/helpers/positionHelpers.ts +++ b/packages/core/src/helpers/positionHelpers.ts @@ -113,7 +113,7 @@ export function getYAbsolutePosition(): number { } export function getYRelativePosition(): YRelativePosition { - return null + throw missingCollabExtensionError } export function getYAbsoluteRange(): Range { From 88eac1b45fee409f46297f2643797b31fcc236ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Tue, 11 Nov 2025 13:51:07 +0100 Subject: [PATCH 496/629] Update packages/core/src/helpers/positionHelpers.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- packages/core/src/helpers/positionHelpers.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts index 68bd4009f5..385c0793df 100644 --- a/packages/core/src/helpers/positionHelpers.ts +++ b/packages/core/src/helpers/positionHelpers.ts @@ -121,10 +121,7 @@ export function getYAbsoluteRange(): Range { } export function getYRelativeRange(): YRelativeRange { - return { - from: null, - to: null, - } + throw missingCollabExtensionError } /** From 5d7c160c5440a240a4a26fa3d22868c247068fe8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Tue, 11 Nov 2025 14:03:33 +0100 Subject: [PATCH 497/629] fix: copilot suggestions --- .../CollaborationMapPositions/React/index.tsx | 8 ++++++-- packages/core/src/Editor.ts | 7 +++++++ packages/core/src/helpers/positionHelpers.ts | 16 ++++++++++++++-- .../src/helpers/yRelativePosition.ts | 4 +++- 4 files changed, 30 insertions(+), 5 deletions(-) diff --git a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx index 3a3bc9fd85..ef69029005 100644 --- a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx +++ b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx @@ -108,8 +108,8 @@ const DecorationsExtension = Extension.create({ const ydoc = new Y.Doc() -// eslint-disable-next-line @typescript-eslint/no-unused-vars -const provider = new WebrtcProvider('tiptap-collaboration-extension', ydoc) +// eslint-disable-next-line no-new +new WebrtcProvider('tiptap-collaboration-extension', ydoc) export default () => { const editor = useEditor({ @@ -127,6 +127,10 @@ export default () => { ], }) + if (!editor) { + return null + } + return ( <>
diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index cab9fccb55..e2972254ff 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -783,6 +783,13 @@ export class Editor extends EventEmitter { return this.$pos(0) } + /** + * Returns a set of utilities for working with positions and ranges. These + * utilities let you calculate the new position or range after applying a + * transaction. + * + * @returns The position helpers. + */ public get positionHelpers(): PositionHelpers { return ( (this.storage as any).collaboration?.getPositionHelpers(this) ?? { diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts index 385c0793df..de7c36ff06 100644 --- a/packages/core/src/helpers/positionHelpers.ts +++ b/packages/core/src/helpers/positionHelpers.ts @@ -47,7 +47,7 @@ export interface MapRangeFromTransactionOptions { transaction: Transaction state: EditorState range: Range - yRelativeRange: YRelativePosition + yRelativeRange: YRelativeRange } /** @@ -55,11 +55,17 @@ export interface MapRangeFromTransactionOptions { */ export interface MapRangeFromTransactionResult { newRange: Range - newYRelativeRange: YRelativePosition + newYRelativeRange: YRelativeRange mapResultFrom: MapResult | null mapResultTo: MapResult | null } +/** + * Calculates the new position after applying a transaction. Handles both Y.js + * transactions and regular transactions. + * + * @returns The new position, the Y.js relative position, and the map result. + */ export function mapPositionFromTransaction({ transaction, position, @@ -73,6 +79,12 @@ export function mapPositionFromTransaction({ } } +/** + * Calculates the new range after applying a transaction. Handles both Y.js + * transactions and regular transactions. + * + * @returns The new range, the Y.js relative range, and the map results. + */ export function mapRangeFromTransaction({ range, yRelativeRange, diff --git a/packages/extension-collaboration/src/helpers/yRelativePosition.ts b/packages/extension-collaboration/src/helpers/yRelativePosition.ts index f2dc85b654..8dac5d518c 100644 --- a/packages/extension-collaboration/src/helpers/yRelativePosition.ts +++ b/packages/extension-collaboration/src/helpers/yRelativePosition.ts @@ -9,7 +9,8 @@ import { /** * Converts a Y.js relative position to a position in the Tiptap document. */ -export function getYAbsolutePosition(state: EditorState, relativePos: YRelativePosition) { +export function getYAbsolutePosition(state: EditorState, relativePos: YRelativePosition): number { + // ystate is never null because we've checked it before calling this function const ystate = ySyncPluginKey.getState(state) return relativePositionToAbsolutePosition(ystate.doc, ystate.type, relativePos, ystate.binding.mapping) || 0 } @@ -18,6 +19,7 @@ export function getYAbsolutePosition(state: EditorState, relativePos: YRelativeP * Converts a position in the Tiptap document to a Y.js relative position. */ export function getYRelativePosition(state: EditorState, absolutePos: number): YRelativePosition { + // ystate is never null because we've checked it before calling this function const ystate = ySyncPluginKey.getState(state) return absolutePositionToRelativePosition(absolutePos, ystate.type, ystate.binding.mapping) } From e585797319388cfeb28e6a101b1949c26005c514 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Tue, 11 Nov 2025 15:08:32 +0100 Subject: [PATCH 498/629] feat: simplify method names --- .../src/Extensions/CollaborationMapPositions/React/index.tsx | 2 +- packages/core/src/Editor.ts | 4 ++-- packages/core/src/helpers/positionHelpers.ts | 4 ++-- .../extension-collaboration/src/helpers/getPositionHelpers.ts | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx index ef69029005..bc5662fe38 100644 --- a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx +++ b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx @@ -72,7 +72,7 @@ const DecorationsExtension = Extension.create({ // positions if (transaction.docChanged) { decorationData = decorationData.map(({ position, yRelativePosition }) => { - const result = editor.positionHelpers.mapPositionFromTransaction({ + const result = editor.positionHelpers.getUpdatedPosition({ transaction, position, yRelativePosition, diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index e2972254ff..afd9442c9a 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -793,13 +793,13 @@ export class Editor extends EventEmitter { public get positionHelpers(): PositionHelpers { return ( (this.storage as any).collaboration?.getPositionHelpers(this) ?? { - mapPositionFromTransaction: options => { + getUpdatedPosition: options => { return mapPositionFromTransaction({ state: this.state, ...options, }) }, - mapRangeFromTransaction: options => { + getUpdatedRange: options => { return mapRangeFromTransaction({ state: this.state, ...options, diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts index de7c36ff06..48173a15c1 100644 --- a/packages/core/src/helpers/positionHelpers.ts +++ b/packages/core/src/helpers/positionHelpers.ts @@ -144,7 +144,7 @@ export interface PositionHelpers { * Returns the new position after applying a transaction. Handles both Y.js * transactions and regular transactions. */ - mapPositionFromTransaction: ( + getUpdatedPosition: ( options: WithOptionalProperties, ) => MapPositionFromTransactionResult @@ -152,7 +152,7 @@ export interface PositionHelpers { * Returns the new Range after applying a transaction. Handles both Y.js * transactions and regular transactions. */ - mapRangeFromTransaction: ( + getUpdatedRange: ( options: WithOptionalProperties, ) => MapRangeFromTransactionResult diff --git a/packages/extension-collaboration/src/helpers/getPositionHelpers.ts b/packages/extension-collaboration/src/helpers/getPositionHelpers.ts index a389312e6d..afdc6a3f7d 100644 --- a/packages/extension-collaboration/src/helpers/getPositionHelpers.ts +++ b/packages/extension-collaboration/src/helpers/getPositionHelpers.ts @@ -8,13 +8,13 @@ import { getYAbsoluteRange, getYRelativeRange } from './yRelativeRange.js' export function getPositionHelpers(editor: Editor): PositionHelpers { const { state } = editor return { - mapPositionFromTransaction: options => { + getUpdatedPosition: options => { return mapPositionFromTransaction({ ...options, state, }) }, - mapRangeFromTransaction: options => { + getUpdatedRange: options => { return mapRangeFromTransaction({ ...options, state, From f75fec6f8680ed4196372ee16bee4b3ff1db28d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Tue, 11 Nov 2025 15:10:24 +0100 Subject: [PATCH 499/629] chore: rename methods --- .changeset/bright-walls-wash.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.changeset/bright-walls-wash.md b/.changeset/bright-walls-wash.md index ec894bc1bc..d8b85c6383 100644 --- a/.changeset/bright-walls-wash.md +++ b/.changeset/bright-walls-wash.md @@ -7,8 +7,8 @@ Create utilities to update a position after a transaction. Fixes a bug where positions were not correctly updated after a transaction when the editor had real-time collaboration enabled. - Create `editor.positionHelpers` property that returns a `PositionHelpers` object with the following methods: - - `mapPositionFromTransaction` - - `mapRangeFromTransaction` + - `getUpdatedPosition` + - `getUpdatedRange` - `getYAbsolutePosition` - `getYRelativePosition` - `getYAbsoluteRange` From ed6d7c89ce5eeeab00bef34d24d0acc3899c916e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Wed, 12 Nov 2025 12:54:25 +0100 Subject: [PATCH 500/629] Migrate TypeScript module resolution from `node` to `nodenext` (#7212) * Update CHANGELOG and various package files for enhancements and bug fixes. Notable changes include the addition of a new `@tiptap/markdown` package for comprehensive Markdown support, improvements to TypeScript typings, and security updates. Adjustments made to demo styles for consistency, and various imports updated to use the new module resolution strategy. Fixes include better handling of table column widths and improvements to the `BubbleMenu` extension. Additionally, several utility functions and types have been refined for better performance and usability. * chore: changeset * chore: remove changeset * fix: do not use type casting in vue constructor * fix: import vue 2 in a way that is compatible with nodenext module resolution * refactor: update shortcode imports and type definitions in emoji generation * chore: import vue 2 correctly * fix: attempt to fix tsconfig to make demos build in netlify * fix: update demos tsconfig to make netlify demos pass * fix: simplify tsconfigs * fix: simplify tsconfig * fix: simplify demos tsconfig * fix: unit tests tsconfig * chore: fix missing import errors in cypress tests --- CHANGELOG.md | 94 +++++++++++-------- demos/package.json | 5 +- .../ResizableImages/React/styles.scss | 2 +- .../Examples/ResizableNodes/React/styles.scss | 2 +- demos/tsconfig.base.json | 23 ----- demos/tsconfig.json | 48 ++++++++++ demos/tsconfig.react.json | 13 --- demos/tsconfig.vue-2.json | 13 --- demos/tsconfig.vue-3.json | 13 --- package.json | 2 +- .../src/DragHandle.ts | 6 +- .../extension-drag-handle-vue-2/src/Vue.ts | 8 ++ packages/extension-emoji/src/generate.ts | 15 ++- packages/extension-image/src/image.ts | 2 +- .../src/helpers/pasteHandler.ts | 2 +- packages/extension-mathematics/src/types.ts | 2 +- packages/markdown/src/utils.ts | 2 +- packages/vue-2/src/Vue.ts | 8 ++ packages/vue-2/src/VueNodeViewRenderer.ts | 4 +- packages/vue-2/src/VueRenderer.ts | 5 +- tests/cypress/plugins/index.js | 2 +- tests/cypress/tsconfig.json | 38 +++++++- tests/package.json | 3 + tsconfig.build.json | 34 ++++++- tsconfig.json | 35 ++++++- 25 files changed, 246 insertions(+), 135 deletions(-) delete mode 100644 demos/tsconfig.base.json create mode 100644 demos/tsconfig.json delete mode 100644 demos/tsconfig.react.json delete mode 100644 demos/tsconfig.vue-2.json delete mode 100644 demos/tsconfig.vue-3.json create mode 100644 packages/extension-drag-handle-vue-2/src/Vue.ts create mode 100644 packages/vue-2/src/Vue.ts create mode 100644 tests/package.json diff --git a/CHANGELOG.md b/CHANGELOG.md index 61612c8e2d..7daf2853f7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -92,7 +92,7 @@ - Add a new ResizableNodeview NodeView to core that wraps elements (images, videos, iframes) with configurable resize handles. It provides live onResize/onCommit callbacks, min/max constraints, aspect-ratio support, and styling hooks (class names + data attributes) to improve UX when resizing media inside the editor. - the addNodeView function can now return `null` to dynamically disable rendering of a node view - + While this should not directly cause any issues, it's noteworthy as it still could affect some behavior in some edge cases. ### @tiptap/extension-image @@ -122,7 +122,7 @@ #### Patch Changes - Ensure that markdown hard breaks (two spaces followed by a newline) are parsed so they render as line breaks (`
`) in the editor when using `contentType: 'markdown'`. - + Fixes #7107 ### @tiptap/extension-unique-id @@ -142,7 +142,7 @@ #### Patch Changes - Replace DOM traversal with browser's native elementsFromPoint for better performance. - + - Use elementsFromPoint instead of querySelectorAll - Add clampToContent helper for coordinate boundary validation - Add findClosestTopLevelBlock helper for efficient block lookup @@ -192,48 +192,55 @@ #### Minor Changes - All commands and their corresponding TypeScript types are now exported from `@tiptap/core` so they can be imported and referenced directly by consumers. This makes it easier to build typed helpers, extensions, and tests that depend on the command signatures. - + Why: + - Previously some command option types were only available as internal types or scattered across files, which made it awkward for downstream users to import and reuse them. - + ```ts import { commands } from '@tiptap/core' ``` - + Notes: + - This is a non-breaking, additive change. It improves ergonomics for TypeScript consumers. - If you rely on previously private/internal types, prefer the exported types from `@tiptap/core` going forward. + - Add comprehensive bidirectional markdown support to Tiptap through a new `@tiptap/markdown` package and Markdown utilities in `@tiptap/core`. - + **New Package: `@tiptap/markdown`** - A new official extension that provides full Markdown parsing and serialization capabilities using [MarkedJS](https://marked.js.org) as the underlying Markdown parser. - + **Core Features:** - + **Extension API** + - **`Markdown` Extension**: Main extension that adds Markdown support to your editor - **`MarkdownManager`**: Core engine for parsing and serializing Markdown - Parse Markdown strings to Tiptap JSON: `editor.markdown.parse(markdown)` - Serialize Tiptap JSON to Markdown: `editor.markdown.serialize(json)` - Access to underlying marked.js instance: `editor.markdown.instance` - + #### Editor Methods + - **`editor.getMarkdown()`**: Serialize current editor content to Markdown string - **`editor.markdown`**: Access to MarkdownManager instance for advanced operations - + **Editor Options:** + - **`contentType`**: Control the type of content that is inserted into the editor. Can be `json`, `html` or `markdown` - defaults to `json` and will automatically detect invalid content types (like JSON when it is actually Markdown). ```typescript new Editor({ content: '# Hello World', - contentType: 'markdown' + contentType: 'markdown', }) ``` - + **Command Options:** All content commands now support an `contentType` option: + - **`setContent(markdown, { contentType: 'markdown' })`**: Replace editor content with markdown - **`insertContent(markdown, { contentType: 'markdown' })`**: Insert markdown at cursor position - **`insertContentAt(position, markdown, { contentType: 'markdown' })`**: Insert Markdown at specific position - + For more, check [the documentation](https://tiptap.dev/docs/editor/markdown). #### Patch Changes @@ -245,36 +252,40 @@ #### Minor Changes - Add comprehensive bidirectional markdown support to Tiptap through a new `@tiptap/markdown` package and Markdown utilities in `@tiptap/core`. - + **New Package: `@tiptap/markdown`** - A new official extension that provides full Markdown parsing and serialization capabilities using [MarkedJS](https://marked.js.org) as the underlying Markdown parser. - + **Core Features:** - + **Extension API** + - **`Markdown` Extension**: Main extension that adds Markdown support to your editor - **`MarkdownManager`**: Core engine for parsing and serializing Markdown - Parse Markdown strings to Tiptap JSON: `editor.markdown.parse(markdown)` - Serialize Tiptap JSON to Markdown: `editor.markdown.serialize(json)` - Access to underlying marked.js instance: `editor.markdown.instance` - + #### Editor Methods + - **`editor.getMarkdown()`**: Serialize current editor content to Markdown string - **`editor.markdown`**: Access to MarkdownManager instance for advanced operations - + **Editor Options:** + - **`contentType`**: Control the type of content that is inserted into the editor. Can be `json`, `html` or `markdown` - defaults to `json` and will automatically detect invalid content types (like JSON when it is actually Markdown). ```typescript new Editor({ content: '# Hello World', - contentType: 'markdown' + contentType: 'markdown', }) ``` - + **Command Options:** All content commands now support an `contentType` option: + - **`setContent(markdown, { contentType: 'markdown' })`**: Replace editor content with markdown - **`insertContent(markdown, { contentType: 'markdown' })`**: Insert markdown at cursor position - **`insertContentAt(position, markdown, { contentType: 'markdown' })`**: Insert Markdown at specific position - + For more, check [the documentation](https://tiptap.dev/docs/editor/markdown). ### @tiptap/extension-link @@ -289,15 +300,15 @@ - Make the `TrailingNode` extension's `node` option optional and derive the default node type from the editor schema when available. - + Previously the extension used a hard-coded `'paragraph'` default and the `node` option was required in the TypeScript definitions. This change: - + - makes `node` optional in the options type, - prefers the editor schema's top node default type when resolving the trailing node, and - falls back to the configured option or `'paragraph'` as a last resort. - + This fixes cases where projects use a different top-level default node and prevents the extension from inserting an incorrect trailing node type. @@ -308,10 +319,11 @@ #### Patch Changes - Fix CVE-2025-61927 by bumping happy-dom to 20.0.0 - + Bumps the transitive/dev dependency happy-dom from ^18.0.1 → ^20.0.0 in @tiptap/html to address CVE-2025-61927. This is a dependency/security-only change and does not modify any public APIs. - + Why: + - happy-dom released a security fix for CVE-2025-61927; updating prevents the vulnerability being pulled into consumers that depend on @tiptap/html. ## v3.6.6 @@ -440,7 +452,7 @@ #### Patch Changes - Improve typing and docs for `EditorOptions.element` to reflect all supported mounting modes and align behavior across adapters. - + - `element` now accepts: - `Element`: the editor is appended inside the given element. - `{ mount: HTMLElement }`: the editor is mounted directly to `mount` (no extra wrapper). @@ -452,14 +464,15 @@ #### Patch Changes - Parse cell `colwidth` from nearest `` when missing on the cell - + When importing HTML, table column widths are often declared on a surrounding `` rather than on each ``. Previously, `tableCell` only read the `colwidth` attribute from the cell itself and would lose width information in that case. The implementation now falls back to reading the corresponding ``'s `width` from the table's `` using the cell's index. - + This is a non-breaking bugfix that preserves layout information when HTML uses ``. Consider adding a small demo or unit test to assert colwidth is preserved for cells when only the `` contains width attributes. + - Fixes table wrapper replacement and lost selections when `resizable: true`. - + TableView.ignoreMutation now ignores attribute/childList/characterData mutations that occur inside the table wrapper but outside the editable `contentDOM`, preventing wrapper re-creation during resize interactions so selections (e.g. `mergeCells()`) are preserved. - + No API or breaking changes. ### @tiptap/extension-bubble-menu @@ -467,7 +480,7 @@ #### Patch Changes - Remove recently added `updateBubbleMenuPosition` method because it would not work in the React and Vue versions of the BubbleMenu, only in the vanilla extension. And that would confuse developers. - + Write the `transactionHandler` method as an arrow function because arrow functions have no `this`, so the `this` remains the instance of the `BubbleMenuView` class. ### @tiptap/extension-unique-id @@ -475,16 +488,16 @@ #### Minor Changes - Create a utility to add unique IDs to a document in the server - + The utility is called `generateUniqueIds` and is exported from the `@tiptap/extension-unique-id` package. - + It has the same functionality as the `UniqueID` extension, but without the need to create an `Editor` instance. This lets you add unique IDs to the document in the server. - + It takes the following parameters: - + - `doc`: The Tiptap JSON document to add unique IDs to. - `extensions`: The extensions to use. Must include the `UniqueID` extension. - + It returns the updated Tiptap JSON document, with the unique IDs added to the nodes. ### @tiptap/vue-3 @@ -500,11 +513,11 @@ #### Patch Changes - Merge nested span styles only for immediate child spans and guard style values. - + - Replace non-standard/fragile selector approach and avoid re-processing nested `` elements. - Read parent style once, merge with child style only when present, and remove empty `style` attributes. - Improves parsing performance and robustness in browsers, Node/JSDOM and tests. - + This change fixes a bug that could cause exponential work when parsing deeply nested `` elements - in extreme cases that could make the tab unresponsive or crash the renderer. It is a bugfix / performance improvement with no public API @@ -544,7 +557,6 @@ - Add `appendTo` support to `FloatingMenu` and pass it through in React/Vue 2/Vue 3 for both `BubbleMenu` and `FloatingMenu` to allow fixing clipping/z-index issues. - # [2.4.0](https://github.com/ueberdosis/tiptap/compare/v2.3.2...v2.4.0) (2024-05-14) ### Bug Fixes diff --git a/demos/package.json b/demos/package.json index a2628c042a..60d2d264d4 100644 --- a/demos/package.json +++ b/demos/package.json @@ -5,9 +5,8 @@ "type": "module", "scripts": { "start": "vite --host", - "build:demos": "pnpm run ts && vite build", - "preview": "vite preview", - "ts": "tsc --project tsconfig.base.json --noEmit && tsc --project tsconfig.react.json --noEmit && tsc --project tsconfig.vue-2.json --noEmit && tsc --project tsconfig.vue-3.json --noEmit" + "build:demos": "vite build", + "preview": "vite preview" }, "dependencies": { "@floating-ui/dom": "^1.6.13", diff --git a/demos/src/Examples/ResizableImages/React/styles.scss b/demos/src/Examples/ResizableImages/React/styles.scss index 322ed35948..f6a7678beb 100644 --- a/demos/src/Examples/ResizableImages/React/styles.scss +++ b/demos/src/Examples/ResizableImages/React/styles.scss @@ -88,7 +88,7 @@ } } - [data-resize-state="true"] [data-resize-wrapper] { + [data-resize-state='true'] [data-resize-wrapper] { outline: 1px solid rgba(0, 0, 0, 0.25); border-radius: 0.125rem; } diff --git a/demos/src/Examples/ResizableNodes/React/styles.scss b/demos/src/Examples/ResizableNodes/React/styles.scss index 45d69bbc24..5f01596447 100644 --- a/demos/src/Examples/ResizableNodes/React/styles.scss +++ b/demos/src/Examples/ResizableNodes/React/styles.scss @@ -88,7 +88,7 @@ } } - [data-resize-state="true"] [data-resize-wrapper] { + [data-resize-state='true'] [data-resize-wrapper] { outline: 1px solid rgba(0, 0, 0, 0.25); border-radius: 0.125rem; } diff --git a/demos/tsconfig.base.json b/demos/tsconfig.base.json deleted file mode 100644 index b284768902..0000000000 --- a/demos/tsconfig.base.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "skipLibCheck": true, - "types": ["node"] - }, - "include": [ - "../packages/*/src/**/*.d.ts", - "../packages/*/src/**/*.ts", - "../packages/*/src/**/*.tsx", - "../packages/*/src/**/*.vue", - "../packages-deprecated/*/src/**/*.d.ts", - "../packages-deprecated/*/src/**/*.ts", - "../packages-deprecated/*/src/**/*.tsx", - "../packages-deprecated/*/src/**/*.vue" - ], - "exclude": [ - "../packages/react", - "../packages/vue-2", - "../packages/vue-3", - "../packages/extension-code-block-lowlight" - ] -} diff --git a/demos/tsconfig.json b/demos/tsconfig.json new file mode 100644 index 0000000000..c427c24993 --- /dev/null +++ b/demos/tsconfig.json @@ -0,0 +1,48 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "skipLibCheck": true, + "types": ["node"], + "module": "nodenext", + "moduleResolution": "nodenext", + "paths": { + "@tiptap/static-renderer/pm/html-string": [ + "../packages/static-renderer/src/pm/html-string/index.js", + "../packages/static-renderer/src/pm/html-string/index.ts" + ], + "@tiptap/static-renderer/pm/markdown": [ + "../packages/static-renderer/src/pm/markdown/index.js", + "../packages/static-renderer/src/pm/markdown/index.ts" + ], + "@tiptap/static-renderer/pm/react": [ + "../packages/static-renderer/src/pm/react/index.js", + "../packages/static-renderer/src/pm/react/index.ts" + ], + "@tiptap/static-renderer/json/html-string": [ + "../packages/static-renderer/src/json/html-string/index.js", + "../packages/static-renderer/src/json/html-string/index.ts" + ], + "@tiptap/static-renderer/json/react": [ + "../packages/static-renderer/src/json/react/index.js", + "../packages/static-renderer/src/json/react/index.ts" + ], + "@tiptap/*": [ + "../packages/*/src/index.js", + "../packages/*/src", + "../packages/*/dist/index.js", + "../packages/*/dist", + "../packages-deprecated/*/src/index.js", + "../packages-deprecated/*/src", + "../packages-deprecated/*/dist/index.js", + "../packages-deprecated/*/dist" + ] + } + }, + "include": [ + "../packages/*/src/**/*.d.ts", + "../packages/*/src/**/*.ts", + "../packages/*/src/**/*.tsx", + "../packages/*/src/**/*.vue", + "./src/**/*" + ] +} diff --git a/demos/tsconfig.react.json b/demos/tsconfig.react.json deleted file mode 100644 index 45cf71ae28..0000000000 --- a/demos/tsconfig.react.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "skipLibCheck": true, - "types": ["node"] - }, - "include": [ - "../packages/react/src/*.d.ts", - "../packages/react/src/*.ts", - "../packages/react/src/*.tsx", - "../packages/react/src/*.vue" - ] -} diff --git a/demos/tsconfig.vue-2.json b/demos/tsconfig.vue-2.json deleted file mode 100644 index 7d1278115e..0000000000 --- a/demos/tsconfig.vue-2.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "skipLibCheck": true, - "types": ["node"] - }, - "include": [ - "../packages/vue-2/src/*.d.ts", - "../packages/vue-2/src/*.ts", - "../packages/vue-2/src/*.tsx", - "../packages/vue-2/src/*.vue" - ] -} diff --git a/demos/tsconfig.vue-3.json b/demos/tsconfig.vue-3.json deleted file mode 100644 index d9e06022e0..0000000000 --- a/demos/tsconfig.vue-3.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "skipLibCheck": true, - "types": ["node"] - }, - "include": [ - "../packages/vue-3/src/*.d.ts", - "../packages/vue-3/src/*.ts", - "../packages/vue-3/src/*.tsx", - "../packages/vue-3/src/*.vue" - ] -} diff --git a/package.json b/package.json index 3b63812b03..51025f1dfd 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "test:run": "cypress run --project tests", "test": "turbo run build && pnpm run test:run", "build": "turbo build", - "build:demos": "pnpm --prefix demos run build:demos", + "build:demos": "pnpm --prefix demos run build:demos", "serve": "pnpm run build:demos && http-server ./demos/dist -s -p 3000", "build:ci": "turbo run build", "publish": "pnpm run build && pnpm changeset publish", diff --git a/packages/extension-drag-handle-vue-2/src/DragHandle.ts b/packages/extension-drag-handle-vue-2/src/DragHandle.ts index 8f70237c79..c12ebd0357 100644 --- a/packages/extension-drag-handle-vue-2/src/DragHandle.ts +++ b/packages/extension-drag-handle-vue-2/src/DragHandle.ts @@ -5,7 +5,9 @@ import { DragHandlePlugin, dragHandlePluginDefaultKey, } from '@tiptap/extension-drag-handle' -import Vue, { type PropType } from 'vue' +import { type PropType } from 'vue' + +import { Vue } from './Vue.js' type Optional = Pick, K> & Omit @@ -77,7 +79,7 @@ export const DragHandle = Vue.extend({ editor.unregisterPlugin(pluginKey as string) }, - render(h) { + render(h: Vue.CreateElement) { return h( 'div', { diff --git a/packages/extension-drag-handle-vue-2/src/Vue.ts b/packages/extension-drag-handle-vue-2/src/Vue.ts new file mode 100644 index 0000000000..38676a3adc --- /dev/null +++ b/packages/extension-drag-handle-vue-2/src/Vue.ts @@ -0,0 +1,8 @@ +import type { VueConstructor } from 'vue' +import VueDefault from 'vue' + +// With nodenext module resolution, TypeScript treats the default import as the module type. +// We need to explicitly type it as VueConstructor to access static methods like extend and observable. +// This is necessary because Vue 2's type definitions export Vue as VueConstructor, but nodenext +// doesn't correctly infer the default export type. +export const Vue: VueConstructor = VueDefault as unknown as VueConstructor diff --git a/packages/extension-emoji/src/generate.ts b/packages/extension-emoji/src/generate.ts index 3122e1a8dd..0bf3f973e5 100644 --- a/packages/extension-emoji/src/generate.ts +++ b/packages/extension-emoji/src/generate.ts @@ -1,14 +1,19 @@ -import dataSource from 'emoji-datasource/emoji.json' -import data from 'emojibase-data/en/data.json' -import messages from 'emojibase-data/en/messages.json' -import emojibaseShortcodes from 'emojibase-data/en/shortcodes/emojibase.json' -import gitHubShortcodes from 'emojibase-data/en/shortcodes/github.json' +import dataSource from 'emoji-datasource/emoji.json' with { type: 'json' } +import data from 'emojibase-data/en/data.json' with { type: 'json' } +import messages from 'emojibase-data/en/messages.json' with { type: 'json' } +import emojibaseShortcodesJson from 'emojibase-data/en/shortcodes/emojibase.json' with { type: 'json' } +import gitHubShortcodesJson from 'emojibase-data/en/shortcodes/github.json' with { type: 'json' } import fs from 'fs' import json5 from 'json5' import type { EmojiItem } from './emoji.js' import { removeVariationSelector } from './helpers/removeVariationSelector.js' +type Shortcodes = Record + +const emojibaseShortcodes = emojibaseShortcodesJson as Shortcodes +const gitHubShortcodes = gitHubShortcodesJson as Shortcodes + const emojis: EmojiItem[] = data // .filter(emoji => emoji.version > 0 && emoji.version < 14) .map(emoji => { diff --git a/packages/extension-image/src/image.ts b/packages/extension-image/src/image.ts index 4e9f2ec23b..88297588a6 100644 --- a/packages/extension-image/src/image.ts +++ b/packages/extension-image/src/image.ts @@ -1,5 +1,5 @@ +import type { ResizableNodeViewDirection } from '@tiptap/core' import { mergeAttributes, Node, nodeInputRule, ResizableNodeView } from '@tiptap/core' -import type { ResizableNodeViewDirection } from 'packages/core/src/lib' export interface ImageOptions { /** diff --git a/packages/extension-link/src/helpers/pasteHandler.ts b/packages/extension-link/src/helpers/pasteHandler.ts index 71a6bc297e..6f94ee8f02 100644 --- a/packages/extension-link/src/helpers/pasteHandler.ts +++ b/packages/extension-link/src/helpers/pasteHandler.ts @@ -3,7 +3,7 @@ import type { MarkType } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' import { find } from 'linkifyjs' -import type { LinkOptions } from '../link' +import type { LinkOptions } from '../link.js' type PasteHandlerOptions = { editor: Editor diff --git a/packages/extension-mathematics/src/types.ts b/packages/extension-mathematics/src/types.ts index dc5bf5e4df..7ed2809d3c 100644 --- a/packages/extension-mathematics/src/types.ts +++ b/packages/extension-mathematics/src/types.ts @@ -1,7 +1,7 @@ import type { Editor } from '@tiptap/core' import type { KatexOptions } from 'katex' -import type { BlockMathOptions, InlineMathOptions } from './extensions' +import type { BlockMathOptions, InlineMathOptions } from './extensions/index.js' /** * Configuration options for the Mathematics extension. diff --git a/packages/markdown/src/utils.ts b/packages/markdown/src/utils.ts index 7ec72413f5..8d370d23f6 100644 --- a/packages/markdown/src/utils.ts +++ b/packages/markdown/src/utils.ts @@ -1,7 +1,7 @@ import type { Content, MarkdownToken } from '@tiptap/core' import type { Fragment, Node } from '@tiptap/pm/model' -import type { ContentType } from './types' +import type { ContentType } from './types.js' /** * Wraps each line of the content with the given prefix. diff --git a/packages/vue-2/src/Vue.ts b/packages/vue-2/src/Vue.ts new file mode 100644 index 0000000000..38676a3adc --- /dev/null +++ b/packages/vue-2/src/Vue.ts @@ -0,0 +1,8 @@ +import type { VueConstructor } from 'vue' +import VueDefault from 'vue' + +// With nodenext module resolution, TypeScript treats the default import as the module type. +// We need to explicitly type it as VueConstructor to access static methods like extend and observable. +// This is necessary because Vue 2's type definitions export Vue as VueConstructor, but nodenext +// doesn't correctly infer the default export type. +export const Vue: VueConstructor = VueDefault as unknown as VueConstructor diff --git a/packages/vue-2/src/VueNodeViewRenderer.ts b/packages/vue-2/src/VueNodeViewRenderer.ts index a7503fb752..2235b2b404 100644 --- a/packages/vue-2/src/VueNodeViewRenderer.ts +++ b/packages/vue-2/src/VueNodeViewRenderer.ts @@ -2,11 +2,11 @@ import type { DecorationWithType, NodeViewProps, NodeViewRenderer, NodeViewRende import { NodeView } from '@tiptap/core' import type { Node as ProseMirrorNode } from '@tiptap/pm/model' import type { Decoration, DecorationSource, NodeView as ProseMirrorNodeView } from '@tiptap/pm/view' -import Vue from 'vue' -import type { VueConstructor } from 'vue/types/umd' +import type { VueConstructor } from 'vue' import { booleanProp, functionProp, objectProp } from 'vue-ts-types' import type { Editor } from './Editor.js' +import { Vue } from './Vue.js' import { VueRenderer } from './VueRenderer.js' export const nodeViewProps = { diff --git a/packages/vue-2/src/VueRenderer.ts b/packages/vue-2/src/VueRenderer.ts index 8f9235e784..7cc4d3cebf 100644 --- a/packages/vue-2/src/VueRenderer.ts +++ b/packages/vue-2/src/VueRenderer.ts @@ -1,5 +1,6 @@ -import Vue from 'vue' -import type { VueConstructor } from 'vue/types/umd' +import type { VueConstructor } from 'vue' + +import { Vue } from './Vue.js' /** * The VueRenderer class is responsible for rendering a Vue component as a ProseMirror node view. diff --git a/tests/cypress/plugins/index.js b/tests/cypress/plugins/index.js index 3cd2498ccc..b00f0c2bb8 100644 --- a/tests/cypress/plugins/index.js +++ b/tests/cypress/plugins/index.js @@ -50,8 +50,8 @@ module.exports = on => { loader: 'ts-loader', exclude: /node_modules/, options: { - // tsconfig: configFile: path.resolve(__dirname, '..', 'tsconfig.json'), + transpileOnly: true, }, }, { diff --git a/tests/cypress/tsconfig.json b/tests/cypress/tsconfig.json index d50f9e776b..a4c1af6b68 100644 --- a/tests/cypress/tsconfig.json +++ b/tests/cypress/tsconfig.json @@ -1,16 +1,44 @@ { "extends": "../../tsconfig.json", "compilerOptions": { - "moduleResolution": "bundler", + "moduleResolution": "nodenext", + "module": "nodenext", "strict": false, "noEmit": false, "sourceMap": false, + "importHelpers": false, "types": ["cypress", "react", "react-dom"], "paths": { - "@tiptap/static-renderer/pm/*": ["packages/static-renderer/src/pm/*"], - "@tiptap/static-renderer/json/*": ["packages/static-renderer/src/json/*"], - "@tiptap/*": ["packages/*/src", "packages/*/dist"], - "@tiptap/pm/*": ["packages/pm/*"] + "@tiptap/static-renderer/pm/html-string": [ + "packages/static-renderer/src/pm/html-string/index.js", + "packages/static-renderer/src/pm/html-string/index.ts" + ], + "@tiptap/static-renderer/pm/markdown": [ + "packages/static-renderer/src/pm/markdown/index.js", + "packages/static-renderer/src/pm/markdown/index.ts" + ], + "@tiptap/static-renderer/pm/react": [ + "packages/static-renderer/src/pm/react/index.js", + "packages/static-renderer/src/pm/react/index.ts" + ], + "@tiptap/static-renderer/json/html-string": [ + "packages/static-renderer/src/json/html-string/index.js", + "packages/static-renderer/src/json/html-string/index.ts" + ], + "@tiptap/static-renderer/json/react": [ + "packages/static-renderer/src/json/react/index.js", + "packages/static-renderer/src/json/react/index.ts" + ], + "@tiptap/*": [ + "packages/*/src/index.js", + "packages/*/src", + "packages/*/dist/index.js", + "packages/*/dist", + "packages-deprecated/*/src/index.js", + "packages-deprecated/*/src", + "packages-deprecated/*/dist/index.js", + "packages-deprecated/*/dist" + ] }, "typeRoots": ["../../node_modules/@types", "../../node_modules/"] }, diff --git a/tests/package.json b/tests/package.json new file mode 100644 index 0000000000..3dbc1ca591 --- /dev/null +++ b/tests/package.json @@ -0,0 +1,3 @@ +{ + "type": "module" +} diff --git a/tsconfig.build.json b/tsconfig.build.json index b5fd8dae54..bf40cf7752 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -3,7 +3,37 @@ "compilerOptions": { "rootDir": "../../", "paths": { - "@tiptap/*": ["packages/*/dist", "packages/*/src", "packages-deprecated/*/dist", "packages-deprecated/*/src"] - } + "@tiptap/static-renderer/pm/html-string": [ + "packages/static-renderer/src/pm/html-string/index.js", + "packages/static-renderer/src/pm/html-string/index.ts" + ], + "@tiptap/static-renderer/pm/markdown": [ + "packages/static-renderer/src/pm/markdown/index.js", + "packages/static-renderer/src/pm/markdown/index.ts" + ], + "@tiptap/static-renderer/pm/react": [ + "packages/static-renderer/src/pm/react/index.js", + "packages/static-renderer/src/pm/react/index.ts" + ], + "@tiptap/static-renderer/json/html-string": [ + "packages/static-renderer/src/json/html-string/index.js", + "packages/static-renderer/src/json/html-string/index.ts" + ], + "@tiptap/static-renderer/json/react": [ + "packages/static-renderer/src/json/react/index.js", + "packages/static-renderer/src/json/react/index.ts" + ], + "@tiptap/*": [ + "packages/*/src/index.js", + "packages/*/src", + "packages/*/dist/index.js", + "packages/*/dist", + "packages-deprecated/*/src/index.js", + "packages-deprecated/*/src", + "packages-deprecated/*/dist/index.js", + "packages-deprecated/*/dist" + ] + }, + "lib": ["esnext", "dom", "dom.iterable", "scripthost"] } } diff --git a/tsconfig.json b/tsconfig.json index 3e2954b5c0..cb7bbd95c6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,11 +2,11 @@ "compilerOptions": { "noEmit": true, "target": "es2019", - "module": "esnext", + "module": "nodenext", "strict": true, "jsx": "react-jsx", "importHelpers": true, - "moduleResolution": "node", + "moduleResolution": "nodenext", "resolveJsonModule": true, "esModuleInterop": true, "allowSyntheticDefaultImports": true, @@ -17,7 +17,36 @@ "allowJs": true, "checkJs": false, "paths": { - "@tiptap/*": ["packages/*/src", "packages/*/dist", "packages-deprecated/*/src", "packages-deprecated/*/dist"] + "@tiptap/static-renderer/pm/html-string": [ + "packages/static-renderer/src/pm/html-string/index.js", + "packages/static-renderer/src/pm/html-string/index.ts" + ], + "@tiptap/static-renderer/pm/markdown": [ + "packages/static-renderer/src/pm/markdown/index.js", + "packages/static-renderer/src/pm/markdown/index.ts" + ], + "@tiptap/static-renderer/pm/react": [ + "packages/static-renderer/src/pm/react/index.js", + "packages/static-renderer/src/pm/react/index.ts" + ], + "@tiptap/static-renderer/json/html-string": [ + "packages/static-renderer/src/json/html-string/index.js", + "packages/static-renderer/src/json/html-string/index.ts" + ], + "@tiptap/static-renderer/json/react": [ + "packages/static-renderer/src/json/react/index.js", + "packages/static-renderer/src/json/react/index.ts" + ], + "@tiptap/*": [ + "packages/*/src/index.js", + "packages/*/src", + "packages/*/dist/index.js", + "packages/*/dist", + "packages-deprecated/*/src/index.js", + "packages-deprecated/*/src", + "packages-deprecated/*/dist/index.js", + "packages-deprecated/*/dist" + ] }, "lib": ["esnext", "dom", "dom.iterable", "scripthost"] }, From 0395ccd001352bc6ef3e28f8c35af8440a85a214 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 12 Nov 2025 19:30:51 +0100 Subject: [PATCH 501/629] fix: resolve BubbleMenu Vue 2 runtime errors with prop defaults (#7215) * fix: resolve BubbleMenu Vue 2 runtime errors with prop defaults and $el timing Fixed two critical errors in BubbleMenu component for Vue 2: - Changed options prop default from object literal to factory function to comply with Vue 2 validation requirements - Added guard clause to prevent accessing $el before component mount when immediate watcher runs Closes #6696 * add vue 2 runtime fixes for floating menu fix --- .changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md | 5 +++++ packages/vue-2/src/menus/BubbleMenu.ts | 6 +++++- packages/vue-2/src/menus/FloatingMenu.ts | 4 ++++ 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 .changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md diff --git a/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md b/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md new file mode 100644 index 0000000000..a97a292fd1 --- /dev/null +++ b/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md @@ -0,0 +1,5 @@ +--- +"@tiptap/vue-2": patch +--- + +Fix BubbleMenu and FloatingMenu component runtime errors in Vue 2. diff --git a/packages/vue-2/src/menus/BubbleMenu.ts b/packages/vue-2/src/menus/BubbleMenu.ts index 491f7f2022..f04b58d6f1 100644 --- a/packages/vue-2/src/menus/BubbleMenu.ts +++ b/packages/vue-2/src/menus/BubbleMenu.ts @@ -34,7 +34,7 @@ export const BubbleMenu: Component = { options: { type: Object as PropType, - default: {}, + default: () => ({}), }, resizeDelay: { @@ -60,6 +60,10 @@ export const BubbleMenu: Component = { return } + if (!this.$el) { + return + } + ;(this.$el as HTMLElement).style.visibility = 'hidden' ;(this.$el as HTMLElement).style.position = 'absolute' diff --git a/packages/vue-2/src/menus/FloatingMenu.ts b/packages/vue-2/src/menus/FloatingMenu.ts index 762a611450..c4a2531c5d 100644 --- a/packages/vue-2/src/menus/FloatingMenu.ts +++ b/packages/vue-2/src/menus/FloatingMenu.ts @@ -49,6 +49,10 @@ export const FloatingMenu: Component = { return } + if (!this.$el) { + return + } + ;(this.$el as HTMLElement).style.visibility = 'hidden' ;(this.$el as HTMLElement).style.position = 'absolute' From ebe72e55b268a5b9e9ac1c0a0832b809c4eef89d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Wed, 12 Nov 2025 19:33:18 +0100 Subject: [PATCH 502/629] docs: add documentation comments to Tiptap JSON types --- packages/core/src/types.ts | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 37788e2f43..1510e31a04 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -442,17 +442,48 @@ export interface EditorOptions { export type HTMLContent = string /** - * Loosely describes a JSON representation of a Prosemirror document or node + * A Tiptap JSON node or document. Tiptap JSON is the standard format for + * storing and manipulating Tiptap content. It is equivalent to the JSON + * representation of a Prosemirror node. + * + * Tiptap JSON documents are trees of nodes. The root node is usually of type + * `doc`. Nodes can have other nodes as children. Nodes can also have marks and + * attributes. Text nodes (nodes with type `text`) have a `text` property and no + * children. */ export type JSONContent = { + /** + * The type of the node + */ type?: string + /** + * The attributes of the node. Attributes can have any JSON-serializable value. + */ attrs?: Record | undefined + /** + * The children of the node. A node can have other nodes as children. + */ content?: JSONContent[] + /** + * A list of marks of the node. Inline nodes can have marks. + */ marks?: { + /** + * The type of the mark + */ type: string + /** + * The attributes of the mark. Attributes can have any JSON-serializable value. + */ attrs?: Record [key: string]: any }[] + /** + * The text content of the node. This property is only present on text nodes + * (i.e. nodes with `type: 'text'`). + * + * Text nodes cannot have children, but they can have marks. + */ text?: string [key: string]: any } From b7ead7cb42a5d8deec8751e7b7cb0020a61c7583 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Wed, 12 Nov 2025 19:36:33 +0100 Subject: [PATCH 503/629] chore: changeset --- .changeset/eleven-brooms-jog.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/eleven-brooms-jog.md diff --git a/.changeset/eleven-brooms-jog.md b/.changeset/eleven-brooms-jog.md new file mode 100644 index 0000000000..bc804556b1 --- /dev/null +++ b/.changeset/eleven-brooms-jog.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Add documentation comments to Tiptap JSON types From 7395354e47a632b0bb23dc9bd22282c1d91bde85 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 12 Nov 2025 19:49:52 +0100 Subject: [PATCH 504/629] Update packages/core/src/types.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- packages/core/src/types.ts | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 1510e31a04..1068c87061 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -450,6 +450,29 @@ export type HTMLContent = string * `doc`. Nodes can have other nodes as children. Nodes can also have marks and * attributes. Text nodes (nodes with type `text`) have a `text` property and no * children. + * + * @example + * ```ts + * const content: JSONContent = { + * type: 'doc', + * content: [ + * { + * type: 'paragraph', + * content: [ + * { + * type: 'text', + * text: 'Hello ', + * }, + * { + * type: 'text', + * text: 'world', + * marks: [{ type: 'bold' }], + * }, + * ], + * }, + * ], + * } + * ``` */ export type JSONContent = { /** From a7213b5dd7dbe374d060cfa82b5e4c0fff3f5635 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 12 Nov 2025 19:30:51 +0100 Subject: [PATCH 505/629] fix: resolve BubbleMenu Vue 2 runtime errors with prop defaults (#7215) * fix: resolve BubbleMenu Vue 2 runtime errors with prop defaults and $el timing Fixed two critical errors in BubbleMenu component for Vue 2: - Changed options prop default from object literal to factory function to comply with Vue 2 validation requirements - Added guard clause to prevent accessing $el before component mount when immediate watcher runs Closes #6696 * add vue 2 runtime fixes for floating menu fix --- .changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md | 5 +++++ packages/vue-2/src/menus/BubbleMenu.ts | 6 +++++- packages/vue-2/src/menus/FloatingMenu.ts | 4 ++++ 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 .changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md diff --git a/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md b/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md new file mode 100644 index 0000000000..a97a292fd1 --- /dev/null +++ b/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md @@ -0,0 +1,5 @@ +--- +"@tiptap/vue-2": patch +--- + +Fix BubbleMenu and FloatingMenu component runtime errors in Vue 2. diff --git a/packages/vue-2/src/menus/BubbleMenu.ts b/packages/vue-2/src/menus/BubbleMenu.ts index 491f7f2022..f04b58d6f1 100644 --- a/packages/vue-2/src/menus/BubbleMenu.ts +++ b/packages/vue-2/src/menus/BubbleMenu.ts @@ -34,7 +34,7 @@ export const BubbleMenu: Component = { options: { type: Object as PropType, - default: {}, + default: () => ({}), }, resizeDelay: { @@ -60,6 +60,10 @@ export const BubbleMenu: Component = { return } + if (!this.$el) { + return + } + ;(this.$el as HTMLElement).style.visibility = 'hidden' ;(this.$el as HTMLElement).style.position = 'absolute' diff --git a/packages/vue-2/src/menus/FloatingMenu.ts b/packages/vue-2/src/menus/FloatingMenu.ts index 762a611450..c4a2531c5d 100644 --- a/packages/vue-2/src/menus/FloatingMenu.ts +++ b/packages/vue-2/src/menus/FloatingMenu.ts @@ -49,6 +49,10 @@ export const FloatingMenu: Component = { return } + if (!this.$el) { + return + } + ;(this.$el as HTMLElement).style.visibility = 'hidden' ;(this.$el as HTMLElement).style.position = 'absolute' From a11188eb1e1008b6f68d44d0bb855be3be734867 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 12 Nov 2025 21:06:00 +0100 Subject: [PATCH 506/629] chore(release): publish a new release version (#7224) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...bubble-menu-vue2-errors-calm-river-dawn.md | 5 ---- CHANGELOG.md | 8 +++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 7 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 142 files changed, 563 insertions(+), 75 deletions(-) delete mode 100644 .changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md diff --git a/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md b/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md deleted file mode 100644 index a97a292fd1..0000000000 --- a/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/vue-2": patch ---- - -Fix BubbleMenu and FloatingMenu component runtime errors in Vue 2. diff --git a/CHANGELOG.md b/CHANGELOG.md index 61612c8e2d..8d1b461c1c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Releases +## v3.10.6 + +### @tiptap/vue-2 + +#### Patch Changes + +- Fix BubbleMenu and FloatingMenu component runtime errors in Vue 2. + ## v3.10.5 ### @tiptap/extension-collaboration diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 94fcc6e017..971ebaf45d 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extensions@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index f6aa895120..bff1391524 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index ebc157fcba..4d1693816c 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extensions@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index ae4090763e..0bb66b657e 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index c4c69cf90f..a0c133d3da 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extensions@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index e309a93c26..cdf0707985 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index b729ee0f96..1e32e6d590 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extensions@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 67cf880d59..85353a760f 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 131cb8b23a..0ed63542c7 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extensions@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index bc59dc1da9..f46442f190 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 9305efeb18..528a47a706 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-list@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 83342ef7bc..cb1dd0b152 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 0162ffbe50..a647e70a7f 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-list@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 7276ef6c1a..c5a467ce0f 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 92a74ac14a..36fde07fdb 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extensions@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 32a4846e0f..4d9523e4d7 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 768e60c73e..57a8807f07 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-table@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 3231472985..31f7ab3f63 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index ffc6a2055b..628025cbc9 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-table@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index bfb791c298..7badd38ce7 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 87d89d0419..7af0c72116 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-table@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index f9baf1b329..3a4c750150 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 84abc75a29..8ce04f8fe6 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-list@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index cb1d550fa5..9994852245 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 4dbe4b5e02..f266c52722 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-list@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index e16435d3ea..db3ede9327 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index d09bde511e..c2518e8a85 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 53e82e941e..4163d7b7b0 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 42832d72e3..cf3e647110 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 3ec03b341a..8c2e140191 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 1ccc964bca..7dbb5c13ab 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index b8051caaa3..a6189f92bf 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 4e4535c887..542ff4ead5 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index fc4bba607b..d7b96f1d45 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 2d2735f0f7..33c852d82d 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-list@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 3e1a789362..1b26254a90 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 7cfefc0608..0afd526d49 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/extension-code-block@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index b675963399..082da7fac9 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 6c17901fc2..7754b98466 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index b0bfe31989..65cca8cf3c 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index cd6c222bad..d684e3bf18 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index a1783ad7a8..0678ee4929 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 0e649b06dd..201307ed1c 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index d44c3c76b4..3045c3a058 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 6346f5853d..7ec4acd0e1 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index d064553bed..3fe50806d2 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index f6957773ca..84e66cfb96 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 0ef7c819e8..e6c82d4911 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 9d9fc241c2..0509bbd1f5 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/extension-text-style@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 88234c27b9..fe7b749389 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 887ab271e5..b5c8fa82d7 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index e5abfecb86..a54f552ed3 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index f1ee27afef..db981624be 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.10.6 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.6 +- @tiptap/pm@3.10.6 +- @tiptap/react@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 31fa911481..7b01abea54 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index fd3c45968c..2bd1ab2bb8 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.10.6 + +### Patch Changes + +- Updated dependencies [a7213b5] + - @tiptap/vue-2@3.10.6 + - @tiptap/extension-drag-handle@3.10.6 + - @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 5965d36aa1..f69b2dacf1 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 0ba22a2892..d11f5ade7b 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.10.6 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.6 +- @tiptap/pm@3.10.6 +- @tiptap/vue-3@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 4d1ba1a38c..b6726352c9 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 39fe1e5da1..033bae5f30 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/extension-collaboration@3.10.6 +- @tiptap/extension-node-range@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 6c988e39e1..4cdcfc34c2 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index cf8d54048c..fd3695a1af 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 +- @tiptap/suggestion@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index e2a995140c..f9c9f89964 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index ea83c02e2e..03cb7c4755 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/extension-text-style@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 0fcaf1bffe..85e722f291 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 4aa8ba1f49..4c8f60462d 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 625eacbcf0..d4900ef27c 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 0862f8134f..7552c25cfa 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 4e62022541..4ee2e84fd9 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 1b71b9d50a..4cf73d504b 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 5eaceccf04..9b82fa9b97 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 2348b0f79d..34b196378c 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index ba593f31c7..2d98fe9b91 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 00b4de2890..c4e2ed4e58 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 599bbc7378..a6ac2c11e1 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 02f88d43d3..378841df23 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 25296eaebd..72234d9916 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 810a8b86b1..e301c37bc5 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index e960aa054a..8702805cd4 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 25b39370bf..77799bb153 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/extension-text-style@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 0f8435108a..d6afd0366d 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 2bcd539ace..c9412230c1 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 78f2eac6ee..0ebe2e1aa3 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 7bf65b278d..e70a5f5617 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index be4ca4070e..e9b97a69e3 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 92b38630be..b97b7b9c52 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index bf11ac21b7..b9d8e47891 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 94e55925ed..543c0a138f 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index b67f779406..30d44c929d 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 20773ea5e0..c6a0e1fea2 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 +- @tiptap/suggestion@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 8e054dba7c..d09cdc7fb6 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 62f690e60f..c9da987579 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 414e044cee..03b7837440 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 658ce85616..c7b12c1f36 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-list@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 731b6bc787..a578ca83a8 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 30957752d8..3f8e698eec 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 7348895afa..af22456f89 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index dc4ec88270..470aa05f9d 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 645d1aacad..6966a5680d 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index b9d924f368..9300fd893d 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index d4923518c2..202cf2c62f 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index f9f316c6e0..71ec49b92b 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 0a81fce880..6c598cfa53 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 0a57cdc7df..f13375dc66 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 1c43bcf227..11858d74cd 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index a859ab4f05..0559d2f7c8 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 9636132ab0..645852d862 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 4985d4ae05..1d610767ca 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 67ff6a847c..35384bb880 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 16b8a8e145..e6a9e06698 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 7e410687a2..1a70e0eaae 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index b580c68b1c..788857351a 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index aa3c7d3f20..815f586dde 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 65912e7fea..ea623e1add 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 6aa1e5dea4..c569702c29 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 342529983a..e4343b7ad4 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 7ebfb9638e..0d4855f0bd 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 7b1dff152b..83287b96a1 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 9f7190edde..7fcf0950c6 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index c60db12516..bd6ef3d2cd 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index a98f83fe21..25930e1928 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index e78502fc29..eb0c2f2480 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index e3ca4fadbe..51829fd6f5 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index e54d858881..93436b544c 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 18796967b6..53fc0cd77c 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 3a03cdc7c5..304a2f8a9a 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/markdown +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 86dc4e1840..d7ad8ff64c 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 02d2f39b1c..4eaea593f3 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.6 + ## 3.10.5 ## 3.10.4 diff --git a/packages/pm/package.json b/packages/pm/package.json index a6ad3cf863..fc157dd59e 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 67fa97aaa6..ea987600b9 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index b4c0dbe7a1..0a492a125e 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index d4dd7163e2..b0d49c9e44 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.10.6 +- @tiptap/extension-gapcursor@3.10.6 +- @tiptap/extension-list-item@3.10.6 +- @tiptap/extension-list-keymap@3.10.6 +- @tiptap/core@3.10.6 +- @tiptap/extension-blockquote@3.10.6 +- @tiptap/extension-bold@3.10.6 +- @tiptap/extension-bullet-list@3.10.6 +- @tiptap/extension-code@3.10.6 +- @tiptap/extension-code-block@3.10.6 +- @tiptap/extension-document@3.10.6 +- @tiptap/extension-hard-break@3.10.6 +- @tiptap/extension-heading@3.10.6 +- @tiptap/extension-horizontal-rule@3.10.6 +- @tiptap/extension-italic@3.10.6 +- @tiptap/extension-link@3.10.6 +- @tiptap/extension-list@3.10.6 +- @tiptap/extension-ordered-list@3.10.6 +- @tiptap/extension-paragraph@3.10.6 +- @tiptap/extension-strike@3.10.6 +- @tiptap/extension-text@3.10.6 +- @tiptap/extension-underline@3.10.6 +- @tiptap/extensions@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 18f43dd810..e200a7d5ca 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 5280fbfbfd..0dccbd6e2f 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index b60858bac8..38127201cb 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 9487a5eb78..c2a79432a9 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 328512fbb0..650a48c44e 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index e7f6027d16..5cbd31d874 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- a7213b5: Fix BubbleMenu and FloatingMenu component runtime errors in Vue 2. + - @tiptap/core@3.10.6 + - @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 0428143183..340e64f0ad 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 7acdbf05d2..2649dcda39 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.6 + +### Patch Changes + +- @tiptap/core@3.10.6 +- @tiptap/pm@3.10.6 + ## 3.10.5 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 155b2a46b8..2b680dec07 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.5", + "version": "3.10.6", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From ede205dc23e4e29b4e257dbf3720fca9d30f8087 Mon Sep 17 00:00:00 2001 From: bdbch Date: Wed, 12 Nov 2025 22:36:16 +0100 Subject: [PATCH 507/629] fix: update TypeScript paths to use .ts extensions for better resolution --- demos/tsconfig.json | 34 +--------------------------------- tests/cypress/tsconfig.json | 8 ++++---- tsconfig.build.json | 32 -------------------------------- tsconfig.json | 8 ++++---- 4 files changed, 9 insertions(+), 73 deletions(-) diff --git a/demos/tsconfig.json b/demos/tsconfig.json index c427c24993..fc3731a11d 100644 --- a/demos/tsconfig.json +++ b/demos/tsconfig.json @@ -4,39 +4,7 @@ "skipLibCheck": true, "types": ["node"], "module": "nodenext", - "moduleResolution": "nodenext", - "paths": { - "@tiptap/static-renderer/pm/html-string": [ - "../packages/static-renderer/src/pm/html-string/index.js", - "../packages/static-renderer/src/pm/html-string/index.ts" - ], - "@tiptap/static-renderer/pm/markdown": [ - "../packages/static-renderer/src/pm/markdown/index.js", - "../packages/static-renderer/src/pm/markdown/index.ts" - ], - "@tiptap/static-renderer/pm/react": [ - "../packages/static-renderer/src/pm/react/index.js", - "../packages/static-renderer/src/pm/react/index.ts" - ], - "@tiptap/static-renderer/json/html-string": [ - "../packages/static-renderer/src/json/html-string/index.js", - "../packages/static-renderer/src/json/html-string/index.ts" - ], - "@tiptap/static-renderer/json/react": [ - "../packages/static-renderer/src/json/react/index.js", - "../packages/static-renderer/src/json/react/index.ts" - ], - "@tiptap/*": [ - "../packages/*/src/index.js", - "../packages/*/src", - "../packages/*/dist/index.js", - "../packages/*/dist", - "../packages-deprecated/*/src/index.js", - "../packages-deprecated/*/src", - "../packages-deprecated/*/dist/index.js", - "../packages-deprecated/*/dist" - ] - } + "moduleResolution": "nodenext" }, "include": [ "../packages/*/src/**/*.d.ts", diff --git a/tests/cypress/tsconfig.json b/tests/cypress/tsconfig.json index a4c1af6b68..bfed8d55a9 100644 --- a/tests/cypress/tsconfig.json +++ b/tests/cypress/tsconfig.json @@ -31,13 +31,13 @@ ], "@tiptap/*": [ "packages/*/src/index.js", - "packages/*/src", + "packages/*/src/index.ts", "packages/*/dist/index.js", - "packages/*/dist", + "packages/*/dist/index.ts", "packages-deprecated/*/src/index.js", - "packages-deprecated/*/src", + "packages-deprecated/*/src/index.ts", "packages-deprecated/*/dist/index.js", - "packages-deprecated/*/dist" + "packages-deprecated/*/dist/index.ts" ] }, "typeRoots": ["../../node_modules/@types", "../../node_modules/"] diff --git a/tsconfig.build.json b/tsconfig.build.json index bf40cf7752..be33c55e24 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -2,38 +2,6 @@ "extends": "./tsconfig.json", "compilerOptions": { "rootDir": "../../", - "paths": { - "@tiptap/static-renderer/pm/html-string": [ - "packages/static-renderer/src/pm/html-string/index.js", - "packages/static-renderer/src/pm/html-string/index.ts" - ], - "@tiptap/static-renderer/pm/markdown": [ - "packages/static-renderer/src/pm/markdown/index.js", - "packages/static-renderer/src/pm/markdown/index.ts" - ], - "@tiptap/static-renderer/pm/react": [ - "packages/static-renderer/src/pm/react/index.js", - "packages/static-renderer/src/pm/react/index.ts" - ], - "@tiptap/static-renderer/json/html-string": [ - "packages/static-renderer/src/json/html-string/index.js", - "packages/static-renderer/src/json/html-string/index.ts" - ], - "@tiptap/static-renderer/json/react": [ - "packages/static-renderer/src/json/react/index.js", - "packages/static-renderer/src/json/react/index.ts" - ], - "@tiptap/*": [ - "packages/*/src/index.js", - "packages/*/src", - "packages/*/dist/index.js", - "packages/*/dist", - "packages-deprecated/*/src/index.js", - "packages-deprecated/*/src", - "packages-deprecated/*/dist/index.js", - "packages-deprecated/*/dist" - ] - }, "lib": ["esnext", "dom", "dom.iterable", "scripthost"] } } diff --git a/tsconfig.json b/tsconfig.json index cb7bbd95c6..49a91a2fdc 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -39,13 +39,13 @@ ], "@tiptap/*": [ "packages/*/src/index.js", - "packages/*/src", + "packages/*/src/index.ts", "packages/*/dist/index.js", - "packages/*/dist", + "packages/*/dist/index.ts", "packages-deprecated/*/src/index.js", - "packages-deprecated/*/src", + "packages-deprecated/*/src/index.ts", "packages-deprecated/*/dist/index.js", - "packages-deprecated/*/dist" + "packages-deprecated/*/dist/index.ts" ] }, "lib": ["esnext", "dom", "dom.iterable", "scripthost"] From e8ea597fc85d59d579e7015a558720ac288ea795 Mon Sep 17 00:00:00 2001 From: bdbch Date: Wed, 12 Nov 2025 22:53:49 +0100 Subject: [PATCH 508/629] feat: add MultipleEditors component with dynamic editor creation --- .../MultipleEditorStyles/React/index.html | 0 .../MultipleEditorStyles/React/index.tsx | 44 +++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 demos/src/Experiments/MultipleEditorStyles/React/index.html create mode 100644 demos/src/Experiments/MultipleEditorStyles/React/index.tsx diff --git a/demos/src/Experiments/MultipleEditorStyles/React/index.html b/demos/src/Experiments/MultipleEditorStyles/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Experiments/MultipleEditorStyles/React/index.tsx b/demos/src/Experiments/MultipleEditorStyles/React/index.tsx new file mode 100644 index 0000000000..f1ac9bffda --- /dev/null +++ b/demos/src/Experiments/MultipleEditorStyles/React/index.tsx @@ -0,0 +1,44 @@ +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import { useState } from 'react' + +function EditorComponent({ label }: { label?: string }) { + const editor = useEditor({ + extensions: [StarterKit], + content: '

Hello World!

', + editorProps: { + attributes: { + style: 'padding: 8px', + }, + }, + }) + + return ( +
+
{label}
+ +
+ ) +} + +export default function MultipleEditors() { + const [editorA, setEditorA] = useState(false) + const [editorB, setEditorB] = useState(false) + + const toolbar = ( +
+ + +
+ ) + + return ( +
+ {toolbar} +
+ {editorA && } + {editorB && } +
+
+ ) +} From 52e7b899c5d6c472c3d925d3fd5a2ba2d72756a7 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 12 Nov 2025 23:59:55 +0100 Subject: [PATCH 509/629] fix: resolve Vue 2 BubbleMenu plugin registration lifecycle issue (#7226) The BubbleMenu component was using a watcher with immediate: true, causing it to execute before the component mounted. This resulted in $el being null/undefined, preventing registerPlugin from ever being called. Changed to use the mounted lifecycle hook to ensure the DOM element exists before plugin registration, matching the Vue 3 implementation approach. Co-authored-by: Claude --- ...bble-menu-registration-quiet-storm-peak.md | 5 ++ ...bubble-menu-vue2-errors-calm-river-dawn.md | 5 -- packages/vue-2/src/menus/BubbleMenu.ts | 71 +++++++++---------- 3 files changed, 39 insertions(+), 42 deletions(-) create mode 100644 .changeset/fix-bubble-menu-registration-quiet-storm-peak.md delete mode 100644 .changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md diff --git a/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md b/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md new file mode 100644 index 0000000000..73b281bd16 --- /dev/null +++ b/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md @@ -0,0 +1,5 @@ +--- +"@tiptap/vue-2": patch +--- + +Fix BubbleMenu plugin registration not triggering due to missing element reference during component initialization. diff --git a/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md b/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md deleted file mode 100644 index a97a292fd1..0000000000 --- a/.changeset/fix-bubble-menu-vue2-errors-calm-river-dawn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/vue-2": patch ---- - -Fix BubbleMenu and FloatingMenu component runtime errors in Vue 2. diff --git a/packages/vue-2/src/menus/BubbleMenu.ts b/packages/vue-2/src/menus/BubbleMenu.ts index f04b58d6f1..de2df0f612 100644 --- a/packages/vue-2/src/menus/BubbleMenu.ts +++ b/packages/vue-2/src/menus/BubbleMenu.ts @@ -1,9 +1,11 @@ import type { BubbleMenuPluginProps } from '@tiptap/extension-bubble-menu' import { BubbleMenuPlugin } from '@tiptap/extension-bubble-menu' -import type { Component, CreateElement, PropType } from 'vue' -import type Vue from 'vue' +import type { Component, CreateElement, PropType, VNode } from 'vue' -export interface BubbleMenuInterface extends Vue { +export interface BubbleMenuInterface { + $el: HTMLElement + $nextTick: (callback: () => void) => void + $slots: { default?: VNode[] } pluginKey: BubbleMenuPluginProps['pluginKey'] editor: BubbleMenuPluginProps['editor'] updateDelay: BubbleMenuPluginProps['updateDelay'] @@ -52,40 +54,35 @@ export const BubbleMenu: Component = { }, }, - watch: { - editor: { - immediate: true, - handler(this: BubbleMenuInterface, editor: BubbleMenuPluginProps['editor']) { - if (!editor) { - return - } - - if (!this.$el) { - return - } - - ;(this.$el as HTMLElement).style.visibility = 'hidden' - ;(this.$el as HTMLElement).style.position = 'absolute' - - this.$el.remove() - - this.$nextTick(() => { - editor.registerPlugin( - BubbleMenuPlugin({ - updateDelay: this.updateDelay, - resizeDelay: this.resizeDelay, - options: this.options, - editor, - element: this.$el as HTMLElement, - pluginKey: this.pluginKey, - appendTo: this.appendTo, - shouldShow: this.shouldShow, - getReferencedVirtualElement: this.getReferencedVirtualElement, - }), - ) - }) - }, - }, + mounted(this: BubbleMenuInterface) { + const editor = this.editor + const el = this.$el as HTMLElement + + if (!editor || !el) { + return + } + + el.style.visibility = 'hidden' + el.style.position = 'absolute' + + // Remove element from DOM; plugin will re-parent it when shown + el.remove() + + this.$nextTick(() => { + editor.registerPlugin( + BubbleMenuPlugin({ + updateDelay: this.updateDelay, + resizeDelay: this.resizeDelay, + options: this.options, + editor, + element: el, + pluginKey: this.pluginKey, + appendTo: this.appendTo, + shouldShow: this.shouldShow, + getReferencedVirtualElement: this.getReferencedVirtualElement, + }), + ) + }) }, render(this: BubbleMenuInterface, createElement: CreateElement) { From 470f42228b7658c2547f86f9e18f1d761cfee9f0 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 12 Nov 2025 23:59:55 +0100 Subject: [PATCH 510/629] fix: resolve Vue 2 BubbleMenu plugin registration lifecycle issue (#7226) The BubbleMenu component was using a watcher with immediate: true, causing it to execute before the component mounted. This resulted in $el being null/undefined, preventing registerPlugin from ever being called. Changed to use the mounted lifecycle hook to ensure the DOM element exists before plugin registration, matching the Vue 3 implementation approach. Co-authored-by: Claude --- ...bble-menu-registration-quiet-storm-peak.md | 5 ++ packages/vue-2/src/menus/BubbleMenu.ts | 71 +++++++++---------- 2 files changed, 39 insertions(+), 37 deletions(-) create mode 100644 .changeset/fix-bubble-menu-registration-quiet-storm-peak.md diff --git a/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md b/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md new file mode 100644 index 0000000000..73b281bd16 --- /dev/null +++ b/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md @@ -0,0 +1,5 @@ +--- +"@tiptap/vue-2": patch +--- + +Fix BubbleMenu plugin registration not triggering due to missing element reference during component initialization. diff --git a/packages/vue-2/src/menus/BubbleMenu.ts b/packages/vue-2/src/menus/BubbleMenu.ts index f04b58d6f1..de2df0f612 100644 --- a/packages/vue-2/src/menus/BubbleMenu.ts +++ b/packages/vue-2/src/menus/BubbleMenu.ts @@ -1,9 +1,11 @@ import type { BubbleMenuPluginProps } from '@tiptap/extension-bubble-menu' import { BubbleMenuPlugin } from '@tiptap/extension-bubble-menu' -import type { Component, CreateElement, PropType } from 'vue' -import type Vue from 'vue' +import type { Component, CreateElement, PropType, VNode } from 'vue' -export interface BubbleMenuInterface extends Vue { +export interface BubbleMenuInterface { + $el: HTMLElement + $nextTick: (callback: () => void) => void + $slots: { default?: VNode[] } pluginKey: BubbleMenuPluginProps['pluginKey'] editor: BubbleMenuPluginProps['editor'] updateDelay: BubbleMenuPluginProps['updateDelay'] @@ -52,40 +54,35 @@ export const BubbleMenu: Component = { }, }, - watch: { - editor: { - immediate: true, - handler(this: BubbleMenuInterface, editor: BubbleMenuPluginProps['editor']) { - if (!editor) { - return - } - - if (!this.$el) { - return - } - - ;(this.$el as HTMLElement).style.visibility = 'hidden' - ;(this.$el as HTMLElement).style.position = 'absolute' - - this.$el.remove() - - this.$nextTick(() => { - editor.registerPlugin( - BubbleMenuPlugin({ - updateDelay: this.updateDelay, - resizeDelay: this.resizeDelay, - options: this.options, - editor, - element: this.$el as HTMLElement, - pluginKey: this.pluginKey, - appendTo: this.appendTo, - shouldShow: this.shouldShow, - getReferencedVirtualElement: this.getReferencedVirtualElement, - }), - ) - }) - }, - }, + mounted(this: BubbleMenuInterface) { + const editor = this.editor + const el = this.$el as HTMLElement + + if (!editor || !el) { + return + } + + el.style.visibility = 'hidden' + el.style.position = 'absolute' + + // Remove element from DOM; plugin will re-parent it when shown + el.remove() + + this.$nextTick(() => { + editor.registerPlugin( + BubbleMenuPlugin({ + updateDelay: this.updateDelay, + resizeDelay: this.resizeDelay, + options: this.options, + editor, + element: el, + pluginKey: this.pluginKey, + appendTo: this.appendTo, + shouldShow: this.shouldShow, + getReferencedVirtualElement: this.getReferencedVirtualElement, + }), + ) + }) }, render(this: BubbleMenuInterface, createElement: CreateElement) { From 7413f6dd3d22dc8de5f12e1d4a317227e8297c7b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 13 Nov 2025 00:02:25 +0100 Subject: [PATCH 511/629] chore(release): publish a new release version (#7227) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...bble-menu-registration-quiet-storm-peak.md | 5 ---- CHANGELOG.md | 8 +++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 ++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 7 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 142 files changed, 563 insertions(+), 75 deletions(-) delete mode 100644 .changeset/fix-bubble-menu-registration-quiet-storm-peak.md diff --git a/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md b/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md deleted file mode 100644 index 73b281bd16..0000000000 --- a/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/vue-2": patch ---- - -Fix BubbleMenu plugin registration not triggering due to missing element reference during component initialization. diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d1b461c1c..96b9bf5618 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Releases +## v3.10.7 + +### @tiptap/vue-2 + +#### Patch Changes + +- Fix BubbleMenu plugin registration not triggering due to missing element reference during component initialization. + ## v3.10.6 ### @tiptap/vue-2 diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 971ebaf45d..1e0f4b5057 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extensions@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index bff1391524..1c515d9657 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 4d1693816c..d0b7c20294 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extensions@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 0bb66b657e..217785a08f 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index a0c133d3da..d3220d425d 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extensions@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index cdf0707985..643580660c 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 1e32e6d590..385310ff9c 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extensions@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 85353a760f..9149418ff1 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 0ed63542c7..a1a34ed7b8 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extensions@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index f46442f190..be8ee902fe 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 528a47a706..f0cf3d350b 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-list@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index cb1dd0b152..99be8d8e62 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index a647e70a7f..d1d0de194c 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-list@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index c5a467ce0f..4b92300809 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 36fde07fdb..c8660eeb97 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extensions@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 4d9523e4d7..81d05415bc 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 57a8807f07..1f323a6ff7 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-table@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 31f7ab3f63..5a9fb2c7df 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 628025cbc9..72ba45d53b 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-table@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 7badd38ce7..1650a96a1a 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 7af0c72116..c6878916ea 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-table@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 3a4c750150..bad14bf520 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 8ce04f8fe6..955ba83716 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-list@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 9994852245..72771d6737 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index f266c52722..5bbe97c3b6 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-list@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index db3ede9327..06a09f981d 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index c2518e8a85..3cb0cc5369 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 4163d7b7b0..04eb694484 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index cf3e647110..251a442805 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 8c2e140191..7a35927a4f 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 7dbb5c13ab..6c5f251b4b 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index a6189f92bf..7397b7fcb1 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 542ff4ead5..e004b4f883 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index d7b96f1d45..9eadb01d91 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 33c852d82d..35dde73810 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-list@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 1b26254a90..1b304e957a 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 0afd526d49..d3f6f8b3ee 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/extension-code-block@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 082da7fac9..06f478fa42 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 7754b98466..115cfcf38a 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 65cca8cf3c..fb6202c292 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index d684e3bf18..d2169d1bab 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 0678ee4929..5cfe0cb5db 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 201307ed1c..2cee5aea22 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 3045c3a058..944fb36349 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 7ec4acd0e1..e257617c97 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 3fe50806d2..100b629054 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 84e66cfb96..77f2b2ae01 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index e6c82d4911..ab054da1cf 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 0509bbd1f5..01bca16fd4 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/extension-text-style@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index fe7b749389..6a7ec5660c 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index b5c8fa82d7..9aed98c3e8 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index a54f552ed3..b91f479b5c 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index db981624be..8fd2cb602b 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.10.7 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.7 +- @tiptap/pm@3.10.7 +- @tiptap/react@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 7b01abea54..401c8630e9 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 2bd1ab2bb8..6bcfa974a5 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.10.7 + +### Patch Changes + +- Updated dependencies [470f422] + - @tiptap/vue-2@3.10.7 + - @tiptap/extension-drag-handle@3.10.7 + - @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index f69b2dacf1..3f2cfb6450 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index d11f5ade7b..c1cf230cd9 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.10.7 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.7 +- @tiptap/pm@3.10.7 +- @tiptap/vue-3@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index b6726352c9..dad800eb19 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 033bae5f30..17f1b2e757 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/extension-collaboration@3.10.7 +- @tiptap/extension-node-range@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 4cdcfc34c2..9dc9bdebbb 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index fd3695a1af..5d3c420539 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 +- @tiptap/suggestion@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index f9c9f89964..00490ef6ba 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 03cb7c4755..0e4171dcf4 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/extension-text-style@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 85e722f291..f1a2479b7b 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 4c8f60462d..61bc57393f 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index d4900ef27c..73781361cb 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 7552c25cfa..a99083a895 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 4ee2e84fd9..8ea2024b5c 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 4cf73d504b..34ea2ba82a 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 9b82fa9b97..3909ba83ea 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 34b196378c..992ef7b623 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 2d98fe9b91..b13e57dea2 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index c4e2ed4e58..309e1bd45e 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index a6ac2c11e1..737da2984d 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 378841df23..7d9cccf128 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 72234d9916..5c4b754f47 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index e301c37bc5..2d7910f500 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 8702805cd4..940766903a 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 77799bb153..c4d6ba7caa 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/extension-text-style@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index d6afd0366d..4283c1125e 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index c9412230c1..a82fa93d35 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 0ebe2e1aa3..7b4fd08e8d 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index e70a5f5617..a7860ece14 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index e9b97a69e3..cb6cefa51b 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index b97b7b9c52..b3ee91e31c 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index b9d8e47891..9f50a89e84 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 543c0a138f..5022a5d4af 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 30d44c929d..5cf8edfb91 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index c6a0e1fea2..dea09ba9f9 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 +- @tiptap/suggestion@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index d09cdc7fb6..79a8ab1f5e 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index c9da987579..0945eba224 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 03b7837440..557cb0daac 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index c7b12c1f36..0e64bac626 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-list@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index a578ca83a8..9a7f500a15 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 3f8e698eec..62064e295d 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index af22456f89..9f6f888d22 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 470aa05f9d..ea472f0a31 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 6966a5680d..187cdcb8d9 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 9300fd893d..e242c3a55b 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 202cf2c62f..2e01154158 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 71ec49b92b..e8fe041bb2 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 6c598cfa53..5fc1808b96 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index f13375dc66..b4a310e5e0 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 11858d74cd..c8949c0438 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 0559d2f7c8..9784eda6d3 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 645852d862..dbb889861f 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 1d610767ca..9812915096 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 35384bb880..1d292fb438 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index e6a9e06698..09646f6081 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 1a70e0eaae..4331a33378 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 788857351a..e0202894d3 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 815f586dde..06986a587e 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index ea623e1add..1ef64f95d2 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index c569702c29..841badbe2d 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index e4343b7ad4..d61c999e7e 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 0d4855f0bd..4b5a7ff208 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 83287b96a1..58a6ee38ab 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 7fcf0950c6..c16850d720 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index bd6ef3d2cd..1373a47d2f 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 25930e1928..3d95cf1807 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index eb0c2f2480..9f4b7863b2 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 51829fd6f5..aded486c05 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 93436b544c..593cb5e676 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 53fc0cd77c..fde08cf0d3 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 304a2f8a9a..3f3e7aabac 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/markdown +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index d7ad8ff64c..6bbe248dfb 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 4eaea593f3..19e18c897d 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.7 + ## 3.10.6 ## 3.10.5 diff --git a/packages/pm/package.json b/packages/pm/package.json index fc157dd59e..bec082f096 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index ea987600b9..6d0b6b8ed5 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 0a492a125e..82f98cd08a 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index b0d49c9e44..9cb6abc0cc 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.10.7 +- @tiptap/extension-gapcursor@3.10.7 +- @tiptap/extension-list-item@3.10.7 +- @tiptap/extension-list-keymap@3.10.7 +- @tiptap/core@3.10.7 +- @tiptap/extension-blockquote@3.10.7 +- @tiptap/extension-bold@3.10.7 +- @tiptap/extension-bullet-list@3.10.7 +- @tiptap/extension-code@3.10.7 +- @tiptap/extension-code-block@3.10.7 +- @tiptap/extension-document@3.10.7 +- @tiptap/extension-hard-break@3.10.7 +- @tiptap/extension-heading@3.10.7 +- @tiptap/extension-horizontal-rule@3.10.7 +- @tiptap/extension-italic@3.10.7 +- @tiptap/extension-link@3.10.7 +- @tiptap/extension-list@3.10.7 +- @tiptap/extension-ordered-list@3.10.7 +- @tiptap/extension-paragraph@3.10.7 +- @tiptap/extension-strike@3.10.7 +- @tiptap/extension-text@3.10.7 +- @tiptap/extension-underline@3.10.7 +- @tiptap/extensions@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index e200a7d5ca..6b0fd826d5 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 0dccbd6e2f..9de83f28c8 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 38127201cb..1d98b11502 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index c2a79432a9..ed259a4bf5 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 650a48c44e..789ca6e2d4 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 5cbd31d874..b8c3ff0a09 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- 470f422: Fix BubbleMenu plugin registration not triggering due to missing element reference during component initialization. + - @tiptap/core@3.10.7 + - @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 340e64f0ad..756ff15974 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 2649dcda39..d436c9b909 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.10.7 + +### Patch Changes + +- @tiptap/core@3.10.7 +- @tiptap/pm@3.10.7 + ## 3.10.6 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 2b680dec07..d7e232860b 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.6", + "version": "3.10.7", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 1e07817eac558cfa8db26b5c96ab82926df42602 Mon Sep 17 00:00:00 2001 From: bdbch Date: Thu, 13 Nov 2025 00:04:01 +0100 Subject: [PATCH 512/629] remove duplicated changeset --- .changeset/fix-bubble-menu-registration-quiet-storm-peak.md | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 .changeset/fix-bubble-menu-registration-quiet-storm-peak.md diff --git a/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md b/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md deleted file mode 100644 index 73b281bd16..0000000000 --- a/.changeset/fix-bubble-menu-registration-quiet-storm-peak.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/vue-2": patch ---- - -Fix BubbleMenu plugin registration not triggering due to missing element reference during component initialization. From 837524183bf58b87abb4b6524e1af09531de01b1 Mon Sep 17 00:00:00 2001 From: Andrew Fong Date: Thu, 13 Nov 2025 01:18:31 -0800 Subject: [PATCH 513/629] fix(markdown): parsed block content should account for leading newlines (#7225) * Parsed block content should account for leading newlines Fixes #7220 * Add integration test * Changeset * Update curvy-foxes-wonder.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/curvy-foxes-wonder.md | 5 +++ .../utilities/markdown/parseIndentedBlocks.ts | 3 +- .../integration/markdown/conversion.spec.ts | 41 +++++++++++++++++++ 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 .changeset/curvy-foxes-wonder.md diff --git a/.changeset/curvy-foxes-wonder.md b/.changeset/curvy-foxes-wonder.md new file mode 100644 index 0000000000..8e3db82791 --- /dev/null +++ b/.changeset/curvy-foxes-wonder.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Fixed a bug that caused extra characters to be inserted after a parsed, nestable content block by accounting for leading newlines diff --git a/packages/core/src/utilities/markdown/parseIndentedBlocks.ts b/packages/core/src/utilities/markdown/parseIndentedBlocks.ts index 9f41e8b855..ae4956bd21 100644 --- a/packages/core/src/utilities/markdown/parseIndentedBlocks.ts +++ b/packages/core/src/utilities/markdown/parseIndentedBlocks.ts @@ -103,6 +103,7 @@ export function parseIndentedBlocks( break } else if (currentLine.trim() === '') { i += 1 + totalRaw = `${totalRaw}${currentLine}\n` continue } else { return undefined @@ -188,6 +189,6 @@ export function parseIndentedBlocks( return { items, - raw: totalRaw.trim(), + raw: totalRaw, } } diff --git a/tests/cypress/integration/markdown/conversion.spec.ts b/tests/cypress/integration/markdown/conversion.spec.ts index b3e1a2dc00..2ddfd19078 100644 --- a/tests/cypress/integration/markdown/conversion.spec.ts +++ b/tests/cypress/integration/markdown/conversion.spec.ts @@ -122,6 +122,47 @@ describe('Markdown Conversion Tests', () => { }) }) + describe('convert taskList with leading paragraph from and to markdown', () => { + const markdownWithLeadingParagraph = `Leading paragraph + +- [ ] Task` + + const expectedJSON = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'Leading paragraph' }], + }, + { + type: 'taskList', + content: [ + { + type: 'taskItem', + attrs: { checked: false }, + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'Task' }], + }, + ], + }, + ], + }, + ], + } + + it('should convert markdown with leading paragraph to expected JSON structure', () => { + const json = markdownManager.parse(markdownWithLeadingParagraph) + expect(json).to.deep.equal(expectedJSON) + }) + + it('should convert JSON structure back to expected markdown', () => { + const md = markdownManager.serialize(expectedJSON) + expect(md).to.equal(markdownWithLeadingParagraph) + }) + }) + Object.values(conversionfiles).forEach(file => { describe(`convert ${file.name} from and to markdown`, () => { it(`should convert ${file.name} markdown to expected JSON structure`, () => { From 95d3e806331a655552a08b53e2a5cb8640e749a5 Mon Sep 17 00:00:00 2001 From: Nick Perez Date: Tue, 18 Nov 2025 15:52:35 +0100 Subject: [PATCH 514/629] fix: allow `undefined` as a value for the `default` attribute key (#7236) * fix: allow `undefined` as a value for the `default` attribute key Previously it was legal to specify: ```js const CustomNode = Node.create({ name: 'customNode', addAttributes() { return { optionalAttr: { // default is set explicitly to undefined, so it should be preserved default: undefined, }, } }, }) ``` but with the change introduced by PR #7198, it is no longer allowed to have a default that is set to `undefined`, it can only be set to `null`. This fixes that by checking the attributes object to see whether the `default` key is in the object. Which should be explicit enough that the user wants that value to be the default, no matter what it's value actually is. * test: add test case to prove the fix * chore: put back previous condition --- .changeset/five-snakes-deliver.md | 5 +++++ packages/core/src/helpers/getSchemaByResolvedExtensions.ts | 4 ++-- tests/cypress/integration/core/requiredAttributes.spec.ts | 4 ++++ 3 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 .changeset/five-snakes-deliver.md diff --git a/.changeset/five-snakes-deliver.md b/.changeset/five-snakes-deliver.md new file mode 100644 index 0000000000..b5c77d109a --- /dev/null +++ b/.changeset/five-snakes-deliver.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +allow `undefined` as a value for the `default` attribute key diff --git a/packages/core/src/helpers/getSchemaByResolvedExtensions.ts b/packages/core/src/helpers/getSchemaByResolvedExtensions.ts index aef82a8b2c..4bdcd56d74 100644 --- a/packages/core/src/helpers/getSchemaByResolvedExtensions.ts +++ b/packages/core/src/helpers/getSchemaByResolvedExtensions.ts @@ -34,8 +34,8 @@ function buildAttributeSpec( ): [string, Record] { const spec: Record = {} - // Only include 'default' if the attribute is not required and default is defined - if (!extensionAttribute?.attribute?.isRequired && extensionAttribute?.attribute?.default !== undefined) { + // Only include 'default' if the attribute is not required and default is set on the attribute + if (!extensionAttribute?.attribute?.isRequired && 'default' in (extensionAttribute?.attribute || {})) { spec.default = extensionAttribute.attribute.default } diff --git a/tests/cypress/integration/core/requiredAttributes.spec.ts b/tests/cypress/integration/core/requiredAttributes.spec.ts index 0e81ce7e49..0d6a778ce0 100644 --- a/tests/cypress/integration/core/requiredAttributes.spec.ts +++ b/tests/cypress/integration/core/requiredAttributes.spec.ts @@ -92,6 +92,9 @@ describe('Required Attributes', () => { attrWithFalse: { default: false, }, + attrWithUndefined: { + default: undefined, + }, } }, }) @@ -108,6 +111,7 @@ describe('Required Attributes', () => { expect(nodeType.spec.attrs?.attrWithValue).to.have.property('default', 'defaultValue') expect(nodeType.spec.attrs?.attrWithZero).to.have.property('default', 0) expect(nodeType.spec.attrs?.attrWithFalse).to.have.property('default', false) + expect(nodeType.spec.attrs?.attrWithUndefined).to.have.property('default', undefined) editor.destroy() }) From f3bb5c14fa7286d040ca4031c550b74a926e67f5 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 18 Nov 2025 15:53:14 +0100 Subject: [PATCH 515/629] fix(markdown): downgrade marked to v15 for CommonJS compatibility (#7241) Downgraded the marked dependency from v16 to v15 to restore CommonJS support. The marked v16+ package is ESM-only and causes ERR_REQUIRE_ESM errors when used in CommonJS environments with require(). This change ensures @tiptap/markdown works in both ESM and CommonJS Node.js projects. --- .changeset/markdown-marked-downgrade.md | 5 +++++ packages/markdown/package.json | 2 +- pnpm-lock.yaml | 12 ++++++------ 3 files changed, 12 insertions(+), 7 deletions(-) create mode 100644 .changeset/markdown-marked-downgrade.md diff --git a/.changeset/markdown-marked-downgrade.md b/.changeset/markdown-marked-downgrade.md new file mode 100644 index 0000000000..8fc6878fed --- /dev/null +++ b/.changeset/markdown-marked-downgrade.md @@ -0,0 +1,5 @@ +--- +'@tiptap/markdown': patch +--- + +Fixed CommonJS compatibility by downgrading `marked` dependency from v16 to v15. diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 6bbe248dfb..bd61937448 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -34,7 +34,7 @@ "dist" ], "dependencies": { - "marked": "^16.1.2" + "marked": "^15.0.12" }, "devDependencies": { "@tiptap/core": "workspace:^", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d7a5b931cc..56a91f03d3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -900,8 +900,8 @@ importers: packages/markdown: dependencies: marked: - specifier: ^16.1.2 - version: 16.1.2 + specifier: ^15.0.12 + version: 15.0.12 devDependencies: '@tiptap/core': specifier: workspace:^ @@ -5423,9 +5423,9 @@ packages: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true - marked@16.1.2: - resolution: {integrity: sha512-rNQt5EvRinalby7zJZu/mB+BvaAY2oz3wCuCjt1RDrWNpS1Pdf9xqMOeC9Hm5adBdcV/3XZPJpG58eT+WBc0XQ==} - engines: {node: '>= 20'} + marked@15.0.12: + resolution: {integrity: sha512-8dD6FusOQSrpv9Z1rdNMdlSgQOIP880DHqnohobOmYLElGEqAL/JvxvuxZO16r4HtjTlfPRDC1hbvxC9dPN2nA==} + engines: {node: '>= 18'} hasBin: true math-intrinsics@1.1.0: @@ -11850,7 +11850,7 @@ snapshots: punycode.js: 2.3.1 uc.micro: 2.1.0 - marked@16.1.2: {} + marked@15.0.12: {} math-intrinsics@1.1.0: {} From abc5b34be6bdedcd1d73f8e04f339f33d08240e0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 18 Nov 2025 15:55:48 +0100 Subject: [PATCH 516/629] chore(release): publish a new release version (#7242) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/curvy-foxes-wonder.md | 5 --- .changeset/eleven-brooms-jog.md | 5 --- .changeset/five-snakes-deliver.md | 5 --- ...text-align-can-check-bright-moon-forest.md | 5 --- ...ttributes-return-value-blue-sky-thunder.md | 5 --- ...tube-rendering-stops-sunny-ocean-breeze.md | 5 --- .changeset/markdown-marked-downgrade.md | 5 --- CHANGELOG.md | 29 ++++++++++++++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 10 ++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 10 ++++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 10 ++++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 11 +++++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 12 +++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 11 +++++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 10 ++++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 11 +++++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 11 +++++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 12 +++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 10 ++++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 13 ++++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 12 +++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 12 +++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 11 +++++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 10 ++++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 10 ++++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 10 ++++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 11 +++++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 10 ++++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 12 +++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 10 ++++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 11 +++++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 11 +++++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 11 +++++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 12 +++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 11 +++++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 10 ++++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 10 ++++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 11 +++++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 11 +++++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 11 +++++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 11 +++++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 11 +++++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 10 ++++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 10 ++++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 10 ++++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 10 ++++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 11 +++++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 10 ++++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 11 +++++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 11 +++++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 12 +++++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 11 +++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 33 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 12 +++++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 11 +++++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 11 +++++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 11 +++++++ packages/vue-3/package.json | 2 +- 148 files changed, 781 insertions(+), 105 deletions(-) delete mode 100644 .changeset/curvy-foxes-wonder.md delete mode 100644 .changeset/eleven-brooms-jog.md delete mode 100644 .changeset/five-snakes-deliver.md delete mode 100644 .changeset/fix-text-align-can-check-bright-moon-forest.md delete mode 100644 .changeset/fix-update-reset-attributes-return-value-blue-sky-thunder.md delete mode 100644 .changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md delete mode 100644 .changeset/markdown-marked-downgrade.md diff --git a/.changeset/curvy-foxes-wonder.md b/.changeset/curvy-foxes-wonder.md deleted file mode 100644 index 8e3db82791..0000000000 --- a/.changeset/curvy-foxes-wonder.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Fixed a bug that caused extra characters to be inserted after a parsed, nestable content block by accounting for leading newlines diff --git a/.changeset/eleven-brooms-jog.md b/.changeset/eleven-brooms-jog.md deleted file mode 100644 index bc804556b1..0000000000 --- a/.changeset/eleven-brooms-jog.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -Add documentation comments to Tiptap JSON types diff --git a/.changeset/five-snakes-deliver.md b/.changeset/five-snakes-deliver.md deleted file mode 100644 index b5c77d109a..0000000000 --- a/.changeset/five-snakes-deliver.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/core': patch ---- - -allow `undefined` as a value for the `default` attribute key diff --git a/.changeset/fix-text-align-can-check-bright-moon-forest.md b/.changeset/fix-text-align-can-check-bright-moon-forest.md deleted file mode 100644 index 921fd23422..0000000000 --- a/.changeset/fix-text-align-can-check-bright-moon-forest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-text-align": patch ---- - -Fix `setTextAlign` and `unsetTextAlign` commands to work correctly with `.can()` checks. Changed logic from `.every()` to `.some()` to return `true` when at least one configured node type matches, rather than requiring all types to match. diff --git a/.changeset/fix-update-reset-attributes-return-value-blue-sky-thunder.md b/.changeset/fix-update-reset-attributes-return-value-blue-sky-thunder.md deleted file mode 100644 index f22c78fb32..0000000000 --- a/.changeset/fix-update-reset-attributes-return-value-blue-sky-thunder.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Fix `updateAttributes` and `resetAttributes` commands to return accurate results when used with `.can()`. Previously, these commands would always return `true` even when they couldn't perform the operation. Now they correctly return `false` when no matching nodes or marks are found in the selection. diff --git a/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md b/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md deleted file mode 100644 index 593a9d75ee..0000000000 --- a/.changeset/fix-youtube-rendering-stops-sunny-ocean-breeze.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/static-renderer': patch ---- - -Fix static HTML renderer incorrectly generating self-closing tags for HTML elements that require proper closing tags (iframe, script, style, etc.). diff --git a/.changeset/markdown-marked-downgrade.md b/.changeset/markdown-marked-downgrade.md deleted file mode 100644 index 8fc6878fed..0000000000 --- a/.changeset/markdown-marked-downgrade.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/markdown': patch ---- - -Fixed CommonJS compatibility by downgrading `marked` dependency from v16 to v15. diff --git a/CHANGELOG.md b/CHANGELOG.md index 9943df1036..24712f23db 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,34 @@ # Releases +## v3.10.8 + +### @tiptap/core + +#### Patch Changes + +- Fixed a bug that caused extra characters to be inserted after a parsed, nestable content block by accounting for leading newlines +- Add documentation comments to Tiptap JSON types +- allow `undefined` as a value for the `default` attribute key +- Fix `updateAttributes` and `resetAttributes` commands to return accurate results when used with `.can()`. Previously, these commands would always return `true` even when they couldn't perform the operation. Now they correctly return `false` when no matching nodes or marks are found in the selection. + +### @tiptap/extension-text-align + +#### Patch Changes + +- Fix `setTextAlign` and `unsetTextAlign` commands to work correctly with `.can()` checks. Changed logic from `.every()` to `.some()` to return `true` when at least one configured node type matches, rather than requiring all types to match. + +### @tiptap/static-renderer + +#### Patch Changes + +- Fix static HTML renderer incorrectly generating self-closing tags for HTML elements that require proper closing tags (iframe, script, style, etc.). + +### @tiptap/markdown + +#### Patch Changes + +- Fixed CommonJS compatibility by downgrading `marked` dependency from v16 to v15. + ## v3.10.7 ### @tiptap/vue-2 diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 1e0f4b5057..736952097b 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extensions@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 1c515d9657..f865d318ea 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index d0b7c20294..e4ec31282e 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extensions@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 217785a08f..6c584088ef 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index d3220d425d..b050c1c4d1 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extensions@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 643580660c..c4fd8c3392 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 385310ff9c..4414808609 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extensions@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 9149418ff1..0ea33d50d6 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index a1a34ed7b8..fb7f76d874 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extensions@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index be8ee902fe..72f21e7367 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index f0cf3d350b..80250db544 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-list@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 99be8d8e62..ce968ec191 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index d1d0de194c..8d4fe11cf2 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-list@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 4b92300809..0c870f2bdf 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index c8660eeb97..32f96f5ba6 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extensions@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 81d05415bc..cfc91b55a0 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 1f323a6ff7..744b00275d 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-table@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 5a9fb2c7df..1c1dc82a18 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 72ba45d53b..202eb2328b 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-table@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 1650a96a1a..830505a57d 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index c6878916ea..b3f7587e5d 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-table@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index bad14bf520..2d01f47275 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 955ba83716..197b1a3e10 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-list@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 72771d6737..5c76efa9af 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 5bbe97c3b6..a44d156193 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-list@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 06a09f981d..e60c513aa5 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 3cb0cc5369..5f9d211e14 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- 8375241: Fixed a bug that caused extra characters to be inserted after a parsed, nestable content block by accounting for leading newlines +- b7ead7c: Add documentation comments to Tiptap JSON types +- 95d3e80: allow `undefined` as a value for the `default` attribute key +- fd479bd: Fix `updateAttributes` and `resetAttributes` commands to return accurate results when used with `.can()`. Previously, these commands would always return `true` even when they couldn't perform the operation. Now they correctly return `false` when no matching nodes or marks are found in the selection. + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 04eb694484..d469d5615e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 251a442805..41717f9097 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 7a35927a4f..3f41581676 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 6c5f251b4b..0849fed4de 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 7397b7fcb1..b9397c9697 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index e004b4f883..5cdc4c7e4f 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 9eadb01d91..82478b5382 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 35dde73810..b5b5cc583e 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-list@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 1b304e957a..ab85fb58ef 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index d3f6f8b3ee..038b46ead9 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/extension-code-block@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 06f478fa42..1040e22b40 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 115cfcf38a..972cbc8b2f 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index fb6202c292..45f0f3733e 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index d2169d1bab..4a870cd5a5 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 5cfe0cb5db..c2145a6260 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 2cee5aea22..7d6dcc7331 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 944fb36349..53a868136d 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index e257617c97..600c4ebed8 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 100b629054..e0fd4afedb 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 77f2b2ae01..b9356fce3d 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index ab054da1cf..2e21eb3855 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 01bca16fd4..2385b3f052 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/extension-details +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/extension-text-style@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 6a7ec5660c..ec59962ddc 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 9aed98c3e8..4a0886b7e0 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index b91f479b5c..71bfcef554 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 8fd2cb602b..7f73b1fe40 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.10.8 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.8 +- @tiptap/react@3.10.8 +- @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 401c8630e9..3fd22bede6 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 6bcfa974a5..88e01b0126 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.10.8 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.8 +- @tiptap/vue-2@3.10.8 +- @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 3f2cfb6450..5803d0a3c2 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index c1cf230cd9..9cae718893 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.10.8 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.10.8 +- @tiptap/vue-3@3.10.8 +- @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index dad800eb19..6b9812c694 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 17f1b2e757..8e19ab7819 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,18 @@ # @tiptap/extension-drag-handle +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/extension-collaboration@3.10.8 + - @tiptap/extension-node-range@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 9dc9bdebbb..a691ad8bdb 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 5d3c420539..756e4b4433 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/extension-emoji +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/suggestion@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 00490ef6ba..05fd0926f4 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 0e4171dcf4..ef5fa366ed 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/extension-file-handler +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/extension-text-style@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index f1a2479b7b..3bf936bcbc 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 61bc57393f..be26fa8aa2 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 73781361cb..cb20704a3a 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index a99083a895..f0effb1e26 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-text-style@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 8ea2024b5c..92ae5b93e2 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 34ea2ba82a..7c0ef0368a 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 3909ba83ea..929db1e3bb 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 992ef7b623..f0dab0b9e1 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index b13e57dea2..24db7ebca4 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 309e1bd45e..6cc293b2db 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 737da2984d..daf0290770 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 7d9cccf128..630d3e2c71 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 5c4b754f47..8d47249c58 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 2d7910f500..e025425869 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 940766903a..b3c81f6e31 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index c4d6ba7caa..1db4cccf04 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/extension-invisible-characters +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/extension-text-style@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 4283c1125e..ee3313286c 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index a82fa93d35..85b0089841 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 7b4fd08e8d..1f497bdd64 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index a7860ece14..e963843543 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index cb6cefa51b..0ca1394f0d 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index b3ee91e31c..3ea604bf5e 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 9f50a89e84..cd22f035b1 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 5022a5d4af..a6b754dc15 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-mathematics +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 5cf8edfb91..e6033f532a 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index dea09ba9f9..a9af81005b 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/suggestion@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 79a8ab1f5e..6495be889f 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 0945eba224..41648bb9c5 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-node-range +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 557cb0daac..8c90a37594 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 0e64bac626..54b9958b0a 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- @tiptap/extension-list@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 9a7f500a15..eaa70c7a06 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 62064e295d..761c7ede15 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 9f6f888d22..62346cd411 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index ea472f0a31..b301e6bdda 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 187cdcb8d9..84e893f69e 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index e242c3a55b..e8c95c0ec4 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 2e01154158..290e98eb12 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index e8fe041bb2..c348a6c0ee 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 5fc1808b96..84b22a8316 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index b4a310e5e0..1a1deac06d 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-table-of-contents +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index c8949c0438..56685310e5 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 9784eda6d3..f02dd2406a 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index dbb889861f..5b7b68b62b 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 9812915096..e6ecf0b046 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- fd479bd: Fix `setTextAlign` and `unsetTextAlign` commands to work correctly with `.can()` checks. Changed logic from `.every()` to `.some()` to return `true` when at least one configured node type matches, rather than requiring all types to match. +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 1d292fb438..837bbed3f3 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 09646f6081..8b7f657de9 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 4331a33378..8978588b12 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index e0202894d3..e5d8aca676 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 06986a587e..33e31085e5 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 1ef64f95d2..2c7689d215 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 841badbe2d..6210206633 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index d61c999e7e..a853481e55 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 4b5a7ff208..58b3a11db2 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 58a6ee38ab..f9f275659e 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-unique-id +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index c16850d720..4566dafbc8 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 1373a47d2f..58c470146c 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 3d95cf1807..ccc3d75909 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 9f4b7863b2..1b929244d9 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index aded486c05..54061814c4 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 593cb5e676..9adf0d009a 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index fde08cf0d3..c36d60af14 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 3f3e7aabac..37bea2cac8 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/markdown +## 3.10.8 + +### Patch Changes + +- f3bb5c1: Fixed CommonJS compatibility by downgrading `marked` dependency from v16 to v15. +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index bd61937448..f50ce6647e 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 19e18c897d..72fc5c1a99 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.10.8 + ## 3.10.7 ## 3.10.6 diff --git a/packages/pm/package.json b/packages/pm/package.json index bec082f096..9594e2e3c2 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 6d0b6b8ed5..3a31300960 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 82f98cd08a..5f41998b88 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 9cb6abc0cc..d5705e320e 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,38 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/extension-blockquote@3.10.8 + - @tiptap/extension-bold@3.10.8 + - @tiptap/extension-code@3.10.8 + - @tiptap/extension-code-block@3.10.8 + - @tiptap/extension-document@3.10.8 + - @tiptap/extension-hard-break@3.10.8 + - @tiptap/extension-heading@3.10.8 + - @tiptap/extension-horizontal-rule@3.10.8 + - @tiptap/extension-italic@3.10.8 + - @tiptap/extension-link@3.10.8 + - @tiptap/extension-list@3.10.8 + - @tiptap/extension-paragraph@3.10.8 + - @tiptap/extension-strike@3.10.8 + - @tiptap/extension-text@3.10.8 + - @tiptap/extension-underline@3.10.8 + - @tiptap/extensions@3.10.8 + - @tiptap/extension-list-item@3.10.8 + - @tiptap/extension-list-keymap@3.10.8 + - @tiptap/extension-bullet-list@3.10.8 + - @tiptap/extension-ordered-list@3.10.8 + - @tiptap/extension-dropcursor@3.10.8 + - @tiptap/extension-gapcursor@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 6b0fd826d5..267eb9ad7f 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 9de83f28c8..c413fc72fc 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- 32eb2e8: Fix static HTML renderer incorrectly generating self-closing tags for HTML elements that require proper closing tags (iframe, script, style, etc.). +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 1d98b11502..9fbf5e563d 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index ed259a4bf5..e8b1b8add0 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 789ca6e2d4..10cc8472db 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index b8c3ff0a09..c6972bb28d 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 756ff15974..a64f22eea8 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index d436c9b909..57eb74b47d 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.10.8 + +### Patch Changes + +- Updated dependencies [8375241] +- Updated dependencies [b7ead7c] +- Updated dependencies [95d3e80] +- Updated dependencies [fd479bd] + - @tiptap/core@3.10.8 + - @tiptap/pm@3.10.8 + ## 3.10.7 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index d7e232860b..ba00134e17 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.7", + "version": "3.10.8", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 541c93c655d767bbfc559a12f2cbb3ad4869fe14 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 19 Nov 2025 03:09:56 +0100 Subject: [PATCH 517/629] Add RTL/LTR textDirection support (#7207) * feat: add native text direction support for RTL and bidirectional content This adds a new textDirection option to the editor that enables proper rendering of right-to-left languages like Arabic and Hebrew. The option can be set to 'ltr', 'rtl', or 'auto' to control text direction globally. New commands: - setTextDirection(direction, position?) - Set text direction on specific nodes - unsetTextDirection(position?) - Remove text direction from nodes The feature includes: - Global textDirection option on EditorOptions - New TextDirection core extension that adds dir attributes to all nodes - Automatic application of dir attribute to editor element and content nodes - Support for granular control via commands with optional position parameters Fixes #3957 * fix: improve text direction commands and validation - Use tr.doc.nodesBetween instead of doc.nodesBetween in both setTextDirection and unsetTextDirection commands to ensure subsequent iterations see changes from previous iterations - Add validation in parseHTML to only accept valid dir attribute values (ltr, rtl, auto) * fix: simplify direction attribute retrieval in TextDirection extension * fix: consolidate import statements for Range and RawCommands in text direction commands * fix: prevent null dir attributes in JSON export when text direction is not configured When no text direction is explicitly set, the dir attribute was being added to all nodes with a null value, causing it to appear in JSON exports. This fix only adds the dir attribute to the node schema when a direction is actually configured, preventing empty attributes from cluttering exports. --- ...direction-support-golden-river-mountain.md | 5 + .../Examples/TextDirection/React/index.html | 0 .../TextDirection/React/index.spec.js | 25 ++++ .../Examples/TextDirection/React/index.tsx | 106 +++++++++++++++++ .../Examples/TextDirection/React/styles.scss | 109 ++++++++++++++++++ packages/core/src/Editor.ts | 5 + packages/core/src/commands/index.ts | 2 + .../core/src/commands/setTextDirection.ts | 51 ++++++++ .../core/src/commands/unsetTextDirection.ts | 51 ++++++++ packages/core/src/extensions/index.ts | 1 + packages/core/src/extensions/textDirection.ts | 86 ++++++++++++++ packages/core/src/types.ts | 11 +- 12 files changed, 451 insertions(+), 1 deletion(-) create mode 100644 .changeset/add-text-direction-support-golden-river-mountain.md create mode 100644 demos/src/Examples/TextDirection/React/index.html create mode 100644 demos/src/Examples/TextDirection/React/index.spec.js create mode 100644 demos/src/Examples/TextDirection/React/index.tsx create mode 100644 demos/src/Examples/TextDirection/React/styles.scss create mode 100644 packages/core/src/commands/setTextDirection.ts create mode 100644 packages/core/src/commands/unsetTextDirection.ts create mode 100644 packages/core/src/extensions/textDirection.ts diff --git a/.changeset/add-text-direction-support-golden-river-mountain.md b/.changeset/add-text-direction-support-golden-river-mountain.md new file mode 100644 index 0000000000..489e3e543b --- /dev/null +++ b/.changeset/add-text-direction-support-golden-river-mountain.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": minor +--- + +Add native text direction support for RTL and bidirectional content. The editor now includes a `textDirection` option that can be set to `'ltr'`, `'rtl'`, or `'auto'` to control the direction of all content globally. Additionally, new `setTextDirection` and `unsetTextDirection` commands allow for granular control of text direction on specific nodes. This enables proper rendering of right-to-left languages like Arabic and Hebrew, as well as bidirectional text mixing multiple languages. diff --git a/demos/src/Examples/TextDirection/React/index.html b/demos/src/Examples/TextDirection/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Examples/TextDirection/React/index.spec.js b/demos/src/Examples/TextDirection/React/index.spec.js new file mode 100644 index 0000000000..b30860dac6 --- /dev/null +++ b/demos/src/Examples/TextDirection/React/index.spec.js @@ -0,0 +1,25 @@ +context('/src/Examples/TextDirection/React/', () => { + beforeEach(() => { + cy.visit('/src/Examples/TextDirection/React/') + }) + + it('should apply text direction attributes', () => { + cy.get('.tiptap p').first().should('have.attr', 'dir', 'auto') + }) + + it('should change global direction', () => { + cy.get('button').contains('RTL').click() + cy.get('.tiptap p').first().should('have.attr', 'dir', 'rtl') + }) + + it('should set direction on selection', () => { + cy.get('.tiptap p').first().click() + cy.get('button').contains('Set LTR').click() + cy.get('.tiptap p').first().should('have.attr', 'dir', 'ltr') + }) + + it('should unset direction', () => { + cy.get('button').contains('None').click() + cy.get('.tiptap p').first().should('not.have.attr', 'dir') + }) +}) diff --git a/demos/src/Examples/TextDirection/React/index.tsx b/demos/src/Examples/TextDirection/React/index.tsx new file mode 100644 index 0000000000..d03ad8b260 --- /dev/null +++ b/demos/src/Examples/TextDirection/React/index.tsx @@ -0,0 +1,106 @@ +import './styles.scss' + +import type { Editor } from '@tiptap/react' +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React, { useState } from 'react' + +const extensions = [StarterKit] + +function MenuBar({ + editor, + globalDirection, + setGlobalDirection, +}: { + editor: Editor + globalDirection: 'ltr' | 'rtl' | 'auto' | undefined + setGlobalDirection: (dir: 'ltr' | 'rtl' | 'auto' | undefined) => void +}) { + return ( +
+
+ Global Direction: + + + + +
+ +
+ Set Direction on Selection: + + + + +
+
+ ) +} + +export default () => { + const [globalDirection, setGlobalDirection] = useState<'ltr' | 'rtl' | 'auto' | undefined>('auto') + + const editor = useEditor( + { + extensions, + textDirection: globalDirection, + content: ` +

Text Direction Support

+

This demo showcases the text direction feature in Tiptap. You can set the global text direction for all content, or apply it to specific nodes using commands.

+ +

English Text (LTR)

+

This is a paragraph in English, which is a left-to-right language. The text flows naturally from left to right.

+ +

Arabic Text (RTL)

+

هذا مثال على نص باللغة العربية. اللغة العربية تُكتب من اليمين إلى اليسار.

+ +

Hebrew Text (RTL)

+

זהו דוגמה לטקסט בעברית. עברית נכתבת מימין לשמאל.

+ +

Bidirectional Text

+

This paragraph contains both English and Arabic: مرحبا بك في Tiptap! This demonstrates how the auto direction works.

+

Another example: Hello העולם שלום World!

+ +

Lists

+
    +
  • English list item
  • +
  • عنصر قائمة عربي
  • +
  • Mixed: English and عربي together
  • +
+ +
    +
  1. First item
  2. +
  3. البند الثاني
  4. +
  5. Third item: עברית
  6. +
+ +
+

This is a blockquote with مختلط mixed content.

+
+`, + }, + [globalDirection], + ) + + if (!editor) { + return null + } + + return ( +
+ + +
+ ) +} diff --git a/demos/src/Examples/TextDirection/React/styles.scss b/demos/src/Examples/TextDirection/React/styles.scss new file mode 100644 index 0000000000..93dc8e2d1c --- /dev/null +++ b/demos/src/Examples/TextDirection/React/styles.scss @@ -0,0 +1,109 @@ +.tiptap { + :first-child { + margin-top: 0; + } + + ul, + ol { + padding: 0 1rem; + margin: 1.25rem 1rem 1.25rem 0.4rem; + + li p { + margin-top: 0.25em; + margin-bottom: 0.25em; + } + } + + h1, + h2, + h3, + h4, + h5, + h6 { + line-height: 1.1; + margin-top: 2.5rem; + text-wrap: pretty; + } + + h1, + h2 { + margin-top: 3.5rem; + margin-bottom: 1.5rem; + } + + h1 { + font-size: 1.4rem; + } + + h2 { + font-size: 1.2rem; + } + + h3 { + font-size: 1.1rem; + } + + h4, + h5, + h6 { + font-size: 1rem; + } + + code { + background-color: var(--purple-light); + border-radius: 0.4rem; + color: var(--black); + font-size: 0.85rem; + padding: 0.25em 0.3em; + } + + pre { + background: var(--black); + border-radius: 0.5rem; + color: var(--white); + font-family: 'JetBrainsMono', monospace; + margin: 1.5rem 0; + padding: 0.75rem 1rem; + + code { + background: none; + color: inherit; + font-size: 0.8rem; + padding: 0; + } + } + + blockquote { + border-left: 3px solid var(--gray-3); + margin: 1.5rem 0; + padding-left: 1rem; + } + + hr { + border: none; + border-top: 1px solid var(--gray-2); + margin: 2rem 0; + } + + [dir='rtl'] { + text-align: right; + } + + [dir='ltr'] { + text-align: left; + } +} + +.control-group { + .button-group { + display: flex; + flex-wrap: wrap; + gap: 0.5rem; + margin-bottom: 1rem; + align-items: center; + + strong { + margin-right: 0.5rem; + } + } +} diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index cdd5b670c0..6bd4549631 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -17,6 +17,7 @@ import { Keymap, Paste, Tabindex, + TextDirection, } from './extensions/index.js' import { createDocument } from './helpers/createDocument.js' import { getAttributes } from './helpers/getAttributes.js' @@ -87,6 +88,7 @@ export class Editor extends EventEmitter { extensions: [], autofocus: false, editable: true, + textDirection: undefined, editorProps: {}, parseOptions: {}, coreExtensionOptions: {}, @@ -430,6 +432,9 @@ export class Editor extends EventEmitter { Drop, Paste, Delete, + TextDirection.configure({ + direction: this.options.textDirection, + }), ].filter(ext => { if (typeof this.options.enableCoreExtensions === 'object') { return ( diff --git a/packages/core/src/commands/index.ts b/packages/core/src/commands/index.ts index b8c5791a4c..6c1ae905b4 100644 --- a/packages/core/src/commands/index.ts +++ b/packages/core/src/commands/index.ts @@ -39,6 +39,7 @@ export * from './setMark.js' export * from './setMeta.js' export * from './setNode.js' export * from './setNodeSelection.js' +export * from './setTextDirection.js' export * from './setTextSelection.js' export * from './sinkListItem.js' export * from './splitBlock.js' @@ -50,6 +51,7 @@ export * from './toggleWrap.js' export * from './undoInputRule.js' export * from './unsetAllMarks.js' export * from './unsetMark.js' +export * from './unsetTextDirection.js' export * from './updateAttributes.js' export * from './wrapIn.js' export * from './wrapInList.js' diff --git a/packages/core/src/commands/setTextDirection.ts b/packages/core/src/commands/setTextDirection.ts new file mode 100644 index 0000000000..8c62f845a4 --- /dev/null +++ b/packages/core/src/commands/setTextDirection.ts @@ -0,0 +1,51 @@ +import type { Range, RawCommands } from '../types.js' + +declare module '@tiptap/core' { + interface Commands { + setTextDirection: { + /** + * Set the text direction for nodes. + * If no position is provided, it will use the current selection. + * @param direction The text direction to set ('ltr', 'rtl', or 'auto') + * @param position Optional position or range to apply the direction to + * @example editor.commands.setTextDirection('rtl') + * @example editor.commands.setTextDirection('ltr', { from: 0, to: 10 }) + */ + setTextDirection: (direction: 'ltr' | 'rtl' | 'auto', position?: number | Range) => ReturnType + } + } +} + +export const setTextDirection: RawCommands['setTextDirection'] = + (direction, position) => + ({ tr, state, dispatch }) => { + const { selection } = state + let from: number + let to: number + + if (typeof position === 'number') { + from = position + to = position + } else if (position && 'from' in position && 'to' in position) { + from = position.from + to = position.to + } else { + from = selection.from + to = selection.to + } + + if (dispatch) { + tr.doc.nodesBetween(from, to, (node, pos) => { + if (node.isText) { + return + } + + tr.setNodeMarkup(pos, undefined, { + ...node.attrs, + dir: direction, + }) + }) + } + + return true + } diff --git a/packages/core/src/commands/unsetTextDirection.ts b/packages/core/src/commands/unsetTextDirection.ts new file mode 100644 index 0000000000..5423f80277 --- /dev/null +++ b/packages/core/src/commands/unsetTextDirection.ts @@ -0,0 +1,51 @@ +import type { Range, RawCommands } from '../types.js' + +declare module '@tiptap/core' { + interface Commands { + unsetTextDirection: { + /** + * Remove the text direction attribute from nodes. + * If no position is provided, it will use the current selection. + * @param position Optional position or range to remove the direction from + * @example editor.commands.unsetTextDirection() + * @example editor.commands.unsetTextDirection({ from: 0, to: 10 }) + */ + unsetTextDirection: (position?: number | Range) => ReturnType + } + } +} + +export const unsetTextDirection: RawCommands['unsetTextDirection'] = + position => + ({ tr, state, dispatch }) => { + const { selection } = state + let from: number + let to: number + + if (typeof position === 'number') { + from = position + to = position + } else if (position && 'from' in position && 'to' in position) { + from = position.from + to = position.to + } else { + from = selection.from + to = selection.to + } + + if (dispatch) { + tr.doc.nodesBetween(from, to, (node, pos) => { + if (node.isText) { + return + } + + const newAttrs = { ...node.attrs } + + delete newAttrs.dir + + tr.setNodeMarkup(pos, undefined, newAttrs) + }) + } + + return true + } diff --git a/packages/core/src/extensions/index.ts b/packages/core/src/extensions/index.ts index c71c50d968..f962afff84 100644 --- a/packages/core/src/extensions/index.ts +++ b/packages/core/src/extensions/index.ts @@ -7,3 +7,4 @@ export { FocusEvents, focusEventsPluginKey } from './focusEvents.js' export { Keymap } from './keymap.js' export { Paste } from './paste.js' export { Tabindex } from './tabindex.js' +export { TextDirection } from './textDirection.js' diff --git a/packages/core/src/extensions/textDirection.ts b/packages/core/src/extensions/textDirection.ts new file mode 100644 index 0000000000..b22630659d --- /dev/null +++ b/packages/core/src/extensions/textDirection.ts @@ -0,0 +1,86 @@ +import { Plugin, PluginKey } from '@tiptap/pm/state' + +import { Extension } from '../Extension.js' +import { splitExtensions } from '../helpers/splitExtensions.js' + +export interface TextDirectionOptions { + direction: 'ltr' | 'rtl' | 'auto' | undefined +} + +/** + * The TextDirection extension adds support for setting text direction (LTR/RTL/auto) + * on all nodes in the editor. + * + * This extension adds a global `dir` attribute to all node types, which can be used + * to control bidirectional text rendering. The direction can be set globally via + * editor options or per-node using commands. + */ +export const TextDirection = Extension.create({ + name: 'textDirection', + + addOptions() { + return { + direction: undefined, + } + }, + + addGlobalAttributes() { + // Only add the dir attribute to nodes if text direction is configured + // This prevents null/undefined values from appearing in JSON exports + if (!this.options.direction) { + return [] + } + + const { nodeExtensions } = splitExtensions(this.extensions) + + return [ + { + types: nodeExtensions.filter(extension => extension.name !== 'text').map(extension => extension.name), + attributes: { + dir: { + default: this.options.direction, + parseHTML: element => { + const dir = element.getAttribute('dir') + + if (dir && (dir === 'ltr' || dir === 'rtl' || dir === 'auto')) { + return dir + } + + return this.options.direction + }, + renderHTML: attributes => { + if (!attributes.dir) { + return {} + } + + return { + dir: attributes.dir, + } + }, + }, + }, + }, + ] + }, + + addProseMirrorPlugins() { + return [ + new Plugin({ + key: new PluginKey('textDirection'), + props: { + attributes: (): { [name: string]: string } => { + const direction = this.options.direction + + if (!direction) { + return {} + } + + return { + dir: direction, + } + }, + }, + }), + ] + }, +}) diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 1068c87061..2e673d026c 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -292,6 +292,14 @@ export interface EditorOptions { * Whether the editor is editable */ editable: boolean + /** + * The default text direction for all content in the editor. + * When set to 'ltr' or 'rtl', all nodes will have the corresponding dir attribute. + * When set to 'auto', the dir attribute will be set based on content detection. + * When undefined, no dir attribute will be added. + * @default undefined + */ + textDirection?: 'ltr' | 'rtl' | 'auto' /** * The editor's props */ @@ -357,7 +365,8 @@ export interface EditorOptions { | 'tabindex' | 'drop' | 'paste' - | 'delete', + | 'delete' + | 'textDirection', false > > From e4b95fab00f9ac9f286e82bb0d179043c1f135e7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 19 Nov 2025 03:13:25 +0100 Subject: [PATCH 518/629] chore(release): publish a new release version (#7244) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...direction-support-golden-river-mountain.md | 5 ---- CHANGELOG.md | 8 +++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 10 +++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 142 files changed, 613 insertions(+), 75 deletions(-) delete mode 100644 .changeset/add-text-direction-support-golden-river-mountain.md diff --git a/.changeset/add-text-direction-support-golden-river-mountain.md b/.changeset/add-text-direction-support-golden-river-mountain.md deleted file mode 100644 index 489e3e543b..0000000000 --- a/.changeset/add-text-direction-support-golden-river-mountain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": minor ---- - -Add native text direction support for RTL and bidirectional content. The editor now includes a `textDirection` option that can be set to `'ltr'`, `'rtl'`, or `'auto'` to control the direction of all content globally. Additionally, new `setTextDirection` and `unsetTextDirection` commands allow for granular control of text direction on specific nodes. This enables proper rendering of right-to-left languages like Arabic and Hebrew, as well as bidirectional text mixing multiple languages. diff --git a/CHANGELOG.md b/CHANGELOG.md index 24712f23db..2457b6571f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Releases +## v3.11.0 + +### @tiptap/core + +#### Minor Changes + +- Add native text direction support for RTL and bidirectional content. The editor now includes a `textDirection` option that can be set to `'ltr'`, `'rtl'`, or `'auto'` to control the direction of all content globally. Additionally, new `setTextDirection` and `unsetTextDirection` commands allow for granular control of text direction on specific nodes. This enables proper rendering of right-to-left languages like Arabic and Hebrew, as well as bidirectional text mixing multiple languages. + ## v3.10.8 ### @tiptap/core diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 736952097b..69a30f1c6b 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extensions@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index f865d318ea..8ef5c88e06 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index e4ec31282e..2e95e4a5e4 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extensions@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 6c584088ef..848a968fbf 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index b050c1c4d1..0f5876cd43 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extensions@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index c4fd8c3392..590ca99808 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 4414808609..13acf9a43d 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extensions@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 0ea33d50d6..7a04829a6b 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index fb7f76d874..90faa787b4 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extensions@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 72f21e7367..97c072f31a 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 80250db544..243acc8290 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-list@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index ce968ec191..29721374d2 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 8d4fe11cf2..0ddf5e8bf0 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-list@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 0c870f2bdf..f77ff6d02b 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 32f96f5ba6..b58fba8669 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extensions@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index cfc91b55a0..a4b72ffde9 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 744b00275d..6fe7535f4e 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-table@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 1c1dc82a18..968db5a02c 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 202eb2328b..851c5bae5d 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-table@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 830505a57d..9bf693e68d 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index b3f7587e5d..dec684de7a 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-table@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 2d01f47275..c6d37b06a1 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 197b1a3e10..0d8317166e 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-list@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 5c76efa9af..fb8ce8ce2c 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index a44d156193..0158c78a88 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-list@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index e60c513aa5..3b9a5b20e1 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 5f9d211e14..d0e7ed6a39 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.11.0 + +### Minor Changes + +- 541c93c: Add native text direction support for RTL and bidirectional content. The editor now includes a `textDirection` option that can be set to `'ltr'`, `'rtl'`, or `'auto'` to control the direction of all content globally. Additionally, new `setTextDirection` and `unsetTextDirection` commands allow for granular control of text direction on specific nodes. This enables proper rendering of right-to-left languages like Arabic and Hebrew, as well as bidirectional text mixing multiple languages. + +### Patch Changes + +- @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index d469d5615e..2e4f43f889 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 41717f9097..9d0b20d378 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 3f41581676..bbcd9d528e 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 0849fed4de..daafe9729e 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index b9397c9697..1e13e0ebd0 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 5cdc4c7e4f..c2de183a76 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 82478b5382..1a075aba44 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index b5b5cc583e..57328cbdf7 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-list@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index ab85fb58ef..4470649f76 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 038b46ead9..06738a0b8b 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/extension-code-block@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 1040e22b40..ad776d9a24 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 972cbc8b2f..9d224fcfe7 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 45f0f3733e..d29a70c8c4 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 4a870cd5a5..efd18e3dc2 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index c2145a6260..5ba0534cda 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 7d6dcc7331..6ed60d574d 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 53a868136d..2e4efa1f4b 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 600c4ebed8..5176935562 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index e0fd4afedb..9268bad175 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index b9356fce3d..80a8951d2e 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 2e21eb3855..127b2338a8 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 2385b3f052..837d9c2497 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/extension-text-style@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index ec59962ddc..82e31ef2cb 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 4a0886b7e0..10f4385d63 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 71bfcef554..d1fbfb8d8b 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 7f73b1fe40..2ffdebc5ab 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.11.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.11.0 +- @tiptap/react@3.11.0 +- @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 3fd22bede6..29587e2136 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 88e01b0126..5e99241ffd 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.11.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.11.0 +- @tiptap/vue-2@3.11.0 +- @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 5803d0a3c2..3be3d1148b 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 9cae718893..a13e6ef42a 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.11.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.11.0 +- @tiptap/vue-3@3.11.0 +- @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 6b9812c694..85322b883f 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 8e19ab7819..5cc4baa598 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/extension-collaboration@3.11.0 + - @tiptap/extension-node-range@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index a691ad8bdb..6dd0111295 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 756e4b4433..f201634777 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/suggestion@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 05fd0926f4..f7a50db501 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index ef5fa366ed..ad0d133746 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/extension-text-style@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 3bf936bcbc..811ac64467 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index be26fa8aa2..040caad2f7 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index cb20704a3a..0d4f3b636c 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index f0effb1e26..85ec61776c 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 92ae5b93e2..04710931eb 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 7c0ef0368a..7e45bf7ced 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 929db1e3bb..d81bb73c21 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index f0dab0b9e1..03c6c7f41b 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 24db7ebca4..3e4c5fe75e 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 6cc293b2db..f6161f7263 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index daf0290770..6b956349ec 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 630d3e2c71..ae8c237b55 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 8d47249c58..e169876cde 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index e025425869..92d846e108 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index b3c81f6e31..1a86280a27 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 1db4cccf04..863456852e 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/extension-text-style@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index ee3313286c..e4476b08a6 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 85b0089841..74c447e7c2 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 1f497bdd64..849ed29528 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index e963843543..0c325bfb67 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 0ca1394f0d..8c0867850f 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 3ea604bf5e..35f64ab339 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index cd22f035b1..4200186b60 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index a6b754dc15..36f03447ff 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index e6033f532a..ad46440923 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index a9af81005b..33c3a0e5ba 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/suggestion@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 6495be889f..2f39e96dda 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 41648bb9c5..7418a6d2ed 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 8c90a37594..0d542de7a2 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 54b9958b0a..6bc9838c81 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- @tiptap/extension-list@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index eaa70c7a06..fe993b54c3 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 761c7ede15..a9fdb96a63 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 62346cd411..5b237468ad 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index b301e6bdda..54b62f2d78 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 84e893f69e..a22e626f6e 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index e8c95c0ec4..fa838c2323 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 290e98eb12..ae995cd042 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index c348a6c0ee..4a8249ebb3 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 84b22a8316..657324eb5b 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 1a1deac06d..2f7645f516 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.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 56685310e5..2a663dbbb1 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index f02dd2406a..e14bf8f18d 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 5b7b68b62b..a643f45b30 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index e6ecf0b046..e55fcd24db 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 837bbed3f3..71860cd573 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 8b7f657de9..3de5b23b61 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 8978588b12..f1f016667f 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index e5d8aca676..e387bd7f4f 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 33e31085e5..bfe530bfcc 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 2c7689d215..b94efff77a 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 6210206633..9ef6d4f718 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index a853481e55..bdd7d508d7 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 58b3a11db2..79bda10c03 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index f9f275659e..2d0faf85b5 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 4566dafbc8..3d41570122 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 58c470146c..170fe16b73 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index ccc3d75909..a934df036c 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 1b929244d9..fbc56811a9 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 54061814c4..6c5bdcecee 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 9adf0d009a..e29523a077 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index c36d60af14..ee2310d7a2 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 37bea2cac8..d4e13b21b4 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index f50ce6647e..64d7a506b8 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 72fc5c1a99..85c7bad714 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.11.0 + ## 3.10.8 ## 3.10.7 diff --git a/packages/pm/package.json b/packages/pm/package.json index 9594e2e3c2..bfad7e5758 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 3a31300960..9639f8dcf1 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 5f41998b88..96999b2b04 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index d5705e320e..1a7fd583c2 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/extension-blockquote@3.11.0 + - @tiptap/extension-bold@3.11.0 + - @tiptap/extension-code@3.11.0 + - @tiptap/extension-code-block@3.11.0 + - @tiptap/extension-document@3.11.0 + - @tiptap/extension-hard-break@3.11.0 + - @tiptap/extension-heading@3.11.0 + - @tiptap/extension-horizontal-rule@3.11.0 + - @tiptap/extension-italic@3.11.0 + - @tiptap/extension-link@3.11.0 + - @tiptap/extension-list@3.11.0 + - @tiptap/extension-paragraph@3.11.0 + - @tiptap/extension-strike@3.11.0 + - @tiptap/extension-text@3.11.0 + - @tiptap/extension-underline@3.11.0 + - @tiptap/extensions@3.11.0 + - @tiptap/extension-list-item@3.11.0 + - @tiptap/extension-list-keymap@3.11.0 + - @tiptap/extension-bullet-list@3.11.0 + - @tiptap/extension-ordered-list@3.11.0 + - @tiptap/extension-dropcursor@3.11.0 + - @tiptap/extension-gapcursor@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 267eb9ad7f..10acf50cb0 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index c413fc72fc..c6b7743759 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 9fbf5e563d..2fc2e469d6 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index e8b1b8add0..0c05d7645f 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 10cc8472db..bda011d77e 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index c6972bb28d..7d4b14d954 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index a64f22eea8..7b156c1ffb 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 57eb74b47d..ac464cb95c 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.0 + +### Patch Changes + +- Updated dependencies [541c93c] + - @tiptap/core@3.11.0 + - @tiptap/pm@3.11.0 + ## 3.10.8 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index ba00134e17..fc53d77852 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.10.8", + "version": "3.11.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From e5cc5ce7377f68e2b378a81e96c6e71c1e9ee8b6 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 25 Nov 2025 12:06:15 +0100 Subject: [PATCH 519/629] feat: add Vitest configuration for testing with package aliases (#7184) * feat: add Vitest configuration for testing with package aliases * Update vitest.config.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * migrate unit tests for markdown * refactor: update test assertions to use Jest matchers and improve type safety * refactor: remove outdated basic tests for the Editor component * chore: add happy-dom as a dev dependency and update test environment configuration * refactor: reorganize vitest configuration and update JSX runtime aliases * Add unit tests for core functionalities and improve coverage - Implement tests for generateText function to validate JSON to text conversion. - Add tests for getMarkRange to ensure correct range retrieval for marks. - Create tests for getTextContentFromNodes to verify text extraction from nodes. - Introduce tests for isActive to check active node and mark states. - Develop tests for isNodeEmpty to assess node emptiness under various conditions. - Add tests for mergeAttributes to validate attribute merging behavior. - Implement tests for mergeDeep to ensure deep merging of objects. - Create tests for onContentError to handle content validation and error emission. - Add tests for unmounted behavior to ensure proper editor lifecycle management. - Remove outdated can.spec.ts test file as it is no longer needed. * test: add unit tests for various extensions including bold, emoji, horizontal rule, link, table, and youtube * test: add unit tests for generateHTML and generateJSON functions * feat: update tsconfig and vitest configuration to include static-renderer paths * test: add unit tests for static rendering of JSON to HTML and React elements * fix: add pool configuration to Vitest for improved test performance * add unit tests to build workflow --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .github/workflows/build.yml | 51 ++- package.json | 12 +- .../core/__tests__}/can.spec.ts | 33 +- .../__tests__}/createNodeFromContent.spec.ts | 27 +- .../core/__tests__}/editorProps.spec.ts | 7 +- .../core/__tests__}/extendExtensions.spec.ts | 37 +- .../core/__tests__}/extendMarkRange.spec.ts | 13 +- .../core/__tests__}/extensionOptions.spec.ts | 23 +- .../core/__tests__}/extensionStorage.spec.ts | 29 +- .../core/__tests__}/fromString.spec.ts | 19 +- .../core/__tests__}/generateHTML.spec.ts | 5 +- .../core/__tests__}/generateJSON.spec.ts | 5 +- .../core/__tests__}/generateText.spec.ts | 5 +- .../core/__tests__}/getMarkRange.spec.ts | 23 +- .../getTextContentFromNodes.spec.ts | 5 +- .../core/__tests__}/isActive.spec.ts | 17 +- .../core/__tests__}/isNodeEmpty.spec.ts | 43 +- .../core/__tests__}/mergeAttributes.spec.ts | 21 +- .../core/__tests__}/mergeDeep.spec.ts | 28 +- .../core/__tests__}/onContentError.spec.ts | 45 +- .../__tests__}/requiredAttributes.spec.ts | 53 +-- .../core/__tests__}/unmounted.spec.ts | 61 ++- .../extension-bold/__tests__}/bold.spec.ts | 11 +- .../__tests__}/codeBlockLowlight.spec.ts | 7 +- .../extension-emoji/__tests__}/emoji.spec.ts | 11 +- .../__tests__}/horizontalRule.spec.ts | 3 +- .../extension-link/__tests__}/link.spec.ts | 21 +- .../__tests__}/tableCell.spec.ts | 9 +- .../__tests__}/tableHeader.spec.ts | 9 +- .../__tests__}/background-color.spec.ts | 9 +- .../__tests__}/color.spec.ts | 9 +- .../__tests__}/youtube.spec.ts | 5 +- .../html/__tests__}/generateHTML.spec.ts | 13 +- .../html/__tests__}/generateJSON.spec.ts | 7 +- .../conversion-files/bullet-list.ts | 0 .../conversion-files/custom-atom.ts | 0 .../conversion-files/custom-block.ts | 0 .../conversion-files/custom-inline.ts | 0 .../conversion-files/hard-break-marks.ts | 0 .../__tests__}/conversion-files/index.ts | 0 .../conversion-files/mixed-list-types.ts | 0 .../conversion-files/nested-nodes.ts | 0 .../conversion-files/ordered-list.ts | 0 .../conversion-files/soft-break-marks.ts | 0 .../__tests__}/conversion-files/task-list.ts | 0 .../markdown/__tests__}/conversion.spec.ts | 11 +- .../__tests__/extensions}/blockquote.spec.ts | 19 +- .../markdown/__tests__}/manager.spec.ts | 106 ++--- .../markdown/__tests__}/mixed-html.spec.ts | 53 +-- .../markdown/__tests__}/utilities.spec.ts | 101 ++--- .../__tests__}/json-string.spec.ts | 31 +- .../__tests__}/md-string.spec.ts | 11 +- .../__tests__}/react-string.spec.ts | 19 +- pnpm-lock.yaml | 398 ++++++++++++++++++ vitest.config.ts | 91 ++++ 55 files changed, 1014 insertions(+), 502 deletions(-) rename {tests/cypress/integration/core => packages/core/__tests__}/can.spec.ts (89%) rename {tests/cypress/integration/core => packages/core/__tests__}/createNodeFromContent.spec.ts (91%) rename {tests/cypress/integration/core => packages/core/__tests__}/editorProps.spec.ts (79%) rename {tests/cypress/integration/core => packages/core/__tests__}/extendExtensions.spec.ts (91%) rename {tests/cypress/integration/core => packages/core/__tests__}/extendMarkRange.spec.ts (95%) rename {tests/cypress/integration/core => packages/core/__tests__}/extensionOptions.spec.ts (88%) rename {tests/cypress/integration/core => packages/core/__tests__}/extensionStorage.spec.ts (74%) rename {tests/cypress/integration/core => packages/core/__tests__}/fromString.spec.ts (73%) rename {tests/cypress/integration/core => packages/core/__tests__}/generateHTML.spec.ts (87%) rename {tests/cypress/integration/core => packages/core/__tests__}/generateJSON.spec.ts (89%) rename {tests/cypress/integration/core => packages/core/__tests__}/generateText.spec.ts (94%) rename {tests/cypress/integration/core => packages/core/__tests__}/getMarkRange.spec.ts (91%) rename {tests/cypress/integration/core => packages/core/__tests__}/getTextContentFromNodes.spec.ts (91%) rename {tests/cypress/integration/core => packages/core/__tests__}/isActive.spec.ts (90%) rename {tests/cypress/integration/core => packages/core/__tests__}/isNodeEmpty.spec.ts (84%) rename {tests/cypress/integration/core => packages/core/__tests__}/mergeAttributes.spec.ts (84%) rename {tests/cypress/integration/core => packages/core/__tests__}/mergeDeep.spec.ts (73%) rename {tests/cypress/integration/core => packages/core/__tests__}/onContentError.spec.ts (79%) rename {tests/cypress/integration/core => packages/core/__tests__}/requiredAttributes.spec.ts (70%) rename {tests/cypress/integration/core => packages/core/__tests__}/unmounted.spec.ts (85%) rename {tests/cypress/integration/extensions => packages/extension-bold/__tests__}/bold.spec.ts (59%) rename {tests/cypress/integration/extensions => packages/extension-code-block-lowlight/__tests__}/codeBlockLowlight.spec.ts (94%) rename {tests/cypress/integration/extensions => packages/extension-emoji/__tests__}/emoji.spec.ts (64%) rename {tests/cypress/integration/extensions => packages/extension-horizontal-rule/__tests__}/horizontalRule.spec.ts (92%) rename {tests/cypress/integration/extensions => packages/extension-link/__tests__}/link.spec.ts (92%) rename {tests/cypress/integration/extensions => packages/extension-table/__tests__}/tableCell.spec.ts (95%) rename {tests/cypress/integration/extensions => packages/extension-table/__tests__}/tableHeader.spec.ts (95%) rename {tests/cypress/integration/extensions => packages/extension-text-style/__tests__}/background-color.spec.ts (83%) rename {tests/cypress/integration/extensions => packages/extension-text-style/__tests__}/color.spec.ts (82%) rename {tests/cypress/integration/extensions => packages/extension-youtube/__tests__}/youtube.spec.ts (91%) rename {tests/cypress/integration/html => packages/html/__tests__}/generateHTML.spec.ts (96%) rename {tests/cypress/integration/html => packages/html/__tests__}/generateJSON.spec.ts (91%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/bullet-list.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/custom-atom.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/custom-block.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/custom-inline.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/hard-break-marks.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/index.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/mixed-list-types.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/nested-nodes.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/ordered-list.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/soft-break-marks.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion-files/task-list.ts (100%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/conversion.spec.ts (94%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__/extensions}/blockquote.spec.ts (88%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/manager.spec.ts (76%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/mixed-html.spec.ts (61%) rename {tests/cypress/integration/markdown => packages/markdown/__tests__}/utilities.spec.ts (73%) rename {tests/cypress/integration/static-renderer => packages/static-renderer/__tests__}/json-string.spec.ts (90%) rename {tests/cypress/integration/static-renderer => packages/static-renderer/__tests__}/md-string.spec.ts (97%) rename {tests/cypress/integration/static-renderer => packages/static-renderer/__tests__}/react-string.spec.ts (91%) create mode 100644 vitest.config.ts diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fcf186b309..13d03eda10 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -68,11 +68,58 @@ jobs: id: build-packages run: pnpm run build - test: + unit-test: runs-on: ubuntu-latest needs: build + strategy: + matrix: + node-version: [20] + + steps: + - uses: actions/checkout@v5 + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: ${{ env.PNPM_VERSION }} + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4.1.0 + with: + node-version: ${{ matrix.node-version }} + cache: 'pnpm' + + - name: Load turbo cache + uses: actions/cache@v4.3.0 + id: turbo-cache + with: + path: | + .turbo + **/.eslintcache + key: ${{ runner.os }}-turbo-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-turbo-${{ github.sha }} + ${{ runner.os }}-turbo- + + - name: Install dependencies + id: install-dependencies + run: pnpm install + + - name: Try to build the packages + id: build-packages + run: pnpm run build + + - name: Run unit tests + id: unit-tests + run: pnpm run test:unit + + test: + runs-on: ubuntu-latest + + needs: [build, unit-test] + strategy: matrix: node-version: [20] @@ -168,7 +215,7 @@ jobs: matrix: node-version: [20] - needs: test + needs: [test, unit-test] steps: - uses: actions/checkout@v5 diff --git a/package.json b/package.json index 51025f1dfd..b01a7035b9 100644 --- a/package.json +++ b/package.json @@ -16,9 +16,11 @@ "lint": "turbo run lint", "lint:fix": "prettier -w --log-level warn . && eslint --fix --cache --quiet --no-error-on-unmatched-pattern .", "lint:staged": "lint-staged", - "test:open": "cypress open --project tests", - "test:run": "cypress run --project tests", - "test": "turbo run build && pnpm run test:run", + "test:e2e:open": "cypress open --project tests", + "test:e2e": "cypress run --project tests", + "test:unit": "vitest run", + "test:unit:dev": "vitest", + "test": "turbo run build && pnpm run test:e2e && pnpm run test:unit", "build": "turbo build", "build:demos": "pnpm --prefix demos run build:demos", "serve": "pnpm run build:demos && http-server ./demos/dist -s -p 3000", @@ -52,6 +54,7 @@ "@types/react-dom": "^19.0.0", "@typescript-eslint/eslint-plugin": "^8.19.0", "@typescript-eslint/parser": "^8.19.0", + "@vitest/ui": "^4.0.7", "babel-loader": "^9.2.1", "cypress": "^15.4.0", "cz-conventional-changelog": "^3.3.0", @@ -64,6 +67,8 @@ "eslint-plugin-react-hooks": "4.6.2", "eslint-plugin-simple-import-sort": "^7.0.0", "eslint-plugin-vue": "^9.32.0", + "fast-glob": "^3.3.2", + "happy-dom": "^20.0.2", "http-server": "14.1.1", "husky": "^8.0.3", "lint-staged": "^15.3.0", @@ -77,6 +82,7 @@ "tsup": "^8.3.5", "turbo": "2.3.3", "typescript": "^5.7.3", + "vitest": "^4.0.7", "webpack": "^5.97.1" }, "overrides": { diff --git a/tests/cypress/integration/core/can.spec.ts b/packages/core/__tests__/can.spec.ts similarity index 89% rename from tests/cypress/integration/core/can.spec.ts rename to packages/core/__tests__/can.spec.ts index 4dd3844dcd..e7b1e8e9cd 100644 --- a/tests/cypress/integration/core/can.spec.ts +++ b/packages/core/__tests__/can.spec.ts @@ -1,5 +1,3 @@ -/// - import { Editor } from '@tiptap/core' import Bold from '@tiptap/extension-bold' import Code from '@tiptap/extension-code' @@ -8,6 +6,7 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import { UndoRedo } from '@tiptap/extensions' +import { describe, expect, it } from 'vitest' describe('can', () => { it('not undo', () => { @@ -17,7 +16,7 @@ describe('can', () => { const canUndo = editor.can().undo() - expect(canUndo).to.eq(false) + expect(canUndo).toBe(false) }) it('undo', () => { @@ -29,7 +28,7 @@ describe('can', () => { const canUndo = editor.can().undo() - expect(canUndo).to.eq(true) + expect(canUndo).toBe(true) }) it('not chain undo', () => { @@ -39,7 +38,7 @@ describe('can', () => { const canUndo = editor.can().chain().undo().run() - expect(canUndo).to.eq(false) + expect(canUndo).toBe(false) }) it('chain undo', () => { @@ -51,7 +50,7 @@ describe('can', () => { const canUndo = editor.can().chain().undo().run() - expect(canUndo).to.eq(true) + expect(canUndo).toBe(true) }) it('returns false for non-applicable marks when cursor is positioned in node that disallows marks', () => { @@ -69,7 +68,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(false) + expect(canSetMarkToBold).toBe(false) }) it('returns false for non-applicable marks when selection contains node in conflict', () => { @@ -87,7 +86,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(false) + expect(canSetMarkToBold).toBe(false) }) it('returns false for non-applicable marks when selection contains marks in conflict', () => { @@ -99,7 +98,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(false) + expect(canSetMarkToBold).toBe(false) }) it('returns false for non-applicable marks when stored marks in conflict', () => { @@ -111,7 +110,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(false) + expect(canSetMarkToBold).toBe(false) }) it('returns false for non-applicable marks when selecting multiple nodes in conflict', () => { @@ -123,7 +122,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(false) + expect(canSetMarkToBold).toBe(false) }) it('returns true for applicable marks when selection does not contain nodes in conflict', () => { @@ -142,7 +141,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(true) + expect(canSetMarkToBold).toBe(true) }) it('returns true for applicable marks when stored marks are not in conflict', () => { @@ -154,7 +153,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(true) + expect(canSetMarkToBold).toBe(true) }) it('returns true for applicable marks when selection does not contain marks in conflict', () => { @@ -166,7 +165,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(true) + expect(canSetMarkToBold).toBe(true) }) it('returns true for applicable marks if at least one node in selection has no marks in conflict', () => { @@ -178,7 +177,7 @@ describe('can', () => { const canSetMarkToBold = editor.can().setMark('bold') - expect(canSetMarkToBold).to.eq(true) + expect(canSetMarkToBold).toBe(true) }) it('builds and passes down an undefined dispatch for nested "can" chain', () => { @@ -203,7 +202,7 @@ describe('can', () => { }) .run() - expect(capturedOuterDispatch).to.eq(undefined) - expect(capturedInnerDispatch).to.eq(undefined) + expect(capturedOuterDispatch).toBe(undefined) + expect(capturedInnerDispatch).toBe(undefined) }) }) diff --git a/tests/cypress/integration/core/createNodeFromContent.spec.ts b/packages/core/__tests__/createNodeFromContent.spec.ts similarity index 91% rename from tests/cypress/integration/core/createNodeFromContent.spec.ts rename to packages/core/__tests__/createNodeFromContent.spec.ts index 930e575c37..ce80e11f95 100644 --- a/tests/cypress/integration/core/createNodeFromContent.spec.ts +++ b/packages/core/__tests__/createNodeFromContent.spec.ts @@ -1,9 +1,8 @@ -/// - import { createNodeFromContent, getSchemaByResolvedExtensions } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('createNodeFromContent', () => { it('creates a fragment from a schema and HTML content', () => { @@ -11,7 +10,7 @@ describe('createNodeFromContent', () => { const fragment = createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text])) - expect(fragment.toJSON()).to.deep.eq([ + expect(fragment.toJSON()).toEqual([ { type: 'paragraph', content: [ @@ -31,7 +30,7 @@ describe('createNodeFromContent', () => { errorOnInvalidContent: true, }) - expect(fragment.toJSON()).to.deep.eq([ + expect(fragment.toJSON()).toEqual([ { type: 'paragraph', content: [ @@ -57,7 +56,7 @@ describe('createNodeFromContent', () => { const fragment = createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text])) - expect(fragment.toJSON()).to.deep.eq({ + expect(fragment.toJSON()).toEqual({ type: 'paragraph', content: [ { @@ -83,7 +82,7 @@ describe('createNodeFromContent', () => { errorOnInvalidContent: true, }) - expect(fragment.toJSON()).to.deep.eq({ + expect(fragment.toJSON()).toEqual({ type: 'paragraph', content: [ { @@ -118,7 +117,7 @@ describe('createNodeFromContent', () => { const fragment = createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text])) - expect(fragment.toJSON()).to.deep.eq([ + expect(fragment.toJSON()).toEqual([ { type: 'paragraph', content: [ @@ -166,7 +165,7 @@ describe('createNodeFromContent', () => { errorOnInvalidContent: true, }) - expect(fragment.toJSON()).to.deep.eq([ + expect(fragment.toJSON()).toEqual([ { type: 'paragraph', content: [ @@ -201,7 +200,7 @@ describe('createNodeFromContent', () => { const fragment = createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text])) - expect(fragment.toJSON()).to.deep.eq(null) + expect(fragment.toJSON()).toEqual(null) }) it('returns empty content when a schema does not have matching node types for HTML content', () => { @@ -209,7 +208,7 @@ describe('createNodeFromContent', () => { const fragment = createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text])) - expect(fragment.toJSON()).to.deep.eq([{ type: 'text', text: 'Example Text' }]) + expect(fragment.toJSON()).toEqual([{ type: 'text', text: 'Example Text' }]) }) it('if `errorOnInvalidContent` is true, will throw an error when a schema does not have matching node types for HTML content', () => { @@ -219,7 +218,7 @@ describe('createNodeFromContent', () => { createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text]), { errorOnInvalidContent: true, }) - }).to.throw('[tiptap error]: Invalid HTML content') + }).toThrow('[tiptap error]: Invalid HTML content') }) it('if `errorOnInvalidContent` is true, will throw an error when a schema does not have matching node types for JSON content', () => { @@ -237,7 +236,7 @@ describe('createNodeFromContent', () => { createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text]), { errorOnInvalidContent: true, }) - }).to.throw('[tiptap error]: Invalid JSON content') + }).toThrow('[tiptap error]: Invalid JSON content') }) it('if `errorOnInvalidContent` is true, will throw an error when a schema does not have matching mark types for JSON content', () => { @@ -260,7 +259,7 @@ describe('createNodeFromContent', () => { createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text]), { errorOnInvalidContent: true, }) - }).to.throw('[tiptap error]: Invalid JSON content') + }).toThrow('[tiptap error]: Invalid JSON content') }) it('if `errorOnInvalidContent` is true, will throw an error, when the JSON content does not follow the nesting rules of the schema', () => { @@ -283,6 +282,6 @@ describe('createNodeFromContent', () => { createNodeFromContent(content, getSchemaByResolvedExtensions([Document, Paragraph, Text]), { errorOnInvalidContent: true, }) - }).to.throw('[tiptap error]: Invalid JSON content') + }).toThrow('[tiptap error]: Invalid JSON content') }) }) diff --git a/tests/cypress/integration/core/editorProps.spec.ts b/packages/core/__tests__/editorProps.spec.ts similarity index 79% rename from tests/cypress/integration/core/editorProps.spec.ts rename to packages/core/__tests__/editorProps.spec.ts index 82ddf30315..2a27345b07 100644 --- a/tests/cypress/integration/core/editorProps.spec.ts +++ b/packages/core/__tests__/editorProps.spec.ts @@ -1,9 +1,8 @@ -/// - import { Editor } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('editorProps', () => { it('editorProps can be set while constructing Editor', () => { @@ -16,7 +15,7 @@ describe('editorProps', () => { editorProps: { transformPastedHTML }, }) - expect(transformPastedHTML).to.eq(editor.view.props.transformPastedHTML) + expect(transformPastedHTML).toBe(editor.view.props.transformPastedHTML) }) it('editorProps can be set through setOptions', () => { @@ -30,6 +29,6 @@ describe('editorProps', () => { editor.setOptions({ editorProps: { transformPastedHTML } }) - expect(transformPastedHTML).to.eq(editor.view.props.transformPastedHTML) + expect(transformPastedHTML).toBe(editor.view.props.transformPastedHTML) }) }) diff --git a/tests/cypress/integration/core/extendExtensions.spec.ts b/packages/core/__tests__/extendExtensions.spec.ts similarity index 91% rename from tests/cypress/integration/core/extendExtensions.spec.ts rename to packages/core/__tests__/extendExtensions.spec.ts index a21b913aac..2d97488b5d 100644 --- a/tests/cypress/integration/core/extendExtensions.spec.ts +++ b/packages/core/__tests__/extendExtensions.spec.ts @@ -1,6 +1,5 @@ -/// - import { Extension, getExtensionField, Mark, Node } from '@tiptap/core' +import { describe, expect, it } from 'vitest' declare module '@tiptap/core' { // Extension does not have a addAttributes defined, but we just want to test it anyway @@ -24,7 +23,7 @@ describe('extend extensions', () => { const attributes = getExtensionField(extension, 'addAttributes')() - expect(attributes).to.deep.eq({ + expect(attributes).toEqual({ foo: {}, }) }) @@ -46,7 +45,7 @@ describe('extend extensions', () => { const attributes = getExtensionField(extension, 'addAttributes')() - expect(attributes).to.deep.eq({ + expect(attributes).toEqual({ bar: {}, }) }) @@ -70,7 +69,7 @@ describe('extend extensions', () => { const parent = newExtension.parent - expect(parent).to.eq(extension) + expect(parent).toBe(extension) }) it('should merge configs', () => { @@ -91,7 +90,7 @@ describe('extend extensions', () => { const attributes = getExtensionField(extension, 'addAttributes')() - expect(attributes).to.deep.eq({ + expect(attributes).toEqual({ foo: {}, bar: {}, }) @@ -124,7 +123,7 @@ describe('extend extensions', () => { const attributes = getExtensionField(extension, 'addAttributes')() - expect(attributes).to.deep.eq({ + expect(attributes).toEqual({ foo: {}, bar: {}, baz: {}, @@ -158,8 +157,8 @@ describe('extend extensions', () => { }, }) - expect(parentExtension.parent).to.eq(grandparentExtension) - expect(childExtension.parent).to.eq(parentExtension) + expect(parentExtension.parent).toBe(grandparentExtension) + expect(childExtension.parent).toBe(parentExtension) }) it('should merge configs without direct parent configuration', () => { @@ -182,7 +181,7 @@ describe('extend extensions', () => { const attributes = getExtensionField(extension, 'addAttributes')() - expect(attributes).to.deep.eq({ + expect(attributes).toEqual({ foo: {}, bar: {}, }) @@ -224,7 +223,7 @@ describe('extend extensions', () => { getExtensionField(extension, 'addAttributes')() - expect(callCounts).to.deep.eq({ + expect(callCounts).toEqual({ grandparent: 1, parent: 1, child: 1, @@ -270,7 +269,7 @@ describe('extend extensions', () => { getExtensionField(extension, 'addAttributes')() - expect(callCounts).to.deep.eq({ + expect(callCounts).toEqual({ grandparent: 1, parent: 1, child: 1, @@ -299,8 +298,8 @@ describe('extend extensions', () => { baz: {}, }) - expect(parentExtension.parent).to.eq(grandparentExtension) - expect(childExtension.parent).to.eq(grandparentExtension) + expect(parentExtension.parent).toBe(grandparentExtension) + expect(childExtension.parent).toBe(grandparentExtension) }) it("should use parent's config on `configure`", () => { @@ -327,7 +326,7 @@ describe('extend extensions', () => { baz: {}, }) - expect(childExtension.config.name).to.eq('parent') + expect(childExtension.config.name).toBe('parent') }) it('should allow extending a configure', () => { @@ -341,7 +340,7 @@ describe('extend extensions', () => { const attributes = getExtensionField(childExtension, 'addAttributes')() - expect(attributes).to.deep.eq({ + expect(attributes).toEqual({ foo: 'bar', }) }) @@ -367,7 +366,7 @@ describe('extend extensions', () => { const attributes = getExtensionField(childExtension, 'addAttributes')() - expect(attributes).to.deep.eq({ + expect(attributes).toEqual({ foo: {}, bar: {}, }) @@ -383,7 +382,7 @@ describe('extend extensions', () => { const childExtension = parentExtension.configure({ child: 'exists-too', overwrite: 'child' }) - expect(childExtension.options).to.deep.eq({ + expect(childExtension.options).toEqual({ parent: 'exists', child: 'exists-too', overwrite: 'child', @@ -407,7 +406,7 @@ describe('extend extensions', () => { }, }) - expect(childExtension.options).to.deep.eq({ + expect(childExtension.options).toEqual({ defaultOptions: 'exists', configuredOptions: 'exists-too', additionalOptions: 'exist-too', diff --git a/tests/cypress/integration/core/extendMarkRange.spec.ts b/packages/core/__tests__/extendMarkRange.spec.ts similarity index 95% rename from tests/cypress/integration/core/extendMarkRange.spec.ts rename to packages/core/__tests__/extendMarkRange.spec.ts index 448bf06bb2..cdcdf74d4b 100644 --- a/tests/cypress/integration/core/extendMarkRange.spec.ts +++ b/packages/core/__tests__/extendMarkRange.spec.ts @@ -1,11 +1,10 @@ -/// - // eslint-disable-next-line import { Editor, getDebugJSON } from '@tiptap/core' import Document from '@tiptap/extension-document' +import Link from '@tiptap/extension-link' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' -import Link from '@tiptap/extension-link' +import { describe, expect, it } from 'vitest' describe('extendMarkRange', () => { it('should extend full mark', () => { @@ -70,7 +69,7 @@ describe('extendMarkRange', () => { to: 13, } - expect({ from, to }).to.deep.eq(expectedSelection) + expect({ from, to }).toEqual(expectedSelection) }) it('should extend to mark with specific attributes', () => { @@ -141,7 +140,7 @@ describe('extendMarkRange', () => { to: 9, } - expect({ from, to }).to.deep.eq(expectedSelection) + expect({ from, to }).toEqual(expectedSelection) }) it('should not extend at all if selection contains no mark', () => { @@ -206,7 +205,7 @@ describe('extendMarkRange', () => { to: 2, } - expect({ from, to }).to.deep.eq(expectedSelection) + expect({ from, to }).toEqual(expectedSelection) }) it('should not extend at all if selection contains any non-matching mark', () => { @@ -277,6 +276,6 @@ describe('extendMarkRange', () => { to: 11, } - expect({ from, to }).to.deep.eq(expectedSelection) + expect({ from, to }).toEqual(expectedSelection) }) }) diff --git a/tests/cypress/integration/core/extensionOptions.spec.ts b/packages/core/__tests__/extensionOptions.spec.ts similarity index 88% rename from tests/cypress/integration/core/extensionOptions.spec.ts rename to packages/core/__tests__/extensionOptions.spec.ts index 60753298f7..32c456fbd1 100644 --- a/tests/cypress/integration/core/extensionOptions.spec.ts +++ b/packages/core/__tests__/extensionOptions.spec.ts @@ -1,6 +1,5 @@ -/// - import { Extension, Mark, Node } from '@tiptap/core' +import { describe, expect, it } from 'vitest' describe('extension options', () => { ;[Extension, Node, Mark].forEach(Extendable => { @@ -15,7 +14,7 @@ describe('extension options', () => { }, }) - expect(extension.options).to.deep.eq({ + expect(extension.options).toEqual({ foo: 1, bar: 1, }) @@ -33,7 +32,7 @@ describe('extension options', () => { .extend() .configure() - expect(extension.options).to.deep.eq({ + expect(extension.options).toEqual({ foo: 1, bar: 1, }) @@ -51,7 +50,7 @@ describe('extension options', () => { bar: 2, }) - expect(extension.options).to.deep.eq({ + expect(extension.options).toEqual({ foo: 1, bar: 2, }) @@ -76,7 +75,7 @@ describe('extension options', () => { }, }) - expect(newExtension.options).to.deep.eq({ + expect(newExtension.options).toEqual({ foo: 1, bar: 1, baz: 1, @@ -109,7 +108,7 @@ describe('extension options', () => { }, }) - expect(newExtension.options).to.deep.eq({ + expect(newExtension.options).toEqual({ foo: 1, bar: 1, baz: 1, @@ -133,7 +132,7 @@ describe('extension options', () => { }, }) - expect(extension.options).to.deep.eq({ + expect(extension.options).toEqual({ baz: 1, }) }) @@ -158,7 +157,7 @@ describe('extension options', () => { }, }) - expect(extension.options).to.deep.eq({ + expect(extension.options).toEqual({ foo: [1], HTMLAttributes: { class: 'foo', @@ -180,7 +179,7 @@ describe('extension options', () => { const newExtension = extension.configure() - expect(newExtension.config.name).to.eq('parent') + expect(newExtension.config.name).toBe('parent') }) it('should create its own instance on configure', () => { @@ -202,12 +201,12 @@ describe('extension options', () => { foo: 3, }) - expect(extension1.options).to.deep.eq({ + expect(extension1.options).toEqual({ foo: 2, bar: 4, }) - expect(extension2.options).to.deep.eq({ + expect(extension2.options).toEqual({ foo: 3, bar: 2, }) diff --git a/tests/cypress/integration/core/extensionStorage.spec.ts b/packages/core/__tests__/extensionStorage.spec.ts similarity index 74% rename from tests/cypress/integration/core/extensionStorage.spec.ts rename to packages/core/__tests__/extensionStorage.spec.ts index 8555f36cfb..fa6e1ff3c9 100644 --- a/tests/cypress/integration/core/extensionStorage.spec.ts +++ b/packages/core/__tests__/extensionStorage.spec.ts @@ -1,6 +1,5 @@ -/// - import { Extension, Mark, Node } from '@tiptap/core' +import { describe, expect, it } from 'vitest' describe('extension storage', () => { ;[Extension, Node, Mark].forEach(Extendable => { @@ -8,7 +7,7 @@ describe('extension storage', () => { it('should be an empty object if not defined', () => { const extension = Extendable.create({}) - expect(extension.storage).to.deep.eq({}) + expect(extension.storage).toEqual({}) }) it('should be be the return of `addStorage` if defined', () => { @@ -18,7 +17,7 @@ describe('extension storage', () => { }, }) - expect(extension.storage).to.deep.eq({ a: 1 }) + expect(extension.storage).toEqual({ a: 1 }) }) it('should be able to be extended', () => { @@ -28,7 +27,7 @@ describe('extension storage', () => { }, }).extend() - expect(extension.storage).to.deep.eq({ a: 1 }) + expect(extension.storage).toEqual({ a: 1 }) }) it('should be able to be configured', () => { @@ -40,7 +39,7 @@ describe('extension storage', () => { anything: 'else', }) - expect(extension.storage).to.deep.eq({ a: 1 }) + expect(extension.storage).toEqual({ a: 1 }) }) it('should be able to be extended and configured', () => { @@ -54,13 +53,13 @@ describe('extension storage', () => { anything: 'else', }) - expect(extension.storage).to.deep.eq({ a: 1 }) + expect(extension.storage).toEqual({ a: 1 }) }) it('should be overwrite parents addStorage', () => { const extension = Extendable.create({ addStorage() { - expect(false, 'This should not be called').to.eq(true) + expect(false, 'This should not be called').toBe(true) return { a: 1 } }, }).extend({ @@ -69,19 +68,19 @@ describe('extension storage', () => { }, }) - expect(extension.storage).to.deep.eq({ b: 1 }) + expect(extension.storage).toEqual({ b: 1 }) }) it('grandchild should overwrite grandparent & parents addStorage', () => { const extension = Extendable.create({ addStorage() { - expect(false, 'This should not be called').to.eq(true) + expect(false, 'This should not be called').toBe(true) return { a: 1 } }, }) .extend({ addStorage() { - expect(false, 'This should not be called').to.eq(true) + expect(false, 'This should not be called').toBe(true) return { b: 1 } }, }) @@ -91,7 +90,7 @@ describe('extension storage', () => { }, }) - expect(extension.storage).to.deep.eq({ c: 1 }) + expect(extension.storage).toEqual({ c: 1 }) }) it('should return a new object on each access', () => { @@ -104,9 +103,9 @@ describe('extension storage', () => { const storage1 = extension.storage const storage2 = extension.storage - expect(storage1).to.deep.eq({ a: 1 }) - expect(storage2).to.deep.eq({ a: 1 }) - expect(storage1).not.to.eq(storage2) + expect(storage1).toEqual({ a: 1 }) + expect(storage2).toEqual({ a: 1 }) + expect(storage1).not.toBe(storage2) }) }) }) diff --git a/tests/cypress/integration/core/fromString.spec.ts b/packages/core/__tests__/fromString.spec.ts similarity index 73% rename from tests/cypress/integration/core/fromString.spec.ts rename to packages/core/__tests__/fromString.spec.ts index 7b26a943b0..11b1c3b8a0 100644 --- a/tests/cypress/integration/core/fromString.spec.ts +++ b/packages/core/__tests__/fromString.spec.ts @@ -1,53 +1,52 @@ -/// - import { fromString } from '@tiptap/core' +import { describe, expect, it } from 'vitest' describe('fromString', () => { it('should return a string', () => { const value = fromString('test') - expect(value).to.eq('test') + expect(value).toBe('test') }) it('should return an empty string', () => { const value = fromString('') - expect(value).to.eq('') + expect(value).toBe('') }) it('should convert to a number', () => { const value = fromString('1') - expect(value).to.eq(1) + expect(value).toBe(1) }) it('should convert to a floating number', () => { const value = fromString('1.2') - expect(value).to.eq(1.2) + expect(value).toBe(1.2) }) it('should not convert to a number with exponent', () => { const value = fromString('1e1') - expect(value).to.eq('1e1') + expect(value).toBe('1e1') }) it('should convert to true', () => { const value = fromString('true') - expect(value).to.eq(true) + expect(value).toBe(true) }) it('should convert to false', () => { const value = fromString('false') - expect(value).to.eq(false) + expect(value).toBe(false) }) it('should return non-strings', () => { const value = fromString(null) - expect(value).to.eq(null) + expect(value).toBe(null) }) }) diff --git a/tests/cypress/integration/core/generateHTML.spec.ts b/packages/core/__tests__/generateHTML.spec.ts similarity index 87% rename from tests/cypress/integration/core/generateHTML.spec.ts rename to packages/core/__tests__/generateHTML.spec.ts index 14a444cdf5..8cdaaf55d6 100644 --- a/tests/cypress/integration/core/generateHTML.spec.ts +++ b/packages/core/__tests__/generateHTML.spec.ts @@ -1,9 +1,8 @@ -/// - import { generateHTML } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('generateHTML', () => { it('generate HTML from JSON without an editor instance', () => { @@ -24,6 +23,6 @@ describe('generateHTML', () => { const html = generateHTML(json, [Document, Paragraph, Text]) - expect(html).to.eq('

Example Text

') + expect(html).toBe('

Example Text

') }) }) diff --git a/tests/cypress/integration/core/generateJSON.spec.ts b/packages/core/__tests__/generateJSON.spec.ts similarity index 89% rename from tests/cypress/integration/core/generateJSON.spec.ts rename to packages/core/__tests__/generateJSON.spec.ts index dc28d4c975..20c52e4dce 100644 --- a/tests/cypress/integration/core/generateJSON.spec.ts +++ b/packages/core/__tests__/generateJSON.spec.ts @@ -1,9 +1,8 @@ -/// - import { generateJSON } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('generateJSON', () => { it('generate JSON from HTML without an editor instance', () => { @@ -11,7 +10,7 @@ describe('generateJSON', () => { const json = generateJSON(html, [Document, Paragraph, Text]) - expect(JSON.stringify(json)).to.eq( + expect(JSON.stringify(json)).toBe( JSON.stringify({ type: 'doc', content: [ diff --git a/tests/cypress/integration/core/generateText.spec.ts b/packages/core/__tests__/generateText.spec.ts similarity index 94% rename from tests/cypress/integration/core/generateText.spec.ts rename to packages/core/__tests__/generateText.spec.ts index abc9ff1de5..7914871981 100644 --- a/tests/cypress/integration/core/generateText.spec.ts +++ b/packages/core/__tests__/generateText.spec.ts @@ -1,10 +1,9 @@ -/// - import type { NodeConfig } from '@tiptap/core' import { generateText, Node } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe(generateText.name, () => { it('generates Text from JSON without an editor instance', () => { @@ -65,6 +64,6 @@ describe(generateText.name, () => { }), ]) - expect(text).to.eq('Example One ~Example Two~') + expect(text).toBe('Example One ~Example Two~') }) }) diff --git a/tests/cypress/integration/core/getMarkRange.spec.ts b/packages/core/__tests__/getMarkRange.spec.ts similarity index 91% rename from tests/cypress/integration/core/getMarkRange.spec.ts rename to packages/core/__tests__/getMarkRange.spec.ts index d9dbf4152e..575d5cf9cb 100644 --- a/tests/cypress/integration/core/getMarkRange.spec.ts +++ b/packages/core/__tests__/getMarkRange.spec.ts @@ -1,11 +1,10 @@ -/// - import { getMarkRange, getSchemaByResolvedExtensions } from '@tiptap/core' import Document from '@tiptap/extension-document' import Link from '@tiptap/extension-link' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import { Node } from '@tiptap/pm/model' +import { describe, expect, it } from 'vitest' describe('getMarkRange', () => { const document = { @@ -29,7 +28,7 @@ describe('getMarkRange', () => { const $pos = doc.resolve(14) const range = getMarkRange($pos, schema.marks.link) - expect(range).to.deep.eq({ + expect(range).toEqual({ from: 11, to: 17, }) @@ -40,7 +39,7 @@ describe('getMarkRange', () => { const $pos = doc.resolve(11) const range = getMarkRange($pos, schema.marks.link) - expect(range).to.deep.eq({ + expect(range).toEqual({ from: 11, to: 17, }) @@ -51,7 +50,7 @@ describe('getMarkRange', () => { const $pos = doc.resolve(17) const range = getMarkRange($pos, schema.marks.link) - expect(range).to.deep.eq({ + expect(range).toEqual({ from: 11, to: 17, }) @@ -62,7 +61,7 @@ describe('getMarkRange', () => { const $pos = doc.resolve(6) const range = getMarkRange($pos, schema.marks.link) - expect(range).to.eq(undefined) + expect(range).toBe(undefined) }) it('doesnt cross node boundaries on backward check', () => { @@ -87,14 +86,14 @@ describe('getMarkRange', () => { const $pos = doc.resolve(28) const range = getMarkRange($pos, schema.marks.link) - expect(range).to.deep.eq({ + expect(range).toEqual({ from: 23, to: 28, }) const nextRange = getMarkRange(doc.resolve(30), schema.marks.link) - expect(nextRange).to.eq(undefined) + expect(nextRange).toBe(undefined) }) it('doesnt cross node boundaries on forward check', () => { @@ -118,12 +117,12 @@ describe('getMarkRange', () => { const range = getMarkRange(doc.resolve(32), schema.marks.link) - expect(range).to.eq(undefined) + expect(range).toBe(undefined) const $pos = doc.resolve(33) const nextRange = getMarkRange($pos, schema.marks.link) - expect(nextRange).to.deep.eq({ + expect(nextRange).toEqual({ from: 33, to: 39, }) @@ -155,13 +154,13 @@ describe('getMarkRange', () => { const $pos = doc.resolve(27) const range = getMarkRange($pos, schema.marks.link, { href: 'https://tiptap.dev' }) - expect(range).to.deep.eq({ + expect(range).toEqual({ from: 23, to: 28, }) const nextRange = getMarkRange(doc.resolve(28), schema.marks.link) - expect(nextRange).to.deep.eq({ from: 28, to: 40 }) + expect(nextRange).toEqual({ from: 28, to: 40 }) }) }) diff --git a/tests/cypress/integration/core/getTextContentFromNodes.spec.ts b/packages/core/__tests__/getTextContentFromNodes.spec.ts similarity index 91% rename from tests/cypress/integration/core/getTextContentFromNodes.spec.ts rename to packages/core/__tests__/getTextContentFromNodes.spec.ts index 62f38547b9..f73348fb56 100644 --- a/tests/cypress/integration/core/getTextContentFromNodes.spec.ts +++ b/packages/core/__tests__/getTextContentFromNodes.spec.ts @@ -1,11 +1,10 @@ -/// - import { getSchemaByResolvedExtensions, getTextContentFromNodes } from '@tiptap/core' import Document from '@tiptap/extension-document' import Mention from '@tiptap/extension-mention' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import { Node } from '@tiptap/pm/model' +import { describe, expect, it } from 'vitest' describe(getTextContentFromNodes.name, () => { it('gets text', () => { @@ -34,6 +33,6 @@ describe(getTextContentFromNodes.name, () => { const text = getTextContentFromNodes(pos) - expect(text).to.eq('Start @Mention End') + expect(text).toBe('Start @Mention End') }) }) diff --git a/tests/cypress/integration/core/isActive.spec.ts b/packages/core/__tests__/isActive.spec.ts similarity index 90% rename from tests/cypress/integration/core/isActive.spec.ts rename to packages/core/__tests__/isActive.spec.ts index 757634a254..c03143ac44 100644 --- a/tests/cypress/integration/core/isActive.spec.ts +++ b/packages/core/__tests__/isActive.spec.ts @@ -1,10 +1,9 @@ -/// - import { Editor } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import { Color, FontFamily, TextStyle } from '@tiptap/extension-text-style' +import { describe, expect, it } from 'vitest' describe('isActive', () => { it('should check the current node', () => { @@ -12,7 +11,7 @@ describe('isActive', () => { extensions: [Document, Paragraph, Text], }) - expect(editor.isActive('paragraph')).to.eq(true) + expect(editor.isActive('paragraph')).toBe(true) }) it('should check non-existent nodes', () => { @@ -20,7 +19,7 @@ describe('isActive', () => { extensions: [Document, Paragraph, Text], }) - expect(editor.isActive('doesNotExist')).to.eq(false) + expect(editor.isActive('doesNotExist')).toBe(false) }) it('should check the current mark for correct values', () => { @@ -31,7 +30,7 @@ describe('isActive', () => { `, }) - expect(editor.isActive('textStyle', { fontFamily: 'Inter' })).to.eq(true) + expect(editor.isActive('textStyle', { fontFamily: 'Inter' })).toBe(true) }) it('should check the current mark for false values', () => { @@ -42,7 +41,7 @@ describe('isActive', () => { `, }) - expect(editor.isActive('textStyle', { fontFamily: 'Comic Sans' })).to.eq(false) + expect(editor.isActive('textStyle', { fontFamily: 'Comic Sans' })).toBe(false) }) it('should check the current mark for any values', () => { @@ -53,7 +52,7 @@ describe('isActive', () => { `, }) - expect(editor.isActive('textStyle', { fontFamily: /.*/ })).to.eq(true) + expect(editor.isActive('textStyle', { fontFamily: /.*/ })).toBe(true) }) it('should check the current mark for correct values (multiple)', () => { @@ -64,7 +63,7 @@ describe('isActive', () => { `, }) - expect(editor.isActive('textStyle', { fontFamily: 'Inter', color: 'red' })).to.eq(true) + expect(editor.isActive('textStyle', { fontFamily: 'Inter', color: 'red' })).toBe(true) }) it('should check the current mark for false values (multiple)', () => { @@ -75,6 +74,6 @@ describe('isActive', () => { `, }) - expect(editor.isActive('textStyle', { fontFamily: 'Inter', color: 'green' })).to.eq(false) + expect(editor.isActive('textStyle', { fontFamily: 'Inter', color: 'green' })).toBe(false) }) }) diff --git a/tests/cypress/integration/core/isNodeEmpty.spec.ts b/packages/core/__tests__/isNodeEmpty.spec.ts similarity index 84% rename from tests/cypress/integration/core/isNodeEmpty.spec.ts rename to packages/core/__tests__/isNodeEmpty.spec.ts index e4c1dc9462..92960ea7da 100644 --- a/tests/cypress/integration/core/isNodeEmpty.spec.ts +++ b/packages/core/__tests__/isNodeEmpty.spec.ts @@ -1,10 +1,9 @@ -/// - import { getSchema, isNodeEmpty } from '@tiptap/core' import Document from '@tiptap/extension-document' import Image from '@tiptap/extension-image' import Mention from '@tiptap/extension-mention' import StarterKit from '@tiptap/starter-kit' +import { describe, expect, it } from 'vitest' const schema = getSchema([StarterKit, Mention]) const modifiedSchema = getSchema([ @@ -22,7 +21,7 @@ describe('isNodeEmpty', () => { it('should return true when text has only whitespace', () => { const node = schema.nodeFromJSON({ type: 'text', text: ' \n\t\r\n' }) - expect(isNodeEmpty(node, { ignoreWhitespace: true })).to.eq(true) + expect(isNodeEmpty(node, { ignoreWhitespace: true })).toBe(true) }) it('should return true when a paragraph has only whitespace', () => { @@ -31,13 +30,13 @@ describe('isNodeEmpty', () => { content: [{ type: 'text', text: ' \n\t\r\n' }], }) - expect(isNodeEmpty(node, { ignoreWhitespace: true })).to.eq(true) + expect(isNodeEmpty(node, { ignoreWhitespace: true })).toBe(true) }) it('should return true for a hardbreak', () => { const node = schema.nodeFromJSON({ type: 'hardBreak' }) - expect(isNodeEmpty(node, { ignoreWhitespace: true })).to.eq(true) + expect(isNodeEmpty(node, { ignoreWhitespace: true })).toBe(true) }) it('should return true when a paragraph has only a hardbreak', () => { @@ -46,7 +45,7 @@ describe('isNodeEmpty', () => { content: [{ type: 'hardBreak' }], }) - expect(isNodeEmpty(node, { ignoreWhitespace: true })).to.eq(true) + expect(isNodeEmpty(node, { ignoreWhitespace: true })).toBe(true) }) }) @@ -54,7 +53,7 @@ describe('isNodeEmpty', () => { it('should return false when text has content', () => { const node = schema.nodeFromJSON({ type: 'text', text: 'Hello world!' }) - expect(isNodeEmpty(node)).to.eq(false) + expect(isNodeEmpty(node)).toBe(false) }) it('should return false when a paragraph has text', () => { @@ -63,7 +62,7 @@ describe('isNodeEmpty', () => { content: [{ type: 'text', text: 'Hello world!' }], }) - expect(isNodeEmpty(node)).to.eq(false) + expect(isNodeEmpty(node)).toBe(false) }) it('should return false when a paragraph has hardbreaks', () => { @@ -72,7 +71,7 @@ describe('isNodeEmpty', () => { content: [{ type: 'hardBreak' }], }) - expect(isNodeEmpty(node)).to.eq(false) + expect(isNodeEmpty(node)).toBe(false) }) it('should return false when a paragraph has a mention', () => { @@ -89,7 +88,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(false) + expect(isNodeEmpty(node)).toBe(false) }) it('should return true when a paragraph has no content', () => { @@ -98,7 +97,7 @@ describe('isNodeEmpty', () => { content: [], }) - expect(isNodeEmpty(node)).to.eq(true) + expect(isNodeEmpty(node)).toBe(true) }) it('should return true when a paragraph has additional attrs & no content', () => { @@ -110,7 +109,7 @@ describe('isNodeEmpty', () => { }, }) - expect(isNodeEmpty(node)).to.eq(true) + expect(isNodeEmpty(node)).toBe(true) }) it('should return true when a paragraph has additional marks & no content', () => { @@ -123,7 +122,7 @@ describe('isNodeEmpty', () => { marks: [{ type: 'bold' }], }) - expect(isNodeEmpty(node)).to.eq(true) + expect(isNodeEmpty(node)).toBe(true) }) it('should return false when a document has text', () => { @@ -137,7 +136,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(false) + expect(isNodeEmpty(node)).toBe(false) }) it('should return true when a document has an empty paragraph', () => { const node = schema.nodeFromJSON({ @@ -150,7 +149,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(true) + expect(isNodeEmpty(node)).toBe(true) }) }) @@ -166,7 +165,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(false) + expect(isNodeEmpty(node)).toBe(false) }) it('should return false when a document has a filled paragraph', () => { @@ -181,7 +180,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(false) + expect(isNodeEmpty(node)).toBe(false) }) it('should return true when a document has an empty heading', () => { @@ -193,7 +192,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(true) + expect(isNodeEmpty(node)).toBe(true) }) it('should return true when a document has an empty heading with attrs', () => { @@ -202,7 +201,7 @@ describe('isNodeEmpty', () => { content: [{ type: 'heading', content: [], attrs: { level: 2 } }], }) - expect(isNodeEmpty(node)).to.eq(true) + expect(isNodeEmpty(node)).toBe(true) }) it('should return true when a document has an empty heading & paragraph', () => { @@ -214,7 +213,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(true) + expect(isNodeEmpty(node)).toBe(true) }) it('should return true when a document has an empty heading & paragraph with attributes', () => { const node = modifiedSchema.nodeFromJSON({ @@ -225,7 +224,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(true) + expect(isNodeEmpty(node)).toBe(true) }) it('can handle an image node', () => { @@ -237,7 +236,7 @@ describe('isNodeEmpty', () => { ], }) - expect(isNodeEmpty(node)).to.eq(false) + expect(isNodeEmpty(node)).toBe(false) }) }) }) diff --git a/tests/cypress/integration/core/mergeAttributes.spec.ts b/packages/core/__tests__/mergeAttributes.spec.ts similarity index 84% rename from tests/cypress/integration/core/mergeAttributes.spec.ts rename to packages/core/__tests__/mergeAttributes.spec.ts index 2fea11ad58..9e0cc73e3f 100644 --- a/tests/cypress/integration/core/mergeAttributes.spec.ts +++ b/packages/core/__tests__/mergeAttributes.spec.ts @@ -1,12 +1,11 @@ -/// - import { mergeAttributes } from '@tiptap/core' +import { describe, expect, it } from 'vitest' describe('mergeAttributes', () => { it('should merge two objects', () => { const value = mergeAttributes({ id: 1 }, { class: 'foo' }) - expect(value).to.deep.eq({ + expect(value).toEqual({ id: 1, class: 'foo', }) @@ -15,7 +14,7 @@ describe('mergeAttributes', () => { it('should merge multiple objects', () => { const value = mergeAttributes({ id: 1 }, { class: 'foo' }, { title: 'bar' }) - expect(value).to.deep.eq({ + expect(value).toEqual({ id: 1, class: 'foo', title: 'bar', @@ -25,7 +24,7 @@ describe('mergeAttributes', () => { it('should overwrite values', () => { const value = mergeAttributes({ id: 1 }, { id: 2 }) - expect(value).to.deep.eq({ + expect(value).toEqual({ id: 2, }) }) @@ -33,7 +32,7 @@ describe('mergeAttributes', () => { it('should merge classes', () => { const value = mergeAttributes({ class: 'foo' }, { class: 'bar' }) - expect(value).to.deep.eq({ + expect(value).toEqual({ class: 'foo bar', }) }) @@ -41,7 +40,7 @@ describe('mergeAttributes', () => { it('should merge styles', () => { const value = mergeAttributes({ style: 'color: red' }, { style: 'background: green' }) - expect(value).to.deep.eq({ + expect(value).toEqual({ style: 'color: red; background: green', }) }) @@ -49,7 +48,7 @@ describe('mergeAttributes', () => { it('should merge classes and styles', () => { const value = mergeAttributes({ class: 'foo', style: 'color: red' }, { class: 'bar', style: 'background: green' }) - expect(value).to.deep.eq({ + expect(value).toEqual({ class: 'foo bar', style: 'color: red; background: green', }) @@ -58,7 +57,7 @@ describe('mergeAttributes', () => { it('should ignore falsy values', () => { const value = mergeAttributes(undefined as any, { class: 'foo' }) - expect(value).to.deep.eq({ + expect(value).toEqual({ class: 'foo', }) }) @@ -66,7 +65,7 @@ describe('mergeAttributes', () => { it('should overwrite styles', () => { const value = mergeAttributes({ style: 'color: red' }, { style: 'color: green' }) - expect(value).to.deep.eq({ + expect(value).toEqual({ style: 'color: green', }) }) @@ -77,7 +76,7 @@ describe('mergeAttributes', () => { { style: 'color: green; background-color: red; margin-left: 30px' }, ) - expect(value).to.deep.eq({ + expect(value).toEqual({ style: 'color: green; background-color: red; margin-left: 30px', }) }) diff --git a/tests/cypress/integration/core/mergeDeep.spec.ts b/packages/core/__tests__/mergeDeep.spec.ts similarity index 73% rename from tests/cypress/integration/core/mergeDeep.spec.ts rename to packages/core/__tests__/mergeDeep.spec.ts index 31e18e7416..8955662b5a 100644 --- a/tests/cypress/integration/core/mergeDeep.spec.ts +++ b/packages/core/__tests__/mergeDeep.spec.ts @@ -1,6 +1,5 @@ -/// - import { mergeDeep } from '@tiptap/core' +import { describe, expect, it } from 'vitest' describe('mergeDeep', () => { it('should merge', () => { @@ -16,7 +15,7 @@ describe('mergeDeep', () => { } const merged = mergeDeep(one, two) - expect(merged).to.deep.eq(result) + expect(merged).toEqual(result) }) it('should merge when source has null value', () => { @@ -31,7 +30,7 @@ describe('mergeDeep', () => { } const merged = mergeDeep(one, two) - expect(merged).to.deep.eq(result) + expect(merged).toEqual(result) }) it('should not merge array', () => { @@ -46,22 +45,7 @@ describe('mergeDeep', () => { } const merged = mergeDeep(one, two) - expect(merged).to.deep.eq(result) - }) - - it('should merge when source has null value', () => { - const one = { - a: null, - } - const two = { - a: { c: 3 }, - } - const result = { - a: { c: 3 }, - } - const merged = mergeDeep(one, two) - - expect(merged).to.deep.eq(result) + expect(merged).toEqual(result) }) it('should allow nulling a value', () => { @@ -76,7 +60,7 @@ describe('mergeDeep', () => { } const merged = mergeDeep(one, two) - expect(merged).to.deep.eq(result) + expect(merged).toEqual(result) }) it('should merge deep', () => { @@ -108,6 +92,6 @@ describe('mergeDeep', () => { } const merged = mergeDeep(one, two) - expect(merged).to.deep.eq(result) + expect(merged).toEqual(result) }) }) diff --git a/tests/cypress/integration/core/onContentError.spec.ts b/packages/core/__tests__/onContentError.spec.ts similarity index 79% rename from tests/cypress/integration/core/onContentError.spec.ts rename to packages/core/__tests__/onContentError.spec.ts index 976d3a39ca..1d5cbafe60 100644 --- a/tests/cypress/integration/core/onContentError.spec.ts +++ b/packages/core/__tests__/onContentError.spec.ts @@ -1,9 +1,8 @@ -/// - import { Editor, Extension } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('onContentError', () => { it('does not emit a contentError on invalid content (by default)', () => { @@ -26,11 +25,11 @@ describe('onContentError', () => { content: json, extensions: [Document, Paragraph, Text], onContentError: () => { - expect(false).to.eq(true) + expect(false).toBe(true) }, }) - expect(editor.getText()).to.eq('') + expect(editor.getText()).toBe('') }) it('does not emit a contentError on invalid content (when enableContentCheck = false)', () => { const json = { @@ -53,13 +52,13 @@ describe('onContentError', () => { extensions: [Document, Paragraph, Text], enableContentCheck: false, onContentError: () => { - expect(false).to.eq(true) + expect(false).toBe(true) }, }) - expect(editor.getText()).to.eq('') + expect(editor.getText()).toBe('') }) - it('emits a contentError on invalid content (when enableContentCheck = true)', done => { + it('emits a contentError on invalid content (when enableContentCheck = true)', async () => { const json = { invalid: 'doc', content: [ @@ -75,17 +74,27 @@ describe('onContentError', () => { ], } + let contentErrorCalled = false + let errorMessage = '' + const editor = new Editor({ content: json, extensions: [Document, Paragraph, Text], enableContentCheck: true, onContentError: ({ error }) => { - expect(error.message).to.eq('[tiptap error]: Invalid JSON content') - done() + contentErrorCalled = true + errorMessage = error.message }, }) - expect(editor.getText()).to.eq('') + // Wait for async initialization to complete + await new Promise(resolve => { + setTimeout(resolve, 0) + }) + + expect(contentErrorCalled).toBe(true) + expect(errorMessage).toBe('[tiptap error]: Invalid JSON content') + expect(editor.getText()).toBe('') }) it('does not emit a contentError on valid content', () => { @@ -109,11 +118,11 @@ describe('onContentError', () => { extensions: [Document, Paragraph, Text], enableContentCheck: true, onContentError: () => { - expect(false).to.eq(true) + expect(false).toBe(true) }, }) - expect(editor.getText()).to.eq('Example Text') + expect(editor.getText()).toBe('Example Text') }) it('removes the collaboration extension when has invalid content (when enableContentCheck = true)', () => { @@ -150,12 +159,12 @@ describe('onContentError', () => { enableContentCheck: true, onContentError: args => { args.disableCollaboration() - expect(args.editor.storage.collaboration).to.eq(undefined) + expect(args.editor.storage.collaboration).toBe(undefined) }, }) - expect(editor.getText()).to.eq('') - expect(editor.storage.collaboration).to.eq(undefined) + expect(editor.getText()).toBe('') + expect(editor.storage.collaboration).toBe(undefined) }) it('does not remove the collaboration extension when has valid content (when enableContentCheck = true)', () => { @@ -192,11 +201,11 @@ describe('onContentError', () => { enableContentCheck: true, onContentError: () => { // Should not be called, so we fail the test - expect(true).to.eq(false) + expect(true).toBe(false) }, }) - expect(editor.getText()).to.eq('Example Text') - expect(editor.storage.collaboration.isDisabled).to.eq(false) + expect(editor.getText()).toBe('Example Text') + expect(editor.storage.collaboration.isDisabled).toBe(false) }) }) diff --git a/tests/cypress/integration/core/requiredAttributes.spec.ts b/packages/core/__tests__/requiredAttributes.spec.ts similarity index 70% rename from tests/cypress/integration/core/requiredAttributes.spec.ts rename to packages/core/__tests__/requiredAttributes.spec.ts index 0d6a778ce0..cb3985a622 100644 --- a/tests/cypress/integration/core/requiredAttributes.spec.ts +++ b/packages/core/__tests__/requiredAttributes.spec.ts @@ -1,9 +1,8 @@ -/// - import { Editor, Mark, Node } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('Required Attributes', () => { it('should mark node attributes as required when isRequired is true and no default is set', () => { @@ -30,14 +29,12 @@ describe('Required Attributes', () => { const nodeType = schema.nodes.customNode // Check that the required attribute does not have a default - expect(nodeType.spec.attrs?.requiredAttr).to.not.equal(undefined) - expect(nodeType.spec.attrs?.requiredAttr).to.not.have.property('default') + expect(nodeType.spec.attrs?.requiredAttr).not.toEqual(undefined) + expect(nodeType.spec.attrs?.requiredAttr).not.toHaveProperty('default') // Check that the optional attribute has a default - expect(nodeType.spec.attrs?.optionalAttr).to.not.equal(undefined) - expect(nodeType.spec.attrs?.optionalAttr).to.have.property('default') - - editor.destroy() + expect(nodeType.spec.attrs?.optionalAttr).not.toEqual(undefined) + expect(nodeType.spec.attrs?.optionalAttr).toHaveProperty('default') }) it('should mark mark attributes as required when isRequired is true and no default is set', () => { @@ -64,15 +61,13 @@ describe('Required Attributes', () => { const markType = schema.marks.customMark // Check that the required attribute does not have a default - expect(markType?.spec.attrs?.requiredAttr).to.not.equal(undefined) - expect(markType?.spec.attrs?.requiredAttr).to.not.have.property('default') + expect(markType?.spec.attrs?.requiredAttr).not.toEqual(undefined) + expect(markType?.spec.attrs?.requiredAttr).not.toHaveProperty('default') // Check that the optional attribute has a default - expect(markType?.spec.attrs?.optionalAttr).to.not.equal(undefined) - expect(markType?.spec.attrs?.optionalAttr).to.have.property('default') - expect(markType?.spec.attrs?.optionalAttr.default).to.equal('test') - - editor.destroy() + expect(markType?.spec.attrs?.optionalAttr).not.toEqual(undefined) + expect(markType?.spec.attrs?.optionalAttr).toHaveProperty('default') + expect(markType?.spec.attrs?.optionalAttr.default).toBe('test') }) it('should not mark attributes as required when they have an explicit default value', () => { @@ -107,13 +102,11 @@ describe('Required Attributes', () => { const nodeType = schema.nodes.customNode // All attributes should have a default property - expect(nodeType.spec.attrs?.attrWithNull).to.have.property('default', null) - expect(nodeType.spec.attrs?.attrWithValue).to.have.property('default', 'defaultValue') - expect(nodeType.spec.attrs?.attrWithZero).to.have.property('default', 0) - expect(nodeType.spec.attrs?.attrWithFalse).to.have.property('default', false) - expect(nodeType.spec.attrs?.attrWithUndefined).to.have.property('default', undefined) - - editor.destroy() + expect(nodeType.spec.attrs?.attrWithNull).toHaveProperty('default', null) + expect(nodeType.spec.attrs?.attrWithValue).toHaveProperty('default', 'defaultValue') + expect(nodeType.spec.attrs?.attrWithZero).toHaveProperty('default', 0) + expect(nodeType.spec.attrs?.attrWithFalse).toHaveProperty('default', false) + expect(nodeType.spec.attrs?.attrWithUndefined).toHaveProperty('default', undefined) }) it('should only include validate property when it is defined', () => { @@ -140,13 +133,11 @@ describe('Required Attributes', () => { const nodeType = schema.nodes.customNode // Check that the validated attribute has a validate property - expect(nodeType.spec.attrs?.validatedAttr).to.have.property('validate') - expect(nodeType.spec.attrs?.validatedAttr.validate).to.be.a('function') + expect(nodeType.spec.attrs?.validatedAttr).toHaveProperty('validate') + expect(nodeType.spec.attrs?.validatedAttr.validate).toBeTypeOf('function') // Check that the non-validated attribute does not have a validate property - expect(nodeType.spec.attrs?.nonValidatedAttr).to.not.have.property('validate') - - editor.destroy() + expect(nodeType.spec.attrs?.nonValidatedAttr).not.toHaveProperty('validate') }) it('should handle attributes with isRequired and validate together', () => { @@ -170,10 +161,8 @@ describe('Required Attributes', () => { const nodeType = schema.nodes.customNode // Check that the attribute is required (no default) but has validation - expect(nodeType.spec.attrs?.strictAttr).to.not.equal(undefined) - expect(nodeType.spec.attrs?.strictAttr).to.not.have.property('default') - expect(nodeType.spec.attrs?.strictAttr).to.have.property('validate') - - editor.destroy() + expect(nodeType.spec.attrs?.strictAttr).not.toEqual(undefined) + expect(nodeType.spec.attrs?.strictAttr).not.toHaveProperty('default') + expect(nodeType.spec.attrs?.strictAttr).toHaveProperty('validate') }) }) diff --git a/tests/cypress/integration/core/unmounted.spec.ts b/packages/core/__tests__/unmounted.spec.ts similarity index 85% rename from tests/cypress/integration/core/unmounted.spec.ts rename to packages/core/__tests__/unmounted.spec.ts index f92697e5b0..db981e5002 100644 --- a/tests/cypress/integration/core/unmounted.spec.ts +++ b/packages/core/__tests__/unmounted.spec.ts @@ -1,9 +1,8 @@ -/// - import { Editor } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('unmounted', () => { it('should not throw an error when the editor is unmounted', () => { @@ -14,8 +13,8 @@ describe('unmounted', () => { content: '

Hello

', }) - expect(!!editor).to.eq(true) - }).to.not.throw() + expect(!!editor).toBe(true) + }).not.toThrow() }) it('should have a view property that is not null', () => { @@ -24,7 +23,7 @@ describe('unmounted', () => { extensions: [Document, Paragraph, Text], content: '

Hello

', }) - expect(!!editor.view).to.eq(true) + expect(!!editor.view).toBe(true) }) it('should emit a mount event when the editor is mounted', async () => { @@ -36,13 +35,13 @@ describe('unmounted', () => { let called = false editor.on('mount', () => { called = true - expect(called).to.eq(true) + expect(called).toBe(true) }) editor.mount(document.createElement('div')) await new Promise(resolve => { setTimeout(resolve, 0) }) - expect(called).to.eq(true) + expect(called).toBe(true) editor.unmount() }) @@ -55,15 +54,15 @@ describe('unmounted', () => { let called = false editor.on('mount', () => { called = true - expect(document.head.querySelectorAll('style[data-tiptap-style]')).to.have.length(1) + expect(document.head.querySelectorAll('style[data-tiptap-style]')).toHaveLength(1) }) - expect(document.head.querySelectorAll('style[data-tiptap-style]')).to.have.length(0) + expect(document.head.querySelectorAll('style[data-tiptap-style]')).toHaveLength(0) editor.mount(document.createElement('div')) await new Promise(resolve => { setTimeout(resolve, 0) }) - expect(called).to.eq(true) + expect(called).toBe(true) editor.unmount() }) @@ -78,13 +77,13 @@ describe('unmounted', () => { let called = false editor.on('unmount', () => { called = true - expect(called).to.eq(true) + expect(called).toBe(true) }) editor.unmount() await new Promise(resolve => { setTimeout(resolve, 0) }) - expect(called).to.eq(true) + expect(called).toBe(true) }) it('should only remove injected CSS when the editor is unmounted if no other editors exist', async () => { @@ -108,19 +107,19 @@ describe('unmounted', () => { let called = false editorA.on('unmount', () => { - expect(document.head.querySelectorAll('style[data-tiptap-style]')).to.have.length(1) + expect(document.head.querySelectorAll('style[data-tiptap-style]')).toHaveLength(1) editorB.unmount() }) editorB.on('unmount', () => { called = true - expect(document.head.querySelectorAll('style[data-tiptap-style]')).to.have.length(0) + expect(document.head.querySelectorAll('style[data-tiptap-style]')).toHaveLength(0) }) editorA.unmount() await new Promise(resolve => { setTimeout(resolve, 0) }) - expect(called).to.eq(true) + expect(called).toBe(true) elementA.remove() elementB.remove() @@ -136,14 +135,14 @@ describe('unmounted', () => { let called = false editor.on('destroy', () => { called = true - expect(called).to.eq(true) + expect(called).toBe(true) }) editor.destroy() await new Promise(resolve => { setTimeout(resolve, 0) }) - expect(called).to.eq(true) - expect(editor.isDestroyed).to.eq(true) + expect(called).toBe(true) + expect(editor.isDestroyed).toBe(true) }) it('should emit an update event when the editor is updated', async () => { @@ -155,13 +154,13 @@ describe('unmounted', () => { let called = false editor.on('update', () => { called = true - expect(called).to.eq(true) + expect(called).toBe(true) }) editor.chain().setContent('

Test

').run() await new Promise(resolve => { setTimeout(resolve, 0) }) - expect(called).to.eq(true) + expect(called).toBe(true) }) it('should emit a transaction event when the editor is updated', async () => { @@ -173,13 +172,13 @@ describe('unmounted', () => { let called = false editor.on('transaction', () => { called = true - expect(called).to.eq(true) + expect(called).toBe(true) }) editor.chain().setContent('

Test

').run() await new Promise(resolve => { setTimeout(resolve, 0) }) - expect(called).to.eq(true) + expect(called).toBe(true) }) it('should emit a selectionUpdate event when the editor is updated', async () => { @@ -191,13 +190,13 @@ describe('unmounted', () => { let called = false editor.on('selectionUpdate', () => { called = true - expect(called).to.eq(true) + expect(called).toBe(true) }) editor.chain().setContent('

Test

').run() await new Promise(resolve => { setTimeout(resolve, 0) }) - expect(called).to.eq(true) + expect(called).toBe(true) }) it('should be able to make changes to the editor', () => { @@ -208,7 +207,7 @@ describe('unmounted', () => { }) editor.chain().setContent('

Test

').run() - expect(editor.state.doc.toJSON()).to.deep.eq({ + expect(editor.state.doc.toJSON()).toEqual({ type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Test' }] }], }) @@ -224,7 +223,7 @@ describe('unmounted', () => { editor.chain().setContent('

Test

').run() editor.chain().setContent('

Test 2

').run() - expect(editor.state.doc.toJSON()).to.deep.eq({ + expect(editor.state.doc.toJSON()).toEqual({ type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Test 2' }] }], }) @@ -237,7 +236,7 @@ describe('unmounted', () => { content: '

Hello

', }) editor.chain().setContent('

Test

').run() - expect(editor.view.state.doc.toJSON()).to.deep.eq({ + expect(editor.view.state.doc.toJSON()).toEqual({ type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Test' }] }], }) @@ -249,9 +248,9 @@ describe('unmounted', () => { extensions: [Document, Paragraph, Text], content: '

Hello

', }) - expect(editor.view.editable).to.eq(true) - expect(editor.view.composing).to.eq(false) - expect(editor.view.dragging).to.eq(null) - expect(editor.view.isDestroyed).to.eq(false) + expect(editor.view.editable).toBe(true) + expect(editor.view.composing).toBe(false) + expect(editor.view.dragging).toBe(null) + expect(editor.view.isDestroyed).toBe(false) }) }) diff --git a/tests/cypress/integration/extensions/bold.spec.ts b/packages/extension-bold/__tests__/bold.spec.ts similarity index 59% rename from tests/cypress/integration/extensions/bold.spec.ts rename to packages/extension-bold/__tests__/bold.spec.ts index cc0b25eeaa..6c6c735282 100644 --- a/tests/cypress/integration/extensions/bold.spec.ts +++ b/packages/extension-bold/__tests__/bold.spec.ts @@ -1,21 +1,20 @@ -/// - import { starInputRegex, starPasteRegex, underscoreInputRegex, underscorePasteRegex } from '@tiptap/extension-bold' +import { describe, expect, it } from 'vitest' describe('bold regex test', () => { it('star input regex matches', () => { - expect('**Test**').to.match(starInputRegex) + expect('**Test**').toMatch(starInputRegex) }) it('star paste regex matches', () => { - expect('**Test**').to.match(starPasteRegex) + expect('**Test**').toMatch(starPasteRegex) }) it('underscore input regex matches', () => { - expect('__Test__').to.match(underscoreInputRegex) + expect('__Test__').toMatch(underscoreInputRegex) }) it('underscore paste regex matches', () => { - expect('__Test__').to.match(underscorePasteRegex) + expect('__Test__').toMatch(underscorePasteRegex) }) }) diff --git a/tests/cypress/integration/extensions/codeBlockLowlight.spec.ts b/packages/extension-code-block-lowlight/__tests__/codeBlockLowlight.spec.ts similarity index 94% rename from tests/cypress/integration/extensions/codeBlockLowlight.spec.ts rename to packages/extension-code-block-lowlight/__tests__/codeBlockLowlight.spec.ts index 95767a00fe..0cd9236bdf 100644 --- a/tests/cypress/integration/extensions/codeBlockLowlight.spec.ts +++ b/packages/extension-code-block-lowlight/__tests__/codeBlockLowlight.spec.ts @@ -1,11 +1,10 @@ -/// - import { Editor } from '@tiptap/core' import { CodeBlockLowlight } from '@tiptap/extension-code-block-lowlight' import { Document } from '@tiptap/extension-document' import { Paragraph } from '@tiptap/extension-paragraph' import { Text } from '@tiptap/extension-text' import { all, createLowlight } from 'lowlight' +import { afterEach, beforeEach, describe, expect, it } from 'vitest' const lowlight = createLowlight(all) @@ -71,7 +70,7 @@ describe('code block highlight', () => { }) it('executes lowlight plugin in extensions that inherit from code-block-lowlight', () => { - expect(getEditorEl()?.querySelector('.language-javascript .hljs-string')).not.to.eq(null) - expect(getEditorEl()?.querySelector('.language-yaml .hljs-string')).not.to.eq(null) + expect(getEditorEl()?.querySelector('.language-javascript .hljs-string')).not.toBe(null) + expect(getEditorEl()?.querySelector('.language-yaml .hljs-string')).not.toBe(null) }) }) diff --git a/tests/cypress/integration/extensions/emoji.spec.ts b/packages/extension-emoji/__tests__/emoji.spec.ts similarity index 64% rename from tests/cypress/integration/extensions/emoji.spec.ts rename to packages/extension-emoji/__tests__/emoji.spec.ts index d5fbe0e71b..bb76c83bc6 100644 --- a/tests/cypress/integration/extensions/emoji.spec.ts +++ b/packages/extension-emoji/__tests__/emoji.spec.ts @@ -1,22 +1,21 @@ -/// - import { inputRegex, pasteRegex } from '@tiptap/extension-emoji' +import { describe, expect, it } from 'vitest' describe('emoji extension', () => { it('inputRegex matches typical shortcode', () => { - expect(':smile:').to.match(inputRegex) + expect(':smile:').toMatch(inputRegex) }) it('pasteRegex matches standalone shortcode', () => { - expect(':smile:').to.match(pasteRegex) + expect(':smile:').toMatch(pasteRegex) }) it('pasteRegex does NOT match shortcode inside url-like text', () => { // This should NOT match because the shortcode is part of a URL path - expect('https://example.com/:x:/sub/').to.not.match(pasteRegex) + expect('https://example.com/:x:/sub/').not.toMatch(pasteRegex) }) it('pasteRegex matches when preceded by space', () => { - expect(' test :smile: ').to.match(pasteRegex) + expect(' test :smile: ').toMatch(pasteRegex) }) }) diff --git a/tests/cypress/integration/extensions/horizontalRule.spec.ts b/packages/extension-horizontal-rule/__tests__/horizontalRule.spec.ts similarity index 92% rename from tests/cypress/integration/extensions/horizontalRule.spec.ts rename to packages/extension-horizontal-rule/__tests__/horizontalRule.spec.ts index a0c589487a..e378737d18 100644 --- a/tests/cypress/integration/extensions/horizontalRule.spec.ts +++ b/packages/extension-horizontal-rule/__tests__/horizontalRule.spec.ts @@ -4,6 +4,7 @@ import HorizontalRule from '@tiptap/extension-horizontal-rule' import Image from '@tiptap/extension-image' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('extension-horizontal-rule', () => { const editorElClass = 'tiptap' @@ -49,7 +50,7 @@ describe('extension-horizontal-rule', () => { editor.commands.setTextSelection(2) editor.commands.setHorizontalRule() - expect(editor.getHTML()).to.match(/

Example Text<\/p>/) + expect(editor.getHTML()).toMatch(/


Example Text<\/p>/) editor?.destroy() getEditorEl()?.remove() diff --git a/tests/cypress/integration/extensions/link.spec.ts b/packages/extension-link/__tests__/link.spec.ts similarity index 92% rename from tests/cypress/integration/extensions/link.spec.ts rename to packages/extension-link/__tests__/link.spec.ts index 4188c1c837..ea874789a8 100644 --- a/tests/cypress/integration/extensions/link.spec.ts +++ b/packages/extension-link/__tests__/link.spec.ts @@ -3,6 +3,7 @@ import Document from '@tiptap/extension-document' import Link from '@tiptap/extension-link' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' /** * Most link tests should actually exist in the demo/ app folder @@ -58,8 +59,8 @@ describe('extension-link', () => { }, }) - expect(editor.getHTML()).to.include(url) - expect(JSON.stringify(editor.getJSON())).to.include(url) + expect(editor.getHTML()).toContain(url) + expect(JSON.stringify(editor.getJSON())).toContain(url) editor?.destroy() getEditorEl()?.remove() @@ -74,8 +75,8 @@ describe('extension-link', () => { content: `

hello world!

`, }) - expect(editor.getHTML()).to.include(url) - expect(JSON.stringify(editor.getJSON())).to.include(url) + expect(editor.getHTML()).toContain(url) + expect(JSON.stringify(editor.getJSON())).toContain(url) editor?.destroy() getEditorEl()?.remove() @@ -205,10 +206,10 @@ describe('extension-link', () => { }, }) - expect(editor.getHTML()).to.not.include(url) + expect(editor.getHTML()).not.toContain(url) // Unfortunately, if the content is provided as JSON, it stays in the editor instance until it's destroyed // At least, it cannot be outputted as HTML into a page - // expect(JSON.stringify(editor.getJSON())).to.not.include(url) + // expect(JSON.stringify(editor.getJSON())).not.toContain(url) editor?.destroy() getEditorEl()?.remove() @@ -223,8 +224,8 @@ describe('extension-link', () => { content: `

hello world!

`, }) - expect(editor.getHTML()).to.not.include(url) - expect(JSON.stringify(editor.getJSON())).to.not.include(url) + expect(editor.getHTML()).not.toContain(url) + expect(JSON.stringify(editor.getJSON())).not.toContain(url) editor?.destroy() getEditorEl()?.remove() @@ -247,8 +248,8 @@ describe('extension-link', () => { content: `

hello world!

`, }) - expect(editor.getHTML()).to.include(url) - expect(JSON.stringify(editor.getJSON())).to.include(url) + expect(editor.getHTML()).toContain(url) + expect(JSON.stringify(editor.getJSON())).toContain(url) editor?.destroy() getEditorEl()?.remove() diff --git a/tests/cypress/integration/extensions/tableCell.spec.ts b/packages/extension-table/__tests__/tableCell.spec.ts similarity index 95% rename from tests/cypress/integration/extensions/tableCell.spec.ts rename to packages/extension-table/__tests__/tableCell.spec.ts index e8e37bf286..4b7db134a2 100644 --- a/tests/cypress/integration/extensions/tableCell.spec.ts +++ b/packages/extension-table/__tests__/tableCell.spec.ts @@ -1,10 +1,9 @@ -/// - import { Editor } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import { Table, TableCell, TableHeader, TableRow } from '@tiptap/extension-table' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('extension table cell', () => { const editorElClass = 'tiptap' @@ -39,7 +38,7 @@ describe('extension table cell', () => { content, }) - expect(editor.getHTML()).to.include('Jackson') + expect(editor.getHTML()).toContain('Jackson') editor?.destroy() getEditorEl()?.remove() @@ -66,7 +65,7 @@ describe('extension table cell', () => { }) // @ts-expect-error content is not guaranteed to be this shape - expect(editor.getJSON().content[0].content[0].content[0].attrs.colwidth[0]).to.eq(200) + expect(editor.getJSON().content[0].content[0].content[0].attrs.colwidth[0]).toBe(200) editor?.destroy() getEditorEl()?.remove() @@ -93,7 +92,7 @@ describe('extension table cell', () => { }) // @ts-expect-error content is not guaranteed to be this shape - expect(editor.getJSON().content[0].content[0].content[1].attrs.colwidth).deep.equal([150, 100]) + expect(editor.getJSON().content[0].content[0].content[1].attrs.colwidth).toEqual([150, 100]) editor?.destroy() getEditorEl()?.remove() diff --git a/tests/cypress/integration/extensions/tableHeader.spec.ts b/packages/extension-table/__tests__/tableHeader.spec.ts similarity index 95% rename from tests/cypress/integration/extensions/tableHeader.spec.ts rename to packages/extension-table/__tests__/tableHeader.spec.ts index ce973beeba..8177e1a258 100644 --- a/tests/cypress/integration/extensions/tableHeader.spec.ts +++ b/packages/extension-table/__tests__/tableHeader.spec.ts @@ -1,10 +1,9 @@ -/// - import { Editor } from '@tiptap/core' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import { Table, TableCell, TableHeader, TableRow } from '@tiptap/extension-table' import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' describe('extension table header', () => { const editorElClass = 'tiptap' @@ -39,7 +38,7 @@ describe('extension table header', () => { content, }) - expect(editor.getHTML()).to.include('Jackson') + expect(editor.getHTML()).toContain('Jackson') editor?.destroy() getEditorEl()?.remove() @@ -66,7 +65,7 @@ describe('extension table header', () => { }) // @ts-expect-error content is not guaranteed to be this shape - expect(editor.getJSON().content[0].content[0].content[0].attrs.colwidth[0]).to.eq(200) + expect(editor.getJSON().content[0].content[0].content[0].attrs.colwidth[0]).toBe(200) editor?.destroy() getEditorEl()?.remove() @@ -93,7 +92,7 @@ describe('extension table header', () => { }) // @ts-expect-error content is not guaranteed to be this shape - expect(editor.getJSON().content[0].content[0].content[1].attrs.colwidth).deep.equal([150, 100]) + expect(editor.getJSON().content[0].content[0].content[1].attrs.colwidth).toEqual([150, 100]) editor?.destroy() getEditorEl()?.remove() diff --git a/tests/cypress/integration/extensions/background-color.spec.ts b/packages/extension-text-style/__tests__/background-color.spec.ts similarity index 83% rename from tests/cypress/integration/extensions/background-color.spec.ts rename to packages/extension-text-style/__tests__/background-color.spec.ts index d28fd32305..267e55325e 100644 --- a/tests/cypress/integration/extensions/background-color.spec.ts +++ b/packages/extension-text-style/__tests__/background-color.spec.ts @@ -1,6 +1,5 @@ -/// - import { BackgroundColor } from '@tiptap/extension-text-style' +import { describe, expect, it } from 'vitest' const ext: any = (BackgroundColor as any).configure() const globalAttrs = ext.config.addGlobalAttributes && ext.config.addGlobalAttributes.call(ext)[0] @@ -13,7 +12,7 @@ describe('background-color parseHTML', () => { const parsed = parseHTML(el) - expect(parsed).to.equal('rgb(0, 255, 0)') + expect(parsed).toBe('rgb(0, 255, 0)') }) it('parses hex inline style', () => { @@ -22,7 +21,7 @@ describe('background-color parseHTML', () => { const parsed = parseHTML(el) - expect(parsed).to.equal('#00ff00') + expect(parsed).toBe('#00ff00') }) it('parses hsla inline style', () => { @@ -31,6 +30,6 @@ describe('background-color parseHTML', () => { const parsed = parseHTML(el) - expect(parsed).to.equal('hsla(120, 100%, 50%, 0.3)') + expect(parsed).toBe('hsla(120, 100%, 50%, 0.3)') }) }) diff --git a/tests/cypress/integration/extensions/color.spec.ts b/packages/extension-text-style/__tests__/color.spec.ts similarity index 82% rename from tests/cypress/integration/extensions/color.spec.ts rename to packages/extension-text-style/__tests__/color.spec.ts index 9c892d17c0..8043d96a93 100644 --- a/tests/cypress/integration/extensions/color.spec.ts +++ b/packages/extension-text-style/__tests__/color.spec.ts @@ -1,6 +1,5 @@ -/// - import { Color } from '@tiptap/extension-text-style' +import { describe, expect, it } from 'vitest' const ext: any = (Color as any).configure() const globalAttrs = ext.config.addGlobalAttributes && ext.config.addGlobalAttributes.call(ext)[0] @@ -13,7 +12,7 @@ describe('color parseHTML', () => { const parsed = parseHTML(el) - expect(parsed).to.equal('rgb(149, 141, 241)') + expect(parsed).toBe('rgb(149, 141, 241)') }) it('parses hex inline style', () => { @@ -22,7 +21,7 @@ describe('color parseHTML', () => { const parsed = parseHTML(el) - expect(parsed).to.equal('#958DF1') + expect(parsed).toBe('#958DF1') }) it('parses hsla inline style', () => { @@ -31,6 +30,6 @@ describe('color parseHTML', () => { const parsed = parseHTML(el) - expect(parsed).to.equal('hsla(252, 100%, 80%, 0.5)') + expect(parsed).toBe('hsla(252, 100%, 80%, 0.5)') }) }) diff --git a/tests/cypress/integration/extensions/youtube.spec.ts b/packages/extension-youtube/__tests__/youtube.spec.ts similarity index 91% rename from tests/cypress/integration/extensions/youtube.spec.ts rename to packages/extension-youtube/__tests__/youtube.spec.ts index 9640a9aa11..3a90736099 100644 --- a/tests/cypress/integration/extensions/youtube.spec.ts +++ b/packages/extension-youtube/__tests__/youtube.spec.ts @@ -3,6 +3,7 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import Youtube from '@tiptap/extension-youtube' +import { describe, expect, it } from 'vitest' /** * Most youtube tests should actually exist in the demo/ app folder @@ -47,7 +48,7 @@ describe('extension-youtube', () => { }, }) - expect(editor.getHTML()).to.not.include(url) + expect(editor.getHTML()).not.toContain(url) editor?.destroy() getEditorEl()?.remove() @@ -71,7 +72,7 @@ describe('extension-youtube', () => { }, }) - expect(editor.getHTML()).to.include('https://www.youtube-nocookie.com/embed/testvideoid') + expect(editor.getHTML()).toContain('https://www.youtube-nocookie.com/embed/testvideoid') editor?.destroy() getEditorEl()?.remove() diff --git a/tests/cypress/integration/html/generateHTML.spec.ts b/packages/html/__tests__/generateHTML.spec.ts similarity index 96% rename from tests/cypress/integration/html/generateHTML.spec.ts rename to packages/html/__tests__/generateHTML.spec.ts index 893082e1f7..933fac8212 100644 --- a/tests/cypress/integration/html/generateHTML.spec.ts +++ b/packages/html/__tests__/generateHTML.spec.ts @@ -1,5 +1,3 @@ -/// - import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' @@ -7,6 +5,7 @@ import { TextStyle } from '@tiptap/extension-text-style' import Youtube from '@tiptap/extension-youtube' import { generateHTML, generateJSON } from '@tiptap/html' import StarterKit from '@tiptap/starter-kit' +import { describe, expect, it } from 'vitest' describe('generateHTML', () => { it('generate HTML from JSON without an editor instance', () => { @@ -27,7 +26,7 @@ describe('generateHTML', () => { const html = generateHTML(json, [Document, Paragraph, Text]) - expect(html).to.eq('

Example Text

') + expect(html).toBe('

Example Text

') }) it('can convert from & to html', async () => { @@ -38,7 +37,7 @@ describe('generateHTML', () => {
` const json = generateJSON(html, extensions) - expect(json).to.deep.equal({ + expect(json).toEqual({ type: 'doc', content: [ { @@ -62,7 +61,7 @@ describe('generateHTML', () => { ], }) - expect(generateHTML(json, extensions)).to.equal( + expect(generateHTML(json, extensions)).toBe( '

Tiptap now supports YouTube embeds! Awesome!

', ) }) @@ -237,9 +236,9 @@ describe('generateHTML', () => { ], } - expect(json).to.deep.equal(expected) + expect(json).toEqual(expected) - expect(generateHTML(json, extensions)).to.equal( + expect(generateHTML(json, extensions)).toBe( `

Hi there,

this is a basic example of Tiptap. Sure, there are all kind of basic text styles you’d probably expect from a text editor. But wait until you see the lists:

  • That’s a bullet list with one …

  • … or two list items.

Isn’t that great? And all of that is editable. But wait, there’s more. Let’s try a code block:

body {
   display: none;
 }

I know, I know, this is impressive. It’s only the tip of the iceberg though. Give it a try and click a little bit around. Don’t forget to check the other examples too.

Wow, that’s amazing. Good work, boy! 👏
— Mom

`, diff --git a/tests/cypress/integration/html/generateJSON.spec.ts b/packages/html/__tests__/generateJSON.spec.ts similarity index 91% rename from tests/cypress/integration/html/generateJSON.spec.ts rename to packages/html/__tests__/generateJSON.spec.ts index 8aade90e23..f466cfb50c 100644 --- a/tests/cypress/integration/html/generateJSON.spec.ts +++ b/packages/html/__tests__/generateJSON.spec.ts @@ -1,10 +1,9 @@ -/// - import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import TextAlign from '@tiptap/extension-text-align' import { generateJSON } from '@tiptap/html' +import { describe, expect, it } from 'vitest' describe('generateJSON', () => { it('generate JSON from HTML without an editor instance', () => { @@ -12,7 +11,7 @@ describe('generateJSON', () => { const json = generateJSON(html, [Document, Paragraph, Text]) - expect(JSON.stringify(json)).to.eq( + expect(JSON.stringify(json)).toBe( JSON.stringify({ type: 'doc', content: [ @@ -36,7 +35,7 @@ describe('generateJSON', () => { const json = generateJSON(html, [Document, Paragraph, Text, TextAlign.configure({ types: ['paragraph'] })]) - expect(JSON.stringify(json)).to.eq( + expect(JSON.stringify(json)).toBe( JSON.stringify({ type: 'doc', content: [ diff --git a/tests/cypress/integration/markdown/conversion-files/bullet-list.ts b/packages/markdown/__tests__/conversion-files/bullet-list.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/bullet-list.ts rename to packages/markdown/__tests__/conversion-files/bullet-list.ts diff --git a/tests/cypress/integration/markdown/conversion-files/custom-atom.ts b/packages/markdown/__tests__/conversion-files/custom-atom.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/custom-atom.ts rename to packages/markdown/__tests__/conversion-files/custom-atom.ts diff --git a/tests/cypress/integration/markdown/conversion-files/custom-block.ts b/packages/markdown/__tests__/conversion-files/custom-block.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/custom-block.ts rename to packages/markdown/__tests__/conversion-files/custom-block.ts diff --git a/tests/cypress/integration/markdown/conversion-files/custom-inline.ts b/packages/markdown/__tests__/conversion-files/custom-inline.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/custom-inline.ts rename to packages/markdown/__tests__/conversion-files/custom-inline.ts diff --git a/tests/cypress/integration/markdown/conversion-files/hard-break-marks.ts b/packages/markdown/__tests__/conversion-files/hard-break-marks.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/hard-break-marks.ts rename to packages/markdown/__tests__/conversion-files/hard-break-marks.ts diff --git a/tests/cypress/integration/markdown/conversion-files/index.ts b/packages/markdown/__tests__/conversion-files/index.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/index.ts rename to packages/markdown/__tests__/conversion-files/index.ts diff --git a/tests/cypress/integration/markdown/conversion-files/mixed-list-types.ts b/packages/markdown/__tests__/conversion-files/mixed-list-types.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/mixed-list-types.ts rename to packages/markdown/__tests__/conversion-files/mixed-list-types.ts diff --git a/tests/cypress/integration/markdown/conversion-files/nested-nodes.ts b/packages/markdown/__tests__/conversion-files/nested-nodes.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/nested-nodes.ts rename to packages/markdown/__tests__/conversion-files/nested-nodes.ts diff --git a/tests/cypress/integration/markdown/conversion-files/ordered-list.ts b/packages/markdown/__tests__/conversion-files/ordered-list.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/ordered-list.ts rename to packages/markdown/__tests__/conversion-files/ordered-list.ts diff --git a/tests/cypress/integration/markdown/conversion-files/soft-break-marks.ts b/packages/markdown/__tests__/conversion-files/soft-break-marks.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/soft-break-marks.ts rename to packages/markdown/__tests__/conversion-files/soft-break-marks.ts diff --git a/tests/cypress/integration/markdown/conversion-files/task-list.ts b/packages/markdown/__tests__/conversion-files/task-list.ts similarity index 100% rename from tests/cypress/integration/markdown/conversion-files/task-list.ts rename to packages/markdown/__tests__/conversion-files/task-list.ts diff --git a/tests/cypress/integration/markdown/conversion.spec.ts b/packages/markdown/__tests__/conversion.spec.ts similarity index 94% rename from tests/cypress/integration/markdown/conversion.spec.ts rename to packages/markdown/__tests__/conversion.spec.ts index 2ddfd19078..2f7c13b4e9 100644 --- a/tests/cypress/integration/markdown/conversion.spec.ts +++ b/packages/markdown/__tests__/conversion.spec.ts @@ -11,6 +11,7 @@ import { Paragraph } from '@tiptap/extension-paragraph' import { Text } from '@tiptap/extension-text' import { Youtube } from '@tiptap/extension-youtube' import { MarkdownManager } from '@tiptap/markdown' +import { describe, expect, it } from 'vitest' import * as conversionfiles from './conversion-files/index.js' @@ -35,7 +36,7 @@ describe('Markdown Conversion Tests', () => { HTMLAttributes: { class: 'mention', }, - suggestion: null, + suggestion: undefined, }), Youtube.configure({ HTMLAttributes: { @@ -113,12 +114,12 @@ describe('Markdown Conversion Tests', () => { it('should convert simple markdown to expected JSON structure', () => { const json = markdownManager.parse(simpleMarkdown) - expect(json).to.deep.equal(simpleJSON) + expect(json).toEqual(simpleJSON) }) it('should convert simple JSON structure back to expected markdown', () => { const md = markdownManager.serialize(simpleJSON) - expect(md.trim()).to.equal(simpleMarkdown.trim()) + expect(md.trim()).toBe(simpleMarkdown.trim()) }) }) @@ -171,12 +172,12 @@ describe('Markdown Conversion Tests', () => { const normalizedActual = JSON.parse(JSON.stringify(json)) const normalizedExpected = JSON.parse(JSON.stringify(file.expectedOutput)) - expect(normalizedActual).to.deep.equal(normalizedExpected) + expect(normalizedActual).toEqual(normalizedExpected) }) it(`should convert ${file.name} JSON structure back to expected markdown`, () => { const md = markdownManager.serialize(file.expectedOutput) - expect(md.trim()).to.equal(file.expectedInput.trim()) + expect(md.trim()).toBe(file.expectedInput.trim()) }) }) }) diff --git a/tests/cypress/integration/markdown/blockquote.spec.ts b/packages/markdown/__tests__/extensions/blockquote.spec.ts similarity index 88% rename from tests/cypress/integration/markdown/blockquote.spec.ts rename to packages/markdown/__tests__/extensions/blockquote.spec.ts index 32588fa125..9ccfdbace8 100644 --- a/tests/cypress/integration/markdown/blockquote.spec.ts +++ b/packages/markdown/__tests__/extensions/blockquote.spec.ts @@ -5,6 +5,7 @@ import { Heading } from '@tiptap/extension-heading' import { Paragraph } from '@tiptap/extension-paragraph' import { Text } from '@tiptap/extension-text' import { MarkdownManager } from '@tiptap/markdown' +import { beforeEach, describe, expect, it } from 'vitest' describe('Blockquote Markdown Conversion', () => { let markdownManager: MarkdownManager @@ -22,7 +23,7 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) it('should convert a single-level blockquote with multiple paragraphs to markdown', () => { @@ -30,7 +31,7 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) it('should convert nested blockquotes to markdown', () => { @@ -38,7 +39,7 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) it('should handle blockquotes with varying nesting depths', () => { @@ -46,7 +47,7 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) it('should convert nested blockquotes with multiple paragraphs', () => { @@ -54,7 +55,7 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) it('should handle a blockquote that jumps multiple levels deep', () => { @@ -62,7 +63,7 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) it('should handle blockquotes going back to shallower nesting', () => { @@ -70,7 +71,7 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) it('should handle blockquotes with text content at different levels', () => { @@ -78,7 +79,7 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) it('should handle blockquotes with mixed content including headings', () => { @@ -87,6 +88,6 @@ describe('Blockquote Markdown Conversion', () => { const json = markdownManager.parse(markdown) const output = markdownManager.serialize(json) - expect(output.trim()).to.equal(markdown) + expect(output.trim()).toBe(markdown) }) }) diff --git a/tests/cypress/integration/markdown/manager.spec.ts b/packages/markdown/__tests__/manager.spec.ts similarity index 76% rename from tests/cypress/integration/markdown/manager.spec.ts rename to packages/markdown/__tests__/manager.spec.ts index 55d75d81cf..d82494df0d 100644 --- a/tests/cypress/integration/markdown/manager.spec.ts +++ b/packages/markdown/__tests__/manager.spec.ts @@ -1,5 +1,4 @@ -import type { Extension } from '@tiptap/core' -import { createBlockMarkdownSpec, createInlineMarkdownSpec, Node } from '@tiptap/core' +import { type AnyExtension, createBlockMarkdownSpec, createInlineMarkdownSpec, Node } from '@tiptap/core' import { Bold } from '@tiptap/extension-bold' import { Document } from '@tiptap/extension-document' import { Heading } from '@tiptap/extension-heading' @@ -12,6 +11,7 @@ import { Strike } from '@tiptap/extension-strike' import { Text } from '@tiptap/extension-text' import { Youtube } from '@tiptap/extension-youtube' import { MarkdownManager } from '@tiptap/markdown' +import { beforeEach, describe, expect, it } from 'vitest' // Create test extensions const TestCallout = Node.create({ @@ -57,8 +57,8 @@ const TestTag = Node.create({ describe('MarkdownManager Direct Tests', () => { let markdownManager: MarkdownManager - let basicExtensions: Extension[] - let extendedExtensions: Extension[] + let basicExtensions: AnyExtension[] + let extendedExtensions: AnyExtension[] beforeEach(() => { // Basic extensions for standard markdown @@ -106,10 +106,10 @@ describe('MarkdownManager Direct Tests', () => { const markdown = 'Hello world' const doc = markdownManager.parse(markdown) - expect(doc.type).to.equal('doc') - expect(doc.content).to.be.an('array') - expect(doc.content[0].type).to.equal('paragraph') - expect(doc.content[0].content[0].text).to.equal('Hello world') + expect(doc.type).toBe('doc') + expect(Array.isArray(doc.content)).toBe(true) + expect(doc.content![0].type).toBe('paragraph') + expect(doc.content![0].content![0].text).toBe('Hello world') }) it('should parse headings', () => { @@ -118,14 +118,14 @@ describe('MarkdownManager Direct Tests', () => { ## Heading 2` const doc = markdownManager.parse(markdown) - expect(doc.content).to.have.length(2) - expect(doc.content[0].type).to.equal('heading') - expect(doc.content[0].attrs.level).to.equal(1) - expect(doc.content[0].content[0].text).to.equal('Heading 1') + expect(doc.content).toHaveLength(2) + expect(doc.content![0].type).toBe('heading') + expect(doc.content![0].attrs!.level).toBe(1) + expect(doc.content![0].content![0].text).toBe('Heading 1') - expect(doc.content[1].type).to.equal('heading') - expect(doc.content[1].attrs.level).to.equal(2) - expect(doc.content[1].content[0].text).to.equal('Heading 2') + expect(doc.content![1].type).toBe('heading') + expect(doc.content![1].attrs!.level).toBe(2) + expect(doc.content![1].content![0].text).toBe('Heading 2') }) it('should parse multiple paragraphs', () => { @@ -134,11 +134,11 @@ describe('MarkdownManager Direct Tests', () => { Second paragraph.` const doc = markdownManager.parse(markdown) - expect(doc.content).to.have.length(2) - expect(doc.content[0].type).to.equal('paragraph') - expect(doc.content[0].content[0].text).to.equal('First paragraph.') - expect(doc.content[1].type).to.equal('paragraph') - expect(doc.content[1].content[0].text).to.equal('Second paragraph.') + expect(doc.content).toHaveLength(2) + expect(doc.content![0].type).toBe('paragraph') + expect(doc.content![0].content![0].text).toBe('First paragraph.') + expect(doc.content![1].type).toBe('paragraph') + expect(doc.content![1].content![0].text).toBe('Second paragraph.') }) }) @@ -152,19 +152,19 @@ Second paragraph.` const markdown = '[@ id="user123" label="John Doe"] said hello' const doc = markdownManager.parse(markdown) - expect(doc.content[0].type).to.equal('paragraph') - expect(doc.content[0].content[0].type).to.equal('mention') - expect(doc.content[0].content[0].attrs.id).to.equal('user123') - expect(doc.content[0].content[0].attrs.label).to.equal('John Doe') - expect(doc.content[0].content[1].text).to.equal(' said hello') + expect(doc.content![0].type).toBe('paragraph') + expect(doc.content![0].content![0].type).toBe('mention') + expect(doc.content![0].content![0].attrs!.id).toBe('user123') + expect(doc.content![0].content![0].attrs!.label).toBe('John Doe') + expect(doc.content![0].content![1].text).toBe(' said hello') }) it('should parse YouTube videos', () => { const markdown = ':::youtube {src="https://youtube.com/watch?v=test"} :::' const doc = markdownManager.parse(markdown) - expect(doc.content[0].type).to.equal('youtube') - expect(doc.content[0].attrs.src).to.equal('https://youtube.com/watch?v=test') + expect(doc.content![0].type).toBe('youtube') + expect(doc.content![0].attrs!.src).toBe('https://youtube.com/watch?v=test') }) it('should handle complex documents with mixed content', () => { @@ -180,14 +180,14 @@ Final paragraph.` const doc = markdownManager.parse(markdown) - expect(doc.content).to.have.length(5) - expect(doc.content[0].type).to.equal('heading') - expect(doc.content[1].type).to.equal('paragraph') - expect(doc.content[1].content[0].type).to.equal('text') - expect(doc.content[1].content[1].type).to.equal('mention') - expect(doc.content[2].type).to.equal('youtube') - expect(doc.content[3].type).to.equal('heading') - expect(doc.content[4].type).to.equal('paragraph') + expect(doc.content).toHaveLength(5) + expect(doc.content![0].type).toBe('heading') + expect(doc.content![1].type).toBe('paragraph') + expect(doc.content![1].content![0].type).toBe('text') + expect(doc.content![1].content![1].type).toBe('mention') + expect(doc.content![2].type).toBe('youtube') + expect(doc.content![3].type).toBe('heading') + expect(doc.content![4].type).toBe('paragraph') }) }) @@ -209,7 +209,7 @@ Final paragraph.` } const markdown = markdownManager.renderNodes(doc) - expect(markdown).to.equal('Hello world') + expect(markdown).toBe('Hello world') }) it('should render nested marks with correct tag order', () => { @@ -284,7 +284,7 @@ Final paragraph.` } const markdown = markdownManager.renderNodes(doc) - expect(markdown).to.equal('# Main Title\n\n## Subtitle') + expect(markdown).toBe('# Main Title\n\n## Subtitle') }) it('should render mentions', () => { @@ -305,7 +305,7 @@ Final paragraph.` } const markdown = markdownManager.renderNodes(doc) - expect(markdown).to.equal('[@ id="user123" label="John Doe"] said hello') + expect(markdown).toBe('[@ id="user123" label="John Doe"] said hello') }) it('should render YouTube videos', () => { @@ -320,7 +320,7 @@ Final paragraph.` } const markdown = markdownManager.renderNodes(doc) - expect(markdown).to.equal(':::youtube {src="https://youtube.com/watch?v=test"} :::') + expect(markdown).toBe(':::youtube {src="https://youtube.com/watch?v=test"} :::') }) }) @@ -362,7 +362,7 @@ Final paragraph.` // Normalize whitespace for comparison const normalizeWhitespace = (str: string) => str.replace(/\s+/g, ' ').trim() - expect(normalizeWhitespace(roundtripMarkdown)).to.equal(normalizeWhitespace(markdown)) + expect(normalizeWhitespace(roundtripMarkdown)).toBe(normalizeWhitespace(markdown)) }) }) }) @@ -375,15 +375,15 @@ Final paragraph.` minimalExtensions.forEach(ext => minimalManager.registerExtension(ext)) const simpleDoc = minimalManager.parse('Hello world') - expect(simpleDoc.content[0].type).to.equal('paragraph') + expect(simpleDoc.content![0].type).toBe('paragraph') // Test with extended extensions const extendedManager = new MarkdownManager() extendedExtensions.forEach(ext => extendedManager.registerExtension(ext)) const complexDoc = extendedManager.parse('# Title\n\n[@ id="user" label="User"]') - expect(complexDoc.content[0].type).to.equal('heading') - expect(complexDoc.content[1].content[0].type).to.equal('mention') + expect(complexDoc.content![0].type).toBe('heading') + expect(complexDoc.content![1].content![0].type).toBe('mention') }) it('should handle unknown markdown gracefully', () => { @@ -402,8 +402,8 @@ Final paragraph.` const doc = manager.parse(markdown) // Should treat it as regular text since it's not recognized markdown - expect(doc.content[0].type).to.equal('paragraph') - expect(doc.content[0].content[0].text).to.equal(markdown) + expect(doc.content![0].type).toBe('paragraph') + expect(doc.content![0].content![0].text).toBe(markdown) }) }) }) @@ -433,11 +433,11 @@ Final paragraph.` const renderTime = Date.now() - renderStartTime // Basic performance expectations (these would need to be tuned) - expect(parseTime).to.be.lessThan(1000) // Less than 1 second - expect(renderTime).to.be.lessThan(1000) // Less than 1 second - expect(doc.content).to.have.length.greaterThan(200) // Should have parsed many nodes - expect(rendered).to.include('Section 1') - expect(rendered).to.include('Section 100') + expect(parseTime).toBeLessThan(1000) // Less than 1 second + expect(renderTime).toBeLessThan(1000) // Less than 1 second + expect(doc.content!.length).toBeGreaterThan(200) // Should have parsed many nodes + expect(rendered).toContain('Section 1') + expect(rendered).toContain('Section 100') }) it('should handle deeply nested content', () => { @@ -454,9 +454,9 @@ Some text with [@ id="user" label="User"]. const doc = markdownManager.parse(nestedMarkdown) const rendered = markdownManager.renderNodes(doc) - expect(doc.content).to.have.length.greaterThan(1) - expect(rendered).to.include('Level 1') - expect(rendered).to.include('Level 2') + expect(doc.content!.length).toBeGreaterThan(1) + expect(rendered).toContain('Level 1') + expect(rendered).toContain('Level 2') }) }) }) diff --git a/tests/cypress/integration/markdown/mixed-html.spec.ts b/packages/markdown/__tests__/mixed-html.spec.ts similarity index 61% rename from tests/cypress/integration/markdown/mixed-html.spec.ts rename to packages/markdown/__tests__/mixed-html.spec.ts index 222545e0db..2c4a2f417f 100644 --- a/tests/cypress/integration/markdown/mixed-html.spec.ts +++ b/packages/markdown/__tests__/mixed-html.spec.ts @@ -1,9 +1,14 @@ +/** + * @vitest-environment happy-dom + */ + import { Document } from '@tiptap/extension-document' import { Heading } from '@tiptap/extension-heading' import { Italic } from '@tiptap/extension-italic' import { Paragraph } from '@tiptap/extension-paragraph' import { Text } from '@tiptap/extension-text' import { MarkdownManager } from '@tiptap/markdown' +import { beforeEach, describe, expect, it } from 'vitest' describe('MarkdownManager Mixed Markdown + HTML', () => { let manager: MarkdownManager @@ -17,56 +22,56 @@ describe('MarkdownManager Mixed Markdown + HTML', () => { const md = '## hello world' const doc = manager.parse(md) - expect(doc.type).to.equal('doc') - expect(doc.content).to.be.an('array') - const heading = doc.content[0] - expect(heading.type).to.equal('heading') + expect(doc.type).toBe('doc') + expect(Array.isArray(doc.content)).toBe(true) + const heading = doc.content![0] + expect(heading.type).toBe('heading') // Find the text node that contains 'world' - const textNodes = heading.content.flatMap((n: any) => (n.type === 'text' ? [n] : n.content || [])) + const textNodes = heading.content!.flatMap((n: any) => (n.type === 'text' ? [n] : n.content || [])) const worldNode = textNodes.find((n: any) => n.text && n.text.includes('world')) // Use a function-call assertion to avoid the "no-unused-expressions" lint error - expect(worldNode).to.not.equal(undefined) + expect(worldNode).not.toBe(undefined) // The italic mark should be present - expect(worldNode!.marks).to.be.an('array') + expect(Array.isArray(worldNode!.marks)).toBe(true) const hasItalic = worldNode!.marks.some((m: any) => m.type === 'italic') - expect(hasItalic).to.equal(true) + expect(hasItalic).toBe(true) }) it('parses standalone inline HTML world as italic', () => { const md = 'world' const doc = manager.parse(md) - expect(doc.type).to.equal('doc') + expect(doc.type).toBe('doc') // Inline HTML typically produces a paragraph wrapper - const paragraph = doc.content[0] - expect(paragraph.type).to.equal('paragraph') - const textNode = paragraph.content[0] - expect(textNode.text).to.equal('world') - expect(textNode.marks).to.be.an('array') + const paragraph = doc.content![0] + expect(paragraph.type).toBe('paragraph') + const textNode = paragraph.content![0] + expect(textNode.text).toBe('world') + expect(Array.isArray(textNode.marks)).toBe(true) const hasItalic = (textNode.marks || []).some((m: any) => m.type === 'italic') - expect(hasItalic).to.equal(true) + expect(hasItalic).toBe(true) }) it('parses markdown italic next to HTML italic correctly', () => { const md = '*a* b *c*' const doc = manager.parse(md) - expect(doc.type).to.equal('doc') - const para = doc.content[0] - expect(para.type).to.equal('paragraph') + expect(doc.type).toBe('doc') + const para = doc.content![0] + expect(para.type).toBe('paragraph') // Collect texts and their mark states - const runs = para.content.map((n: any) => ({ text: n.text, marks: n.marks || [] })) + const runs = para.content!.map((n: any) => ({ text: n.text, marks: n.marks || [] })) // Expect there to be runs containing a, b, c const texts = runs.map(r => (r.text || '').trim()) - expect(texts).to.include('a') - expect(texts).to.include('b') - expect(texts).to.include('c') + expect(texts).toContain('a') + expect(texts).toContain('b') + expect(texts).toContain('c') ;['a', 'b', 'c'].forEach(letter => { const node = runs.find(r => (r.text || '').trim() === letter) - expect(node).to.not.equal(undefined) + expect(node).not.toBe(undefined) const hasItalic = ((node as any).marks || []).some((m: any) => m.type === 'italic') - expect(hasItalic).to.equal(true) + expect(hasItalic).toBe(true) }) }) }) diff --git a/tests/cypress/integration/markdown/utilities.spec.ts b/packages/markdown/__tests__/utilities.spec.ts similarity index 73% rename from tests/cypress/integration/markdown/utilities.spec.ts rename to packages/markdown/__tests__/utilities.spec.ts index 64c6cec512..9f9acd7a12 100644 --- a/tests/cypress/integration/markdown/utilities.spec.ts +++ b/packages/markdown/__tests__/utilities.spec.ts @@ -1,5 +1,6 @@ import type { JSONContent } from '@tiptap/core' import { createAtomBlockMarkdownSpec, createBlockMarkdownSpec, createInlineMarkdownSpec } from '@tiptap/core' +import { describe, expect, it } from 'vitest' describe('Markdown Utilities', () => { describe('createInlineMarkdownSpec', () => { @@ -10,10 +11,10 @@ describe('Markdown Utilities', () => { allowedAttributes: ['id', 'label'], }) - expect(spec).to.have.property('parseMarkdown') - expect(spec).to.have.property('markdownTokenizer') - expect(spec).to.have.property('renderMarkdown') - expect(spec.markdownTokenizer.level).to.equal('inline') + expect(spec).toHaveProperty('parseMarkdown') + expect(spec).toHaveProperty('markdownTokenizer') + expect(spec).toHaveProperty('renderMarkdown') + expect(spec.markdownTokenizer.level).toBe('inline') }) it('should create a valid spec for inline nodes with content', () => { @@ -23,10 +24,10 @@ describe('Markdown Utilities', () => { allowedAttributes: ['color'], }) - expect(spec).to.have.property('parseMarkdown') - expect(spec).to.have.property('markdownTokenizer') - expect(spec).to.have.property('renderMarkdown') - expect(spec.markdownTokenizer.level).to.equal('inline') + expect(spec).toHaveProperty('parseMarkdown') + expect(spec).toHaveProperty('markdownTokenizer') + expect(spec).toHaveProperty('renderMarkdown') + expect(spec.markdownTokenizer.level).toBe('inline') }) it('should handle tokenizer start detection', () => { @@ -39,17 +40,17 @@ describe('Markdown Utilities', () => { const startIndex = typeof spec.markdownTokenizer.start === 'function' ? spec.markdownTokenizer.start?.(src) - : src.indexOf(spec.markdownTokenizer.start) + : src.indexOf(spec.markdownTokenizer.start!) - expect(startIndex).to.equal(0) + expect(startIndex).toBe(0) const falseSrc = 'no mention here' const noMatch = typeof spec.markdownTokenizer.start === 'function' ? spec.markdownTokenizer.start?.(falseSrc) - : falseSrc.indexOf(spec.markdownTokenizer.start) + : falseSrc.indexOf(spec.markdownTokenizer.start!) - expect(noMatch).to.equal(-1) + expect(noMatch).toBe(-1) }) it('should tokenize self-closing shortcodes correctly', () => { @@ -58,8 +59,8 @@ describe('Markdown Utilities', () => { selfClosing: true, }) - const token = spec.markdownTokenizer.tokenize('[mention id="test" label="Test User"]', [], null) - expect(token).to.deep.include({ + const token = spec.markdownTokenizer.tokenize('[mention id="test" label="Test User"]', [], null as any) + expect(token).toMatchObject({ type: 'mention', raw: '[mention id="test" label="Test User"]', content: '', @@ -76,8 +77,12 @@ describe('Markdown Utilities', () => { selfClosing: false, }) - const token = spec.markdownTokenizer.tokenize('[highlight color="yellow"]highlighted text[/highlight]', [], null) - expect(token).to.deep.include({ + const token = spec.markdownTokenizer.tokenize( + '[highlight color="yellow"]highlighted text[/highlight]', + [], + null as any, + ) + expect(token).toMatchObject({ type: 'highlight', raw: '[highlight color="yellow"]highlighted text[/highlight]', content: 'highlighted text', @@ -103,7 +108,7 @@ describe('Markdown Utilities', () => { } const rendered = spec.renderMarkdown(node) - expect(rendered).to.equal('[mention id="test" label="Test User"]') + expect(rendered).toBe('[mention id="test" label="Test User"]') }) it('should render shortcodes with content correctly', () => { @@ -121,7 +126,7 @@ describe('Markdown Utilities', () => { } const rendered = spec.renderMarkdown(node) - expect(rendered).to.equal('[highlight color="yellow"]highlighted text[/highlight]') + expect(rendered).toBe('[highlight color="yellow"]highlighted text[/highlight]') }) }) @@ -131,10 +136,10 @@ describe('Markdown Utilities', () => { nodeName: 'callout', }) - expect(spec).to.have.property('parseMarkdown') - expect(spec).to.have.property('markdownTokenizer') - expect(spec).to.have.property('renderMarkdown') - expect(spec.markdownTokenizer.level).to.equal('block') + expect(spec).toHaveProperty('parseMarkdown') + expect(spec).toHaveProperty('markdownTokenizer') + expect(spec).toHaveProperty('renderMarkdown') + expect(spec.markdownTokenizer.level).toBe('block') }) it('should handle tokenizer start detection', () => { @@ -146,17 +151,17 @@ describe('Markdown Utilities', () => { const startIndex = typeof spec.markdownTokenizer.start === 'function' ? spec.markdownTokenizer.start?.(src) - : src.indexOf(spec.markdownTokenizer.start) + : src.indexOf(spec.markdownTokenizer.start!) - expect(startIndex).to.equal(0) + expect(startIndex).toBe(0) const falseSrc = 'no callout here' const noMatch = typeof spec.markdownTokenizer.start === 'function' ? spec.markdownTokenizer.start?.(falseSrc) - : falseSrc.indexOf(spec.markdownTokenizer.start) + : falseSrc.indexOf(spec.markdownTokenizer.start!) - expect(noMatch).to.equal(-1) + expect(noMatch).toBe(-1) }) it('should tokenize block syntax correctly', () => { @@ -170,13 +175,15 @@ describe('Markdown Utilities', () => { } const token = spec.markdownTokenizer.tokenize(':::callout {type="info"}\nThis is a callout\n:::', [], mockLexer) - expect(token).to.deep.include({ + expect(token).toMatchObject({ type: 'callout', attributes: { type: 'info' }, content: 'This is a callout', }) - expect(token).to.have.property('tokens').that.is.an('array').with.lengthOf(1) + expect(token).toHaveProperty('tokens') + expect(Array.isArray((token as any).tokens)).toBe(true) + expect((token as any).tokens).toHaveLength(1) }) it('should render block syntax correctly', () => { @@ -197,7 +204,7 @@ describe('Markdown Utilities', () => { } const rendered = spec.renderMarkdown(node, mockHelpers) - expect(rendered).to.equal(':::callout {type="info"}\n\nThis is a callout\n\n:::') + expect(rendered).toBe(':::callout {type="info"}\n\nThis is a callout\n\n:::') }) }) @@ -207,10 +214,10 @@ describe('Markdown Utilities', () => { nodeName: 'youtube', }) - expect(spec).to.have.property('parseMarkdown') - expect(spec).to.have.property('markdownTokenizer') - expect(spec).to.have.property('renderMarkdown') - expect(spec.markdownTokenizer.level).to.equal('block') + expect(spec).toHaveProperty('parseMarkdown') + expect(spec).toHaveProperty('markdownTokenizer') + expect(spec).toHaveProperty('renderMarkdown') + expect(spec.markdownTokenizer.level).toBe('block') }) it('should handle tokenizer start detection', () => { @@ -222,15 +229,15 @@ describe('Markdown Utilities', () => { const startIndex = typeof spec.markdownTokenizer.start === 'function' ? spec.markdownTokenizer.start?.(src) - : src.indexOf(spec.markdownTokenizer.start) - expect(startIndex).to.equal(0) + : src.indexOf(spec.markdownTokenizer.start!) + expect(startIndex).toBe(0) const falseSrc = 'no youtube here' const noMatch = typeof spec.markdownTokenizer.start === 'function' ? spec.markdownTokenizer.start?.(falseSrc) - : falseSrc.indexOf(spec.markdownTokenizer.start) - expect(noMatch).to.equal(-1) + : falseSrc.indexOf(spec.markdownTokenizer.start!) + expect(noMatch).toBe(-1) }) it('should tokenize atom block syntax correctly', () => { @@ -241,9 +248,9 @@ describe('Markdown Utilities', () => { const token = spec.markdownTokenizer.tokenize( ':::youtube {src="https://youtube.com/watch?v=test"} :::\n', [], - null, + null as any, ) - expect(token).to.deep.include({ + expect(token).toMatchObject({ type: 'youtube', raw: ':::youtube {src="https://youtube.com/watch?v=test"} :::\n', attributes: { @@ -259,14 +266,14 @@ describe('Markdown Utilities', () => { }) // Should fail without required attribute - const tokenWithoutSrc = spec.markdownTokenizer.tokenize(':::youtube {width="400"} :::\n', [], null) - expect(tokenWithoutSrc).to.equal(undefined) + const tokenWithoutSrc = spec.markdownTokenizer.tokenize(':::youtube {width="400"} :::\n', [], null as any) + expect(tokenWithoutSrc).toBe(undefined) // Should succeed with required attribute - const tokenWithSrc = spec.markdownTokenizer.tokenize(':::youtube {src="test"} :::\n', [], null) - expect(tokenWithSrc).to.not.equal(undefined) - expect(tokenWithSrc).to.have.property('attributes') - expect((tokenWithSrc as any).attributes).to.have.property('src', 'test') + const tokenWithSrc = spec.markdownTokenizer.tokenize(':::youtube {src="test"} :::\n', [], null as any) + expect(tokenWithSrc).not.toBe(undefined) + expect(tokenWithSrc).toHaveProperty('attributes') + expect((tokenWithSrc as any).attributes).toHaveProperty('src', 'test') }) it('should render atom block syntax correctly', () => { @@ -284,7 +291,7 @@ describe('Markdown Utilities', () => { } const rendered = spec.renderMarkdown(node) - expect(rendered).to.equal(':::youtube {src="https://youtube.com/watch?v=test" width="400"} :::') + expect(rendered).toBe(':::youtube {src="https://youtube.com/watch?v=test" width="400"} :::') }) it('should apply default attributes', () => { @@ -304,7 +311,7 @@ describe('Markdown Utilities', () => { const token = { attributes: { src: 'test' } } const result = spec.parseMarkdown(token as any, mockHelpers as any) - expect((result as any).attrs).to.deep.include({ + expect((result as any).attrs).toMatchObject({ src: 'test', start: '0', width: '640', diff --git a/tests/cypress/integration/static-renderer/json-string.spec.ts b/packages/static-renderer/__tests__/json-string.spec.ts similarity index 90% rename from tests/cypress/integration/static-renderer/json-string.spec.ts rename to packages/static-renderer/__tests__/json-string.spec.ts index 9ea062d450..5efd181738 100644 --- a/tests/cypress/integration/static-renderer/json-string.spec.ts +++ b/packages/static-renderer/__tests__/json-string.spec.ts @@ -1,5 +1,3 @@ -/// - import type { TextType } from '@tiptap/core' import Bold from '@tiptap/extension-bold' import Document from '@tiptap/extension-document' @@ -9,6 +7,7 @@ import Youtube from '@tiptap/extension-youtube' import { Mark, Node } from '@tiptap/pm/model' import { renderJSONContentToString, serializeChildrenToHTMLString } from '@tiptap/static-renderer/json/html-string' import { renderToHTMLString } from '@tiptap/static-renderer/pm/html-string' +import { describe, expect, it } from 'vitest' describe('static render json to string (no prosemirror)', () => { it('generate an HTML string from JSON without an editor instance', () => { @@ -43,7 +42,7 @@ describe('static render json to string (no prosemirror)', () => { markMapping: {}, })({ content: json }) - expect(html).to.eq('

Example Text

') + expect(html).toBe('

Example Text

') }) it('supports mapping nodes & marks', () => { @@ -88,7 +87,7 @@ describe('static render json to string (no prosemirror)', () => { }, })({ content: json }) - expect(html).to.eq('

Example Text

') + expect(html).toBe('

Example Text

') }) it('gives access to the original JSON node or mark', () => { @@ -120,11 +119,11 @@ describe('static render json to string (no prosemirror)', () => { const html = renderJSONContentToString({ nodeMapping: { doc: ({ node, children }) => { - expect(node).to.deep.eq(json) + expect(node).toEqual(json) return `${serializeChildrenToHTMLString(children)}` }, heading: ({ node, children }) => { - expect(node).to.deep.eq({ + expect(node).toEqual({ type: 'heading', attrs: { level: 2, @@ -145,7 +144,7 @@ describe('static render json to string (no prosemirror)', () => { return `${serializeChildrenToHTMLString(children)}` }, text: ({ node }) => { - expect(node).to.deep.eq({ + expect(node).toEqual({ type: 'text', text: 'Example Text', marks: [ @@ -160,7 +159,7 @@ describe('static render json to string (no prosemirror)', () => { }, markMapping: { bold: ({ children, mark }) => { - expect(mark).to.deep.eq({ + expect(mark).toEqual({ type: 'bold', attrs: {}, }) @@ -169,7 +168,7 @@ describe('static render json to string (no prosemirror)', () => { }, })({ content: json }) - expect(html).to.eq('

Example Text

') + expect(html).toBe('

Example Text

') }) }) @@ -202,7 +201,7 @@ describe('static render json to string (with prosemirror)', () => { extensions: [Document, Paragraph, Text, Bold], }) - expect(html).to.eq('

Example Text

') + expect(html).toBe('

Example Text

') }) it('supports custom mapping for nodes & marks', () => { @@ -245,7 +244,7 @@ describe('static render json to string (with prosemirror)', () => { }, }) - expect(html).to.eq('

Example Text

') + expect(html).toBe('

Example Text

') }) it('gives access to a prosemirror node or mark instance', () => { @@ -277,22 +276,22 @@ describe('static render json to string (with prosemirror)', () => { options: { nodeMapping: { doc: ({ children, node }) => { - expect(node.type.name).to.eq('doc') - expect(node).to.be.instanceOf(Node) + expect(node.type.name).toBe('doc') + expect(node).toBeInstanceOf(Node) return `${serializeChildrenToHTMLString(children)}` }, }, markMapping: { bold: ({ children, mark }) => { - expect(mark.type.name).to.eq('bold') - expect(mark).to.be.instanceOf(Mark) + expect(mark.type.name).toBe('bold') + expect(mark).toBeInstanceOf(Mark) return `${serializeChildrenToHTMLString(children)}` }, }, }, }) - expect(html).to.eq('

Example Text

') + expect(html).toBe('

Example Text

') }) it('renders youtube extension followed by other nodes correctly', () => { diff --git a/tests/cypress/integration/static-renderer/md-string.spec.ts b/packages/static-renderer/__tests__/md-string.spec.ts similarity index 97% rename from tests/cypress/integration/static-renderer/md-string.spec.ts rename to packages/static-renderer/__tests__/md-string.spec.ts index 9f1c3f76bd..19ee26f0a2 100644 --- a/tests/cypress/integration/static-renderer/md-string.spec.ts +++ b/packages/static-renderer/__tests__/md-string.spec.ts @@ -1,8 +1,7 @@ -/// - import { TableKit } from '@tiptap/extension-table' import StarterKit from '@tiptap/starter-kit' import { renderToMarkdown } from '@tiptap/static-renderer/pm/markdown' +import { describe, expect, it } from 'vitest' describe('static render json to string (no prosemirror)', () => { it('should return empty string for empty content', () => { @@ -14,7 +13,7 @@ describe('static render json to string (no prosemirror)', () => { content: json, extensions: [StarterKit, TableKit], }) - expect(md).to.eq('') + expect(md).toBe('') }) it('should render empty paragraph', () => { @@ -31,7 +30,7 @@ describe('static render json to string (no prosemirror)', () => { content: json, extensions: [StarterKit, TableKit], }) - expect(md).to.eq('\n\n') + expect(md).toBe('\n\n') }) it('should render a simple paragraph', () => { @@ -53,7 +52,7 @@ describe('static render json to string (no prosemirror)', () => { content: json, extensions: [StarterKit, TableKit], }) - expect(md).to.eq('\nHello, world!\n') + expect(md).toBe('\nHello, world!\n') }) it('should render a simple table', () => { @@ -255,7 +254,7 @@ describe('static render json to string (no prosemirror)', () => { } const md = renderToMarkdown({ content: json, extensions: [StarterKit, TableKit] }) - expect(md).to.eq( + expect(md).toBe( '\n| Col 1 | Col 2 | Col 3 |\n| --- | --- | --- |\n| Row 1 1 | 112 | 1334 |\n| Row 2 1 | 115 | 4 |\n\n', ) }) diff --git a/tests/cypress/integration/static-renderer/react-string.spec.ts b/packages/static-renderer/__tests__/react-string.spec.ts similarity index 91% rename from tests/cypress/integration/static-renderer/react-string.spec.ts rename to packages/static-renderer/__tests__/react-string.spec.ts index cd7c68c597..58a580949b 100644 --- a/tests/cypress/integration/static-renderer/react-string.spec.ts +++ b/packages/static-renderer/__tests__/react-string.spec.ts @@ -1,5 +1,3 @@ -/// - import { prettyDOM, render } from '@testing-library/react' import Bold from '@tiptap/extension-bold' import Document from '@tiptap/extension-document' @@ -8,6 +6,7 @@ import Text from '@tiptap/extension-text' import { Mark, Node } from '@tiptap/pm/model' import { mapAttrsToHTMLAttributes, renderToReactElement } from '@tiptap/static-renderer/pm/react' import React from 'react' +import { describe, expect, it } from 'vitest' describe('static renderer: react', () => { it('mapAttrsToHTMLAttributes maps attributes to React attributes', () => { @@ -19,7 +18,7 @@ describe('static renderer: react', () => { const result = mapAttrsToHTMLAttributes(attrs, 'test-key') - expect(result).to.deep.equal({ + expect(result).toEqual({ className: 'my-class', style: { color: 'red', fontSize: '16px', transform: 'translateX(15px) translateY(10px)' }, id: 'my-id', @@ -60,7 +59,7 @@ describe('static render json to react elements (with prosemirror)', () => { ) const html = prettyDOM(view.container, undefined, { highlight: false }) - expect(html).to.eq(`
+ expect(html).toBe(`

Example Text @@ -112,7 +111,7 @@ describe('static render json to react elements (with prosemirror)', () => { ) const html = prettyDOM(view.container, undefined, { highlight: false }) - expect(html).to.eq(`

+ expect(html).toBe(`

@@ -153,15 +152,15 @@ describe('static render json to react elements (with prosemirror)', () => { options: { nodeMapping: { doc: ({ children, node }) => { - expect(node.type.name).to.eq('doc') - expect(node).to.be.instanceOf(Node) + expect(node.type.name).toBe('doc') + expect(node).toBeInstanceOf(Node) return React.createElement('doc', {}, children) }, }, markMapping: { bold: ({ children, mark }) => { - expect(mark.type.name).to.eq('bold') - expect(mark).to.be.instanceOf(Mark) + expect(mark.type.name).toBe('bold') + expect(mark).toBeInstanceOf(Mark) return React.createElement('b', {}, children) }, }, @@ -170,7 +169,7 @@ describe('static render json to react elements (with prosemirror)', () => { ) const html = prettyDOM(view.container, undefined, { highlight: false }) - expect(html).to.eq(`

+ expect(html).toBe(`

diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 56a91f03d3..4a14f2d626 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -58,6 +58,9 @@ importers: '@typescript-eslint/parser': specifier: ^8.19.0 version: 8.21.0(eslint@8.57.1)(typescript@5.7.3) + '@vitest/ui': + specifier: ^4.0.7 + version: 4.0.7(vitest@4.0.7) babel-loader: specifier: ^9.2.1 version: 9.2.1(@babel/core@7.26.0)(webpack@5.97.1(esbuild@0.24.2)) @@ -94,6 +97,12 @@ importers: eslint-plugin-vue: specifier: ^9.32.0 version: 9.32.0(eslint@8.57.1) + fast-glob: + specifier: ^3.3.2 + version: 3.3.3 + happy-dom: + specifier: ^20.0.2 + version: 20.0.2 http-server: specifier: 14.1.1 version: 14.1.1 @@ -133,6 +142,9 @@ importers: typescript: specifier: ^5.7.3 version: 5.7.3 + vitest: + specifier: ^4.0.7 + version: 4.0.7(@types/node@22.10.3)(@vitest/ui@4.0.7)(happy-dom@20.0.2)(jiti@2.4.2)(sass@1.83.4)(terser@5.37.0)(yaml@2.7.0) webpack: specifier: ^5.97.1 version: 5.97.1(esbuild@0.24.2) @@ -2451,6 +2463,9 @@ packages: '@jridgewell/sourcemap-codec@1.5.0': resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} @@ -2695,6 +2710,9 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} + '@polka/url@1.0.0-next.29': + resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} + '@preact/signals-core@1.12.1': resolution: {integrity: sha512-BwbTXpj+9QutoZLQvbttRg5x3l5468qaV2kufh+51yha1c53ep5dY4kTuZR35+3pAZxpfQerGJiQqg34ZNZ6uA==} @@ -2932,6 +2950,9 @@ packages: '@shikijs/vscode-textmate@10.0.1': resolution: {integrity: sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==} + '@standard-schema/spec@1.0.0': + resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} + '@sveltejs/vite-plugin-svelte-inspector@2.1.0': resolution: {integrity: sha512-9QX28IymvBlSCqsCll5t0kQVxipsfhFFL+L2t3nTWfXnddYwxBuAEtTtlaVQpRz9c37BhJjltSeY4AJSC03SSg==} engines: {node: ^18.0.0 || >=20} @@ -3090,9 +3111,15 @@ packages: '@types/aria-query@5.0.4': resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} + '@types/chai@5.2.3': + resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} + '@types/conventional-commits-parser@5.0.1': resolution: {integrity: sha512-7uz5EHdzz2TqoMfV7ee61Egf5y6NkcO4FB/1iCCQnbeiI1F3xzv3vK5dBCXUCLQgGYS+mUeigK1iKQzvED+QnQ==} + '@types/deep-eql@4.0.2': + resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==} + '@types/eslint-scope@3.7.7': resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==} @@ -3245,6 +3272,40 @@ packages: vite: ^5.0.0 || ^6.0.0 vue: ^3.2.25 + '@vitest/expect@4.0.7': + resolution: {integrity: sha512-jGRG6HghnJDjljdjYIoVzX17S6uCVCBRFnsgdLGJ6CaxfPh8kzUKe/2n533y4O/aeZ/sIr7q7GbuEbeGDsWv4Q==} + + '@vitest/mocker@4.0.7': + resolution: {integrity: sha512-OsDwLS7WnpuNslOV6bJkXVYVV/6RSc4eeVxV7h9wxQPNxnjRvTTrIikfwCbMyl8XJmW6oOccBj2Q07YwZtQcCw==} + peerDependencies: + msw: ^2.4.9 + vite: ^6.0.0 || ^7.0.0-0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + + '@vitest/pretty-format@4.0.7': + resolution: {integrity: sha512-YY//yxqTmk29+/pK+Wi1UB4DUH3lSVgIm+M10rAJ74pOSMgT7rydMSc+vFuq9LjZLhFvVEXir8EcqMke3SVM6Q==} + + '@vitest/runner@4.0.7': + resolution: {integrity: sha512-orU1lsu4PxLEcDWfjVCNGIedOSF/YtZ+XMrd1PZb90E68khWCNzD8y1dtxtgd0hyBIQk8XggteKN/38VQLvzuw==} + + '@vitest/snapshot@4.0.7': + resolution: {integrity: sha512-xJL+Nkw0OjaUXXQf13B8iKK5pI9QVtN9uOtzNHYuG/o/B7fIEg0DQ+xOe0/RcqwDEI15rud1k7y5xznBKGUXAA==} + + '@vitest/spy@4.0.7': + resolution: {integrity: sha512-FW4X8hzIEn4z+HublB4hBF/FhCVaXfIHm8sUfvlznrcy1MQG7VooBgZPMtVCGZtHi0yl3KESaXTqsKh16d8cFg==} + + '@vitest/ui@4.0.7': + resolution: {integrity: sha512-aIFPci9xoTmVkxpqsSKcRG/Hn0lTy421jsCehHydYeIMd+getn0Pue0JqY5cW8yZglZjMeX0YfIy5wDtQDHEcA==} + peerDependencies: + vitest: 4.0.7 + + '@vitest/utils@4.0.7': + resolution: {integrity: sha512-HNrg9CM/Z4ZWB6RuExhuC6FPmLipiShKVMnT9JlQvfhwR47JatWLChA6mtZqVHqypE6p/z6ofcjbyWpM7YLxPQ==} + '@vue/compiler-core@3.5.13': resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} @@ -3473,6 +3534,10 @@ packages: resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} engines: {node: '>=0.8'} + assertion-error@2.0.1: + resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} + engines: {node: '>=12'} + astral-regex@2.0.0: resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} engines: {node: '>=8'} @@ -3646,6 +3711,10 @@ packages: ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + chai@6.2.0: + resolution: {integrity: sha512-aUTnJc/JipRzJrNADXVvpVqi6CO0dn3nx4EVPxijri+fj3LUUDyZQOgVeW54Ob3Y1Xh9Iz8f+CgaCl8v0mn9bA==} + engines: {node: '>=18'} + chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -4049,6 +4118,15 @@ packages: supports-color: optional: true + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + decode-uri-component@0.4.1: resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} engines: {node: '>=14.16'} @@ -4230,6 +4308,9 @@ packages: es-module-lexer@1.6.0: resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==} + es-module-lexer@1.7.0: + resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} + es-object-atoms@1.1.1: resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} engines: {node: '>= 0.4'} @@ -4555,6 +4636,10 @@ packages: resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==} engines: {node: '>=0.10.0'} + expect-type@1.2.2: + resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} + engines: {node: '>=12.0.0'} + extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -4604,6 +4689,18 @@ packages: picomatch: optional: true + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fflate@0.8.2: + resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} + figures@3.2.0: resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} engines: {node: '>=8'} @@ -4657,6 +4754,9 @@ packages: flatted@3.3.2: resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + follow-redirects@1.15.9: resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} engines: {node: '>=4.0'} @@ -5419,6 +5519,9 @@ packages: magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + markdown-it@14.1.0: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true @@ -5527,6 +5630,10 @@ packages: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} + mrmime@2.0.1: + resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} + engines: {node: '>=10'} + ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -5752,6 +5859,9 @@ packages: pathe@2.0.2: resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==} + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + pend@1.2.0: resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} @@ -5772,6 +5882,10 @@ packages: resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} engines: {node: '>=12'} + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + pidtree@0.6.0: resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} engines: {node: '>=0.10'} @@ -6273,6 +6387,9 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} + siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -6283,6 +6400,10 @@ packages: simple-peer@9.11.1: resolution: {integrity: sha512-D1SaWpOW8afq1CZGWB8xTfrT3FekjQmPValrqncJMX7QFl8YwhrPTZvMCANLtgBwwdS+7zURyqxDDEmY558tTw==} + sirv@3.0.2: + resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} + engines: {node: '>=18'} + slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} @@ -6341,6 +6462,12 @@ packages: engines: {node: '>=0.10.0'} hasBin: true + stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + + std-env@3.10.0: + resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} + string-argv@0.3.2: resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} engines: {node: '>=0.6.19'} @@ -6500,6 +6627,9 @@ packages: tiny-invariant@1.3.3: resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} + tinybench@2.9.0: + resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} + tinyexec@0.3.2: resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} @@ -6507,6 +6637,14 @@ packages: resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} engines: {node: '>=12.0.0'} + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + tinyrainbow@3.0.3: + resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} + engines: {node: '>=14.0.0'} + tldts-core@6.1.73: resolution: {integrity: sha512-k1g5eX87vxu3g//6XMn62y4qjayu4cYby/PF7Ksnh4F4uUK1Z1ze/mJ4a+y5OjdJ+cXRp+YTInZhH+FGdUWy1w==} @@ -6526,6 +6664,10 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + totalist@3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} + engines: {node: '>=6'} + tough-cookie@5.1.0: resolution: {integrity: sha512-rvZUv+7MoBYTiDmFPBrhL7Ujx9Sk+q9wwm22x8c8T5IJaR+Wsyc7TNxbVxo84kZoRJZZMazowFLqpankBEQrGg==} engines: {node: '>=16'} @@ -6849,6 +6991,46 @@ packages: terser: optional: true + vite@7.2.1: + resolution: {integrity: sha512-qTl3VF7BvOupTR85Zc561sPEgxyUSNSvTQ9fit7DEMP7yPgvvIGm5Zfa1dOM+kOwWGNviK9uFM9ra77+OjK7lQ==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + peerDependencies: + '@types/node': ^20.19.0 || >=22.12.0 + jiti: '>=1.21.0' + less: ^4.0.0 + lightningcss: ^1.21.0 + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: '>=0.54.8' + sugarss: ^5.0.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + '@types/node': + optional: true + jiti: + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + vitefu@0.2.5: resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} peerDependencies: @@ -6857,6 +7039,40 @@ packages: vite: optional: true + vitest@4.0.7: + resolution: {integrity: sha512-xQroKAadK503CrmbzCISvQUjeuvEZzv6U0wlnlVFOi5i3gnzfH4onyQ29f3lzpe0FresAiTAd3aqK0Bi/jLI8w==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/debug': ^4.1.12 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/browser-playwright': 4.0.7 + '@vitest/browser-preview': 4.0.7 + '@vitest/browser-webdriverio': 4.0.7 + '@vitest/ui': 4.0.7 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/debug': + optional: true + '@types/node': + optional: true + '@vitest/browser-playwright': + optional: true + '@vitest/browser-preview': + optional: true + '@vitest/browser-webdriverio': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + vscode-jsonrpc@6.0.0: resolution: {integrity: sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==} engines: {node: '>=8.0.0 || >=10.0.0'} @@ -6972,6 +7188,11 @@ packages: engines: {node: '>= 8'} hasBin: true + why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} + engines: {node: '>=8'} + hasBin: true + word-wrap@1.2.5: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} @@ -8524,6 +8745,8 @@ snapshots: '@jridgewell/sourcemap-codec@1.5.0': {} + '@jridgewell/sourcemap-codec@1.5.5': {} + '@jridgewell/trace-mapping@0.3.25': dependencies: '@jridgewell/resolve-uri': 3.1.2 @@ -8863,6 +9086,8 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true + '@polka/url@1.0.0-next.29': {} + '@preact/signals-core@1.12.1': {} '@remirror/core-constants@3.0.0': {} @@ -9033,6 +9258,8 @@ snapshots: '@shikijs/vscode-textmate@10.0.1': {} + '@standard-schema/spec@1.0.0': {} + '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.20(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.20(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0))': dependencies: '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.20(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)) @@ -9218,10 +9445,17 @@ snapshots: '@types/aria-query@5.0.4': {} + '@types/chai@5.2.3': + dependencies: + '@types/deep-eql': 4.0.2 + assertion-error: 2.0.1 + '@types/conventional-commits-parser@5.0.1': dependencies: '@types/node': 22.10.3 + '@types/deep-eql@4.0.2': {} + '@types/eslint-scope@3.7.7': dependencies: '@types/eslint': 9.6.1 @@ -9406,6 +9640,56 @@ snapshots: vite: 5.4.20(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) vue: 3.5.13(typescript@5.7.3) + '@vitest/expect@4.0.7': + dependencies: + '@standard-schema/spec': 1.0.0 + '@types/chai': 5.2.3 + '@vitest/spy': 4.0.7 + '@vitest/utils': 4.0.7 + chai: 6.2.0 + tinyrainbow: 3.0.3 + + '@vitest/mocker@4.0.7(vite@7.2.1(@types/node@22.10.3)(jiti@2.4.2)(sass@1.83.4)(terser@5.37.0)(yaml@2.7.0))': + dependencies: + '@vitest/spy': 4.0.7 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + vite: 7.2.1(@types/node@22.10.3)(jiti@2.4.2)(sass@1.83.4)(terser@5.37.0)(yaml@2.7.0) + + '@vitest/pretty-format@4.0.7': + dependencies: + tinyrainbow: 3.0.3 + + '@vitest/runner@4.0.7': + dependencies: + '@vitest/utils': 4.0.7 + pathe: 2.0.3 + + '@vitest/snapshot@4.0.7': + dependencies: + '@vitest/pretty-format': 4.0.7 + magic-string: 0.30.21 + pathe: 2.0.3 + + '@vitest/spy@4.0.7': {} + + '@vitest/ui@4.0.7(vitest@4.0.7)': + dependencies: + '@vitest/utils': 4.0.7 + fflate: 0.8.2 + flatted: 3.3.3 + pathe: 2.0.3 + sirv: 3.0.2 + tinyglobby: 0.2.15 + tinyrainbow: 3.0.3 + vitest: 4.0.7(@types/node@22.10.3)(@vitest/ui@4.0.7)(happy-dom@20.0.2)(jiti@2.4.2)(sass@1.83.4)(terser@5.37.0)(yaml@2.7.0) + + '@vitest/utils@4.0.7': + dependencies: + '@vitest/pretty-format': 4.0.7 + tinyrainbow: 3.0.3 + '@vue/compiler-core@3.5.13': dependencies: '@babel/parser': 7.26.5 @@ -9699,6 +9983,8 @@ snapshots: assert-plus@1.0.0: {} + assertion-error@2.0.1: {} + astral-regex@2.0.0: {} async@2.6.4: @@ -9868,6 +10154,8 @@ snapshots: ccount@2.0.1: {} + chai@6.2.0: {} + chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -10337,6 +10625,10 @@ snapshots: optionalDependencies: supports-color: 8.1.1 + debug@4.4.3: + dependencies: + ms: 2.1.3 + decode-uri-component@0.4.1: {} dedent@0.7.0: {} @@ -10543,6 +10835,8 @@ snapshots: es-module-lexer@1.6.0: {} + es-module-lexer@1.7.0: {} + es-object-atoms@1.1.1: dependencies: es-errors: 1.3.0 @@ -10953,6 +11247,8 @@ snapshots: dependencies: homedir-polyfill: 1.0.3 + expect-type@1.2.2: {} + extend@3.0.2: {} extendable-error@0.1.7: {} @@ -11003,6 +11299,12 @@ snapshots: optionalDependencies: picomatch: 4.0.2 + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + fflate@0.8.2: {} + figures@3.2.0: dependencies: escape-string-regexp: 1.0.5 @@ -11065,6 +11367,8 @@ snapshots: flatted@3.3.2: {} + flatted@3.3.3: {} + follow-redirects@1.15.9: {} for-each@0.3.3: @@ -11841,6 +12145,10 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + markdown-it@14.1.0: dependencies: argparse: 2.0.1 @@ -11941,6 +12249,8 @@ snapshots: mri@1.2.0: {} + mrmime@2.0.1: {} + ms@2.1.3: {} mute-stream@0.0.8: {} @@ -12156,6 +12466,8 @@ snapshots: pathe@2.0.2: {} + pathe@2.0.3: {} + pend@1.2.0: {} performance-now@2.1.0: {} @@ -12172,6 +12484,8 @@ snapshots: picomatch@4.0.2: {} + picomatch@4.0.3: {} + pidtree@0.6.0: {} pify@2.3.0: {} @@ -12781,6 +13095,8 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 + siginfo@2.0.0: {} + signal-exit@3.0.7: {} signal-exit@4.1.0: {} @@ -12797,6 +13113,12 @@ snapshots: transitivePeerDependencies: - supports-color + sirv@3.0.2: + dependencies: + '@polka/url': 1.0.0-next.29 + mrmime: 2.0.1 + totalist: 3.0.1 + slash@3.0.0: {} slice-ansi@3.0.0: @@ -12859,6 +13181,10 @@ snapshots: safer-buffer: 2.1.2 tweetnacl: 0.14.5 + stackback@0.0.2: {} + + std-env@3.10.0: {} + string-argv@0.3.2: {} string-width@4.2.3: @@ -13045,6 +13371,8 @@ snapshots: tiny-invariant@1.3.3: {} + tinybench@2.9.0: {} + tinyexec@0.3.2: {} tinyglobby@0.2.10: @@ -13052,6 +13380,13 @@ snapshots: fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + tinyrainbow@3.0.3: {} + tldts-core@6.1.73: {} tldts@6.1.73: @@ -13068,6 +13403,8 @@ snapshots: dependencies: is-number: 7.0.0 + totalist@3.0.1: {} + tough-cookie@5.1.0: dependencies: tldts: 6.1.73 @@ -13356,10 +13693,66 @@ snapshots: sass: 1.83.4 terser: 5.37.0 + vite@7.2.1(@types/node@22.10.3)(jiti@2.4.2)(sass@1.83.4)(terser@5.37.0)(yaml@2.7.0): + dependencies: + esbuild: 0.25.0 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + postcss: 8.5.6 + rollup: 4.50.1 + tinyglobby: 0.2.15 + optionalDependencies: + '@types/node': 22.10.3 + fsevents: 2.3.3 + jiti: 2.4.2 + sass: 1.83.4 + terser: 5.37.0 + yaml: 2.7.0 + vitefu@0.2.5(vite@5.4.20(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0)): optionalDependencies: vite: 5.4.20(@types/node@22.10.3)(sass@1.83.4)(terser@5.37.0) + vitest@4.0.7(@types/node@22.10.3)(@vitest/ui@4.0.7)(happy-dom@20.0.2)(jiti@2.4.2)(sass@1.83.4)(terser@5.37.0)(yaml@2.7.0): + dependencies: + '@vitest/expect': 4.0.7 + '@vitest/mocker': 4.0.7(vite@7.2.1(@types/node@22.10.3)(jiti@2.4.2)(sass@1.83.4)(terser@5.37.0)(yaml@2.7.0)) + '@vitest/pretty-format': 4.0.7 + '@vitest/runner': 4.0.7 + '@vitest/snapshot': 4.0.7 + '@vitest/spy': 4.0.7 + '@vitest/utils': 4.0.7 + debug: 4.4.3 + es-module-lexer: 1.7.0 + expect-type: 1.2.2 + magic-string: 0.30.21 + pathe: 2.0.3 + picomatch: 4.0.3 + std-env: 3.10.0 + tinybench: 2.9.0 + tinyexec: 0.3.2 + tinyglobby: 0.2.15 + tinyrainbow: 3.0.3 + vite: 7.2.1(@types/node@22.10.3)(jiti@2.4.2)(sass@1.83.4)(terser@5.37.0)(yaml@2.7.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 22.10.3 + '@vitest/ui': 4.0.7(vitest@4.0.7) + happy-dom: 20.0.2 + transitivePeerDependencies: + - jiti + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + vscode-jsonrpc@6.0.0: {} vscode-languageclient@7.0.0: @@ -13525,6 +13918,11 @@ snapshots: dependencies: isexe: 2.0.0 + why-is-node-running@2.3.0: + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + word-wrap@1.2.5: {} wrap-ansi@6.2.0: diff --git a/vitest.config.ts b/vitest.config.ts new file mode 100644 index 0000000000..707b7c12c0 --- /dev/null +++ b/vitest.config.ts @@ -0,0 +1,91 @@ +import fg from 'fast-glob' +import { resolve } from 'path' +import { defineConfig } from 'vitest/config' + +const getPackageAliases = () => { + const aliases: Record = {} + + function collectPackageInformation(path: string) { + fg.sync(`${path}/*`, { onlyDirectories: true }) + .map(name => name.replace(`${path}/`, '')) + .forEach(name => { + if (name === 'pm') { + fg.sync(`${path}/${name}/*`, { onlyDirectories: true }).forEach(subName => { + const subPkgName = subName.replace(`${path}/${name}/`, '') + + if (subPkgName === 'dist' || subPkgName === 'node_modules') { + return + } + + aliases[`@tiptap/${name}/${subPkgName}`] = resolve(`${path}/${name}/${subPkgName}/index.ts`) + }) + } else if (name === 'static-renderer') { + // Handle static-renderer subpaths + fg.sync(`${path}/${name}/src/*`, { onlyDirectories: true }).forEach(subName => { + const subPkgName = subName.replace(`${path}/${name}/src/`, '') + + if (subPkgName === 'json' || subPkgName === 'pm') { + fg.sync(`${path}/${name}/src/${subPkgName}/*`, { onlyDirectories: true }).forEach(subSubName => { + const subSubPkgName = subSubName.replace(`${path}/${name}/src/${subPkgName}/`, '') + aliases[`@tiptap/${name}/${subPkgName}/${subSubPkgName}`] = resolve( + `${path}/${name}/src/${subPkgName}/${subSubPkgName}/index.ts`, + ) + }) + } + }) + aliases[`@tiptap/${name}`] = resolve(`${path}/${name}/src/index.ts`) + } else if ( + name === 'extension-text-style' || + name === 'extension-table' || + name === 'extensions' || + name === 'extension-list' || + name === 'react' || + name === 'vue-2' || + name === 'vue-3' + ) { + fg.sync(`${path}/${name}/src/*`, { onlyDirectories: true }).forEach(subName => { + const subPkgName = subName.replace(`${path}/${name}/src/`, '') + + aliases[`@tiptap/${name}/${subPkgName}`] = resolve(`${path}/${name}/src/${subPkgName}/index.ts`) + }) + aliases[`@tiptap/${name}`] = resolve(`${path}/${name}/src/index.ts`) + } else { + aliases[`@tiptap/${name}`] = resolve(`${path}/${name}/src/index.ts`) + } + }) + } + + collectPackageInformation('./packages') + collectPackageInformation('./packages-deprecated') + + return aliases +} + +export default defineConfig({ + test: { + environment: 'happy-dom', + include: ['packages/**/*.test.ts', 'packages/**/*.spec.ts'], + exclude: ['demos/**', 'tests/**', '**/node_modules/**'], + pool: 'forks', + }, + resolve: { + alias: [ + { + find: /^@tiptap\/core\/jsx-dev-runtime$/, + replacement: resolve('./packages/core/src/jsx-runtime.ts'), + }, + { + find: /^@tiptap\/core\/jsx-runtime$/, + replacement: resolve('./packages/core/src/jsx-runtime.ts'), + }, + ...Object.entries(getPackageAliases()).map(([find, replacement]) => ({ + find, + replacement, + })), + ], + }, + esbuild: { + jsx: 'automatic', + jsxImportSource: '@tiptap/core', + }, +}) From 859e90dec124cf19caf5cacc807fcb4439658149 Mon Sep 17 00:00:00 2001 From: Sven Adlung Date: Thu, 27 Nov 2025 14:53:19 +0100 Subject: [PATCH 520/629] Clean up FloatingMenu demo (#7274) * fix: remove unneeded demo code * fix: setFontSize JSDoc comment * fix: remove test --- .../Extensions/FloatingMenu/React/index.jsx | 42 +------------------ .../FloatingMenu/React/index.spec.js | 12 ------ .../src/font-size/font-size.ts | 2 +- 3 files changed, 3 insertions(+), 53 deletions(-) diff --git a/demos/src/Extensions/FloatingMenu/React/index.jsx b/demos/src/Extensions/FloatingMenu/React/index.jsx index 5c2c3ab0ed..ef6ea3a5e0 100644 --- a/demos/src/Extensions/FloatingMenu/React/index.jsx +++ b/demos/src/Extensions/FloatingMenu/React/index.jsx @@ -1,48 +1,13 @@ import './styles.scss' -import { EditorContent, mergeAttributes, Node, useEditor } from '@tiptap/react' +import { EditorContent, useEditor } from '@tiptap/react' import { FloatingMenu } from '@tiptap/react/menus' import StarterKit from '@tiptap/starter-kit' import React, { useEffect } from 'react' -const Foo = Node.create({ - name: 'foo', - - group: 'inline', - - inline: true, - - parseHTML() { - return [ - { - tag: 'span', - getAttrs: node => node.hasAttribute('data-foo') && null, - }, - ] - }, - - renderHTML({ HTMLAttributes }) { - return ['span', mergeAttributes({ 'data-foo': '', HTMLAttributes }), 'foo'] - }, - - renderText() { - return 'foo' - }, - - addCommands() { - return { - insertFoo: - () => - ({ commands }) => { - return commands.insertContent({ type: this.name }) - }, - } - }, -}) - export default () => { const editor = useEditor({ - extensions: [StarterKit, Foo], + extensions: [StarterKit], content: `

This is an example of a Medium-like editor. Enter a new line and some buttons will appear. @@ -66,9 +31,6 @@ export default () => { setIsEditable(!isEditable)} /> Editable -

{editor && ( diff --git a/demos/src/Extensions/FloatingMenu/React/index.spec.js b/demos/src/Extensions/FloatingMenu/React/index.spec.js index c58d0ee5ab..67d08e69b2 100644 --- a/demos/src/Extensions/FloatingMenu/React/index.spec.js +++ b/demos/src/Extensions/FloatingMenu/React/index.spec.js @@ -20,16 +20,4 @@ context('/src/Extensions/FloatingMenu/React/', () => { floatingMenu.should('exist') }) }) - - it('should not render a floating menu when a leaf node is inserted', () => { - cy.get('.tiptap').then(([{ editor }]) => { - editor.chain().setContent('

').focus().run() - - cy.get('[data-testID="insert-foo"]').click() - - const floatingMenu = cy.get('[data-testID="floating-menu"]') - - floatingMenu.should('not.exist') - }) - }) }) diff --git a/packages/extension-text-style/src/font-size/font-size.ts b/packages/extension-text-style/src/font-size/font-size.ts index 7b57158701..21c3e135d1 100644 --- a/packages/extension-text-style/src/font-size/font-size.ts +++ b/packages/extension-text-style/src/font-size/font-size.ts @@ -17,7 +17,7 @@ declare module '@tiptap/core' { /** * Set the font size * @param fontSize The font size - * @example editor.commands.setFontSize('Arial') + * @example editor.commands.setFontSize('16px') */ setFontSize: (fontSize: string) => ReturnType /** From 478bdcffbbb214b575266123c93187207d924a24 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 27 Nov 2025 17:55:37 +0100 Subject: [PATCH 521/629] Fix TS imports for NodeNext (#7277) * fix: update TypeScript paths for pm module imports * fix: update TypeScript paths for static-renderer modules --- demos/tsconfig.json | 8 +++++++- tests/cypress/tsconfig.json | 34 ++++------------------------------ tsconfig.json | 33 +++------------------------------ 3 files changed, 14 insertions(+), 61 deletions(-) diff --git a/demos/tsconfig.json b/demos/tsconfig.json index fc3731a11d..55f53aa989 100644 --- a/demos/tsconfig.json +++ b/demos/tsconfig.json @@ -4,7 +4,13 @@ "skipLibCheck": true, "types": ["node"], "module": "nodenext", - "moduleResolution": "nodenext" + "moduleResolution": "nodenext", + "paths": { + "@tiptap/pm/*": ["./packages/pm/*/index.ts"], + "@tiptap/static-renderer/pm/*": ["./packages/static-renderer/src/pm/*"], + "@tiptap/static-renderer/json/*": ["./packages/static-renderer/src/json/*"], + "@tiptap/*": ["./packages/*/src/index.ts", "./packages-deprecated/*/src/index.ts"] + } }, "include": [ "../packages/*/src/**/*.d.ts", diff --git a/tests/cypress/tsconfig.json b/tests/cypress/tsconfig.json index bfed8d55a9..5bccd40363 100644 --- a/tests/cypress/tsconfig.json +++ b/tests/cypress/tsconfig.json @@ -9,36 +9,10 @@ "importHelpers": false, "types": ["cypress", "react", "react-dom"], "paths": { - "@tiptap/static-renderer/pm/html-string": [ - "packages/static-renderer/src/pm/html-string/index.js", - "packages/static-renderer/src/pm/html-string/index.ts" - ], - "@tiptap/static-renderer/pm/markdown": [ - "packages/static-renderer/src/pm/markdown/index.js", - "packages/static-renderer/src/pm/markdown/index.ts" - ], - "@tiptap/static-renderer/pm/react": [ - "packages/static-renderer/src/pm/react/index.js", - "packages/static-renderer/src/pm/react/index.ts" - ], - "@tiptap/static-renderer/json/html-string": [ - "packages/static-renderer/src/json/html-string/index.js", - "packages/static-renderer/src/json/html-string/index.ts" - ], - "@tiptap/static-renderer/json/react": [ - "packages/static-renderer/src/json/react/index.js", - "packages/static-renderer/src/json/react/index.ts" - ], - "@tiptap/*": [ - "packages/*/src/index.js", - "packages/*/src/index.ts", - "packages/*/dist/index.js", - "packages/*/dist/index.ts", - "packages-deprecated/*/src/index.js", - "packages-deprecated/*/src/index.ts", - "packages-deprecated/*/dist/index.js", - "packages-deprecated/*/dist/index.ts" - ] + "@tiptap/pm/*": ["packages/pm/*"], + "@tiptap/static-renderer/pm/*": ["packages/static-renderer/src/pm/*"], + "@tiptap/static-renderer/json/*": ["packages/static-renderer/src/json/*"], + "@tiptap/*": ["packages/*/src/index.ts", "packages-deprecated/*/src/index.ts"] }, "typeRoots": ["../../node_modules/@types", "../../node_modules/"] }, diff --git a/tsconfig.json b/tsconfig.json index 49a91a2fdc..5ffaf91f60 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -17,36 +17,9 @@ "allowJs": true, "checkJs": false, "paths": { - "@tiptap/static-renderer/pm/html-string": [ - "packages/static-renderer/src/pm/html-string/index.js", - "packages/static-renderer/src/pm/html-string/index.ts" - ], - "@tiptap/static-renderer/pm/markdown": [ - "packages/static-renderer/src/pm/markdown/index.js", - "packages/static-renderer/src/pm/markdown/index.ts" - ], - "@tiptap/static-renderer/pm/react": [ - "packages/static-renderer/src/pm/react/index.js", - "packages/static-renderer/src/pm/react/index.ts" - ], - "@tiptap/static-renderer/json/html-string": [ - "packages/static-renderer/src/json/html-string/index.js", - "packages/static-renderer/src/json/html-string/index.ts" - ], - "@tiptap/static-renderer/json/react": [ - "packages/static-renderer/src/json/react/index.js", - "packages/static-renderer/src/json/react/index.ts" - ], - "@tiptap/*": [ - "packages/*/src/index.js", - "packages/*/src/index.ts", - "packages/*/dist/index.js", - "packages/*/dist/index.ts", - "packages-deprecated/*/src/index.js", - "packages-deprecated/*/src/index.ts", - "packages-deprecated/*/dist/index.js", - "packages-deprecated/*/dist/index.ts" - ] + "@tiptap/static-renderer/pm/*": ["packages/static-renderer/src/pm/*"], + "@tiptap/static-renderer/json/*": ["packages/static-renderer/src/json/*"], + "@tiptap/*": ["packages/*/src/index.ts", "packages-deprecated/*/src/index.ts"] }, "lib": ["esnext", "dom", "dom.iterable", "scripthost"] }, From d0c426435c43114a25f9c71a5fccdd22518fb325 Mon Sep 17 00:00:00 2001 From: Briant Diehl Date: Thu, 27 Nov 2025 10:18:43 -0700 Subject: [PATCH 522/629] Node class extend method generic for ExtendedConfig extends NodeConfig (#6717) * Node class extend method generic for ExtendedConfig extends NodeConfig * Create shaggy-turkeys-sparkle.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/shaggy-turkeys-sparkle.md | 10 ++++++++++ packages/core/src/Mark.ts | 2 +- packages/core/src/Node.ts | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 .changeset/shaggy-turkeys-sparkle.md diff --git a/.changeset/shaggy-turkeys-sparkle.md b/.changeset/shaggy-turkeys-sparkle.md new file mode 100644 index 0000000000..0c25ba47fc --- /dev/null +++ b/.changeset/shaggy-turkeys-sparkle.md @@ -0,0 +1,10 @@ +--- +"@tiptap/core": patch +--- + +Improve TypeScript generics for Node.extend + +The Node.extend method's TypeScript signature was updated so that ExtendedConfig can extend NodeConfig and MarkConfig, +improving type inference when extending Node and Mark classes with additional config properties. + +This is a type-only change — there are no runtime behavior changes. diff --git a/packages/core/src/Mark.ts b/packages/core/src/Mark.ts index aecbae57aa..b617e0873e 100644 --- a/packages/core/src/Mark.ts +++ b/packages/core/src/Mark.ts @@ -191,7 +191,7 @@ export class Mark extends Extendable, + ExtendedConfig extends MarkConfig = MarkConfig, >( extendedConfig?: | (() => Partial) diff --git a/packages/core/src/Node.ts b/packages/core/src/Node.ts index 8d8c12f2bf..23bb1b94e8 100644 --- a/packages/core/src/Node.ts +++ b/packages/core/src/Node.ts @@ -357,7 +357,7 @@ export class Node extends Extendable, + ExtendedConfig extends NodeConfig = NodeConfig, >( extendedConfig?: | (() => Partial) From eea7190f8e005e5d840a08ad4db91ee572b1857a Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 27 Nov 2025 18:47:42 +0100 Subject: [PATCH 523/629] Fix/trailing node default node (#7278) * fix: trailing node should use default node option over prosemirror default node type * add changeset --- .changeset/wicked-elephants-jam.md | 5 +++++ packages/extensions/src/trailing-node/trailing-node.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/wicked-elephants-jam.md diff --git a/.changeset/wicked-elephants-jam.md b/.changeset/wicked-elephants-jam.md new file mode 100644 index 0000000000..f5f598056f --- /dev/null +++ b/.changeset/wicked-elephants-jam.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extensions': patch +--- + +Fixed a bug where the TrailingNode extension would not use the node option to assume the default node type diff --git a/packages/extensions/src/trailing-node/trailing-node.ts b/packages/extensions/src/trailing-node/trailing-node.ts index 676f3ab282..d80748b508 100644 --- a/packages/extensions/src/trailing-node/trailing-node.ts +++ b/packages/extensions/src/trailing-node/trailing-node.ts @@ -17,7 +17,7 @@ export interface TrailingNodeOptions { * The node type that should be inserted at the end of the document. * @note the node will always be added to the `notAfter` lists to * prevent an infinite loop. - * @default 'paragraph' + * @default undefined */ node?: string /** @@ -44,7 +44,7 @@ export const TrailingNode = Extension.create({ addProseMirrorPlugins() { const plugin = new PluginKey(this.name) const defaultNode = - this.editor.schema.topNodeType.contentMatch.defaultType?.name || this.options.node || 'paragraph' + this.options.node || this.editor.schema.topNodeType.contentMatch.defaultType?.name || 'paragraph' const disabledNodes = Object.entries(this.editor.schema.nodes) .map(([, value]) => value) From 0f509adf5e2dde3f994996c2388ad07fe9685876 Mon Sep 17 00:00:00 2001 From: bdbch Date: Thu, 27 Nov 2025 18:56:22 +0100 Subject: [PATCH 524/629] update demo with correct trailing node --- demos/src/Examples/CustomDocument/React/index.jsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/demos/src/Examples/CustomDocument/React/index.jsx b/demos/src/Examples/CustomDocument/React/index.jsx index 04f6fa4d50..831924b81f 100644 --- a/demos/src/Examples/CustomDocument/React/index.jsx +++ b/demos/src/Examples/CustomDocument/React/index.jsx @@ -16,6 +16,9 @@ export default () => { CustomDocument, StarterKit.configure({ document: false, + trailingNode: { + node: 'paragraph', + }, }), Placeholder.configure({ placeholder: ({ node }) => { From 00552b41111dc7918003602ca850a624eab6c081 Mon Sep 17 00:00:00 2001 From: bdbch Date: Thu, 27 Nov 2025 18:56:33 +0100 Subject: [PATCH 525/629] update demo with correct trailing node --- demos/src/Examples/CustomDocument/Vue/index.vue | 3 +++ 1 file changed, 3 insertions(+) diff --git a/demos/src/Examples/CustomDocument/Vue/index.vue b/demos/src/Examples/CustomDocument/Vue/index.vue index dca763fd58..1776a1476c 100644 --- a/demos/src/Examples/CustomDocument/Vue/index.vue +++ b/demos/src/Examples/CustomDocument/Vue/index.vue @@ -29,6 +29,9 @@ export default { CustomDocument, StarterKit.configure({ document: false, + trailingNode: { + node: 'paragraph', + }, }), Placeholder.configure({ placeholder: ({ node }) => { From 0860c60abfd0c12f13a2c86ea339b5a4fea47ffa Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 27 Nov 2025 18:57:24 +0100 Subject: [PATCH 526/629] chore(release): publish a new release version (#7279) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/shaggy-turkeys-sparkle.md | 10 ------ .changeset/wicked-elephants-jam.md | 5 --- CHANGELOG.md | 19 ++++++++++++ .../extension-character-count/CHANGELOG.md | 7 +++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 7 +++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 7 +++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 7 +++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 7 +++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 7 +++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 13 ++++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 9 ++++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 143 files changed, 635 insertions(+), 85 deletions(-) delete mode 100644 .changeset/shaggy-turkeys-sparkle.md delete mode 100644 .changeset/wicked-elephants-jam.md diff --git a/.changeset/shaggy-turkeys-sparkle.md b/.changeset/shaggy-turkeys-sparkle.md deleted file mode 100644 index 0c25ba47fc..0000000000 --- a/.changeset/shaggy-turkeys-sparkle.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Improve TypeScript generics for Node.extend - -The Node.extend method's TypeScript signature was updated so that ExtendedConfig can extend NodeConfig and MarkConfig, -improving type inference when extending Node and Mark classes with additional config properties. - -This is a type-only change — there are no runtime behavior changes. diff --git a/.changeset/wicked-elephants-jam.md b/.changeset/wicked-elephants-jam.md deleted file mode 100644 index f5f598056f..0000000000 --- a/.changeset/wicked-elephants-jam.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extensions': patch ---- - -Fixed a bug where the TrailingNode extension would not use the node option to assume the default node type diff --git a/CHANGELOG.md b/CHANGELOG.md index 2457b6571f..4f90ed383d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,24 @@ # Releases +## v3.11.1 + +### @tiptap/core + +#### Patch Changes + +- Improve TypeScript generics for Node.extend + + The Node.extend method's TypeScript signature was updated so that ExtendedConfig can extend NodeConfig and MarkConfig, + improving type inference when extending Node and Mark classes with additional config properties. + + This is a type-only change — there are no runtime behavior changes. + +### @tiptap/extensions + +#### Patch Changes + +- Fixed a bug where the TrailingNode extension would not use the node option to assume the default node type + ## v3.11.0 ### @tiptap/core diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 69a30f1c6b..ebecb0cdd8 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [eea7190] + - @tiptap/extensions@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 8ef5c88e06..7b3e47596a 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 2e95e4a5e4..5c643e45ed 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [eea7190] + - @tiptap/extensions@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 848a968fbf..cead1ab49c 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 0f5876cd43..5133382cf1 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [eea7190] + - @tiptap/extensions@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 590ca99808..0d6e259c28 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 13acf9a43d..5870ea651f 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [eea7190] + - @tiptap/extensions@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 7a04829a6b..d54a7b4f27 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 90faa787b4..ab9095d3ac 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [eea7190] + - @tiptap/extensions@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 97c072f31a..e77eaaa106 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 243acc8290..c9c6b768bd 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-list@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 29721374d2..c60d378c39 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 0ddf5e8bf0..05b2ab413e 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-list@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index f77ff6d02b..daf794d951 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index b58fba8669..51889df9e9 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [eea7190] + - @tiptap/extensions@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index a4b72ffde9..7b0e4daac6 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 6fe7535f4e..90c501dfc0 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-table@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 968db5a02c..056bd02554 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 851c5bae5d..d6c5679404 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-table@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 9bf693e68d..6ec8b2533c 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index dec684de7a..a4b550f285 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-table@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index c6d37b06a1..7bf6d7d6eb 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 0d8317166e..bac44cfa9f 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-list@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index fb8ce8ce2c..40a357873c 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 0158c78a88..251a947d77 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-list@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 3b9a5b20e1..1eced3ad0c 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index d0e7ed6a39..bdb8790710 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,18 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- d0c4264: Improve TypeScript generics for Node.extend + + The Node.extend method's TypeScript signature was updated so that ExtendedConfig can extend NodeConfig and MarkConfig, + improving type inference when extending Node and Mark classes with additional config properties. + + This is a type-only change — there are no runtime behavior changes. + + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 2e4f43f889..4703dd9365 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 9d0b20d378..f53c4b9ee1 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index bbcd9d528e..c0f7d2e90f 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index daafe9729e..1811c4704a 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 1e13e0ebd0..4f47753ade 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index c2de183a76..e2a73f2dd2 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 1a075aba44..60630eaf16 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 57328cbdf7..896b6aa21c 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-list@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 4470649f76..93a25135b1 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 06738a0b8b..dfbea58ab1 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/extension-code-block@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index ad776d9a24..920afbdbd4 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 9d224fcfe7..0a8b61c0ed 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index d29a70c8c4..6d5cc508c6 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index efd18e3dc2..a6847ac2bd 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 5ba0534cda..3794f7b8d9 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 6ed60d574d..711dbeb2e2 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 2e4efa1f4b..8b6a2b93ee 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 5176935562..bb999f2474 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 9268bad175..7cdbed10ce 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 80a8951d2e..40b62aa305 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 127b2338a8..d4a5e812ba 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 837d9c2497..bef049ece6 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/extension-text-style@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 82e31ef2cb..2a731ad5d8 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 10f4385d63..1cb579af54 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index d1fbfb8d8b..8643af2c2f 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 2ffdebc5ab..ce47d88817 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.11.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.11.1 +- @tiptap/react@3.11.1 +- @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 29587e2136..1c65943a16 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 5e99241ffd..93617c7aa5 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.11.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.11.1 +- @tiptap/vue-2@3.11.1 +- @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 3be3d1148b..95271789d7 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index a13e6ef42a..35db4d7e02 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.11.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.11.1 +- @tiptap/vue-3@3.11.1 +- @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 85322b883f..57f2f56942 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 5cc4baa598..9a8b01da5e 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/extension-collaboration@3.11.1 + - @tiptap/extension-node-range@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 6dd0111295..8bfd26071f 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index f201634777..750f95100a 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/suggestion@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index f7a50db501..977218134d 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index ad0d133746..cbcce849fb 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/extension-text-style@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 811ac64467..ec9f9c82dc 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 040caad2f7..702635b91d 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 0d4f3b636c..62a55a5fb8 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 85ec61776c..08f6c58150 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 04710931eb..256ea1f190 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 7e45bf7ced..8cb80cf570 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index d81bb73c21..0f243f488f 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 03c6c7f41b..b5460c5b9f 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 3e4c5fe75e..051e69ba76 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index f6161f7263..02c7c16a72 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 6b956349ec..c199ec22f0 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index ae8c237b55..3308ef772f 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index e169876cde..fdc80a8b37 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 92d846e108..13a14f1d85 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 1a86280a27..cb54515a1f 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 863456852e..7bebbfa950 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/extension-text-style@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index e4476b08a6..50c39d0b75 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 74c447e7c2..973f8f6d26 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 849ed29528..a5d85690ee 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 0c325bfb67..71b3dd45ab 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 8c0867850f..7a85842523 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 35f64ab339..bf4334eb16 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 4200186b60..18f49ed366 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 36f03447ff..42cd415bc9 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index ad46440923..6971165a00 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 33c3a0e5ba..51849bc2b8 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/suggestion@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 2f39e96dda..f1a7fca55e 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 7418a6d2ed..20b644960d 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 0d542de7a2..f09f569406 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 6bc9838c81..e5ffc5b748 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- @tiptap/extension-list@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index fe993b54c3..51a5e9e4e5 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index a9fdb96a63..4f538e49cb 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 5b237468ad..1e7e115e8c 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 54b62f2d78..04fe8bcbe9 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index a22e626f6e..002a48ef4c 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index fa838c2323..9ff98e3482 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index ae995cd042..e484f16920 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 4a8249ebb3..99b75d64ff 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 657324eb5b..b246c48c59 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 2f7645f516..605e95ef73 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.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 2a663dbbb1..9255ad5732 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index e14bf8f18d..a64bf8a2ed 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index a643f45b30..b60626c282 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index e55fcd24db..dfdd05c2e2 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 71860cd573..f6518ac454 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 3de5b23b61..17cb1774c2 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index f1f016667f..3cbeaadb70 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index e387bd7f4f..59f5ff815f 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index bfe530bfcc..3c7e2f60d7 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index b94efff77a..71da23a40c 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 9ef6d4f718..f59854cb35 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index bdd7d508d7..0cbe3219dc 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 79bda10c03..f9e22031dc 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 2d0faf85b5..25d0888fd1 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 3d41570122..91c492202e 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 170fe16b73..7acd17ebb7 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index a934df036c..b4edef1668 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index fbc56811a9..30fadfd8c8 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- eea7190: Fixed a bug where the TrailingNode extension would not use the node option to assume the default node type +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 6c5bdcecee..e01cbb30a9 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index e29523a077..4a86d28756 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index ee2310d7a2..00b1ef418c 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index d4e13b21b4..82c816cc13 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 64d7a506b8..cf15a8b3ed 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 85c7bad714..3d8b7188c9 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.11.1 + ## 3.11.0 ## 3.10.8 diff --git a/packages/pm/package.json b/packages/pm/package.json index bfad7e5758..0cac9566f4 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 9639f8dcf1..2d53f1eb64 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 96999b2b04..bbc3572d45 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 1a7fd583c2..36cbff4fa7 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] +- Updated dependencies [eea7190] + - @tiptap/core@3.11.1 + - @tiptap/extensions@3.11.1 + - @tiptap/extension-blockquote@3.11.1 + - @tiptap/extension-bold@3.11.1 + - @tiptap/extension-code@3.11.1 + - @tiptap/extension-code-block@3.11.1 + - @tiptap/extension-document@3.11.1 + - @tiptap/extension-hard-break@3.11.1 + - @tiptap/extension-heading@3.11.1 + - @tiptap/extension-horizontal-rule@3.11.1 + - @tiptap/extension-italic@3.11.1 + - @tiptap/extension-link@3.11.1 + - @tiptap/extension-list@3.11.1 + - @tiptap/extension-paragraph@3.11.1 + - @tiptap/extension-strike@3.11.1 + - @tiptap/extension-text@3.11.1 + - @tiptap/extension-underline@3.11.1 + - @tiptap/extension-dropcursor@3.11.1 + - @tiptap/extension-gapcursor@3.11.1 + - @tiptap/extension-list-item@3.11.1 + - @tiptap/extension-list-keymap@3.11.1 + - @tiptap/extension-bullet-list@3.11.1 + - @tiptap/extension-ordered-list@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 10acf50cb0..520034332a 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index c6b7743759..529b88fd01 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 2fc2e469d6..64d94d184c 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 0c05d7645f..f47bcb018c 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index bda011d77e..e1a638f198 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 7d4b14d954..4e0e74779b 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 7b156c1ffb..c882bf784c 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index ac464cb95c..e92a020dae 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.11.1 + +### Patch Changes + +- Updated dependencies [d0c4264] + - @tiptap/core@3.11.1 + - @tiptap/pm@3.11.1 + ## 3.11.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index fc53d77852..56751d9c79 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 96e86050873ca135541f2e439f9c29314b84cf35 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 29 Nov 2025 03:32:14 +0100 Subject: [PATCH 527/629] fix: avoid mutating options in updateUser command for correct user updates (#7285) --- .../fix-collaboration-caret-user-update--steady-swan.md | 5 +++++ .../extension-collaboration-caret/src/collaboration-caret.ts | 5 +---- 2 files changed, 6 insertions(+), 4 deletions(-) create mode 100644 .changeset/fix-collaboration-caret-user-update--steady-swan.md diff --git a/.changeset/fix-collaboration-caret-user-update--steady-swan.md b/.changeset/fix-collaboration-caret-user-update--steady-swan.md new file mode 100644 index 0000000000..1a1ea04218 --- /dev/null +++ b/.changeset/fix-collaboration-caret-user-update--steady-swan.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-collaboration-caret": patch +--- + +Avoid mutating `this.options` in the `updateUser` command. `this.options` can be a getter and is not writable; the command now updates the provider awareness directly so user updates are applied correctly. diff --git a/packages/extension-collaboration-caret/src/collaboration-caret.ts b/packages/extension-collaboration-caret/src/collaboration-caret.ts index c031c10d82..210bab6eac 100644 --- a/packages/extension-collaboration-caret/src/collaboration-caret.ts +++ b/packages/extension-collaboration-caret/src/collaboration-caret.ts @@ -149,10 +149,7 @@ export const CollaborationCaret = Extension.create () => { - this.options.user = attributes - - this.options.provider.awareness.setLocalStateField('user', this.options.user) - + this.options.provider.awareness.setLocalStateField('user', attributes) return true }, user: From 72482483eb2f188f0aff880356544bf6911b84ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 1 Dec 2025 13:40:49 +0100 Subject: [PATCH 528/629] feat: create utility to update a position after a transaction by encapsulating positions in MappablePosition class --- .changeset/bright-walls-wash.md | 14 +- packages/core/src/Editor.ts | 43 +---- packages/core/src/helpers/MappablePosition.ts | 67 +++++++ packages/core/src/helpers/index.ts | 2 +- packages/core/src/helpers/positionHelpers.ts | 178 ------------------ packages/core/src/types.ts | 36 +++- .../src/collaboration.ts | 15 +- .../helpers/CollaborationMappablePosition.ts | 79 ++++++++ .../src/helpers/getPositionHelpers.ts | 36 ---- .../src/helpers/mapPositionFromTransaction.ts | 35 ---- .../src/helpers/mapRangeFromTransaction.ts | 35 ---- .../src/helpers/yRelativePosition.ts | 9 +- .../src/helpers/yRelativeRange.ts | 24 --- 13 files changed, 208 insertions(+), 365 deletions(-) create mode 100644 packages/core/src/helpers/MappablePosition.ts delete mode 100644 packages/core/src/helpers/positionHelpers.ts create mode 100644 packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts delete mode 100644 packages/extension-collaboration/src/helpers/getPositionHelpers.ts delete mode 100644 packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts delete mode 100644 packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts delete mode 100644 packages/extension-collaboration/src/helpers/yRelativeRange.ts diff --git a/.changeset/bright-walls-wash.md b/.changeset/bright-walls-wash.md index d8b85c6383..a1f01e1d90 100644 --- a/.changeset/bright-walls-wash.md +++ b/.changeset/bright-walls-wash.md @@ -1,16 +1,10 @@ --- '@tiptap/extension-collaboration': minor '@tiptap/core': minor -'tiptap-demos': minor --- -Create utilities to update a position after a transaction. Fixes a bug where positions were not correctly updated after a transaction when the editor had real-time collaboration enabled. +Implement position mapping using the `MappablePosition` class. This enables position mapping in collaborative editing scenarios. -- Create `editor.positionHelpers` property that returns a `PositionHelpers` object with the following methods: - - `getUpdatedPosition` - - `getUpdatedRange` - - `getYAbsolutePosition` - - `getYRelativePosition` - - `getYAbsoluteRange` - - `getYRelativeRange` -- Create demo that showcases how to update a position after a transaction in a collaborative editor. \ No newline at end of file +- Introduce `MappablePosition` class in core with `position`, `fromJson`, and `toJSON` methods +- Add `editor.utils` property with `getUpdatedPosition(position, transaction)` and `createMappablePosition()` methods +- Create `CollaborationMappablePosition` subclass that extends `MappablePosition` with Y.js relative position support \ No newline at end of file diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index afd9442c9a..87d66d26b6 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -25,15 +25,7 @@ import { getText } from './helpers/getText.js' import { getTextSerializersFromSchema } from './helpers/getTextSerializersFromSchema.js' import { isActive } from './helpers/isActive.js' import { isNodeEmpty } from './helpers/isNodeEmpty.js' -import { - type PositionHelpers, - getYAbsolutePosition, - getYAbsoluteRange, - getYRelativePosition, - getYRelativeRange, - mapPositionFromTransaction, - mapRangeFromTransaction, -} from './helpers/positionHelpers.js' +import { createMappablePosition, getUpdatedPosition } from './helpers/MappablePosition.js' import { resolveFocusPosition } from './helpers/resolveFocusPosition.js' import type { Storage } from './index.js' import { NodePos } from './NodePos.js' @@ -48,6 +40,7 @@ import type { SingleCommands, TextSerializer, TextType as TTextType, + Utils, } from './types.js' import { createStyleTag } from './utilities/createStyleTag.js' import { isFunction } from './utilities/isFunction.js' @@ -784,32 +777,10 @@ export class Editor extends EventEmitter { } /** - * Returns a set of utilities for working with positions and ranges. These - * utilities let you calculate the new position or range after applying a - * transaction. - * - * @returns The position helpers. - */ - public get positionHelpers(): PositionHelpers { - return ( - (this.storage as any).collaboration?.getPositionHelpers(this) ?? { - getUpdatedPosition: options => { - return mapPositionFromTransaction({ - state: this.state, - ...options, - }) - }, - getUpdatedRange: options => { - return mapRangeFromTransaction({ - state: this.state, - ...options, - }) - }, - getYAbsolutePosition, - getYRelativePosition, - getYAbsoluteRange, - getYRelativeRange, - } - ) + * Returns a set of utilities for working with positions and ranges. + */ + public utils: Utils = { + getUpdatedPosition, + createMappablePosition, } } diff --git a/packages/core/src/helpers/MappablePosition.ts b/packages/core/src/helpers/MappablePosition.ts new file mode 100644 index 0000000000..8782375de2 --- /dev/null +++ b/packages/core/src/helpers/MappablePosition.ts @@ -0,0 +1,67 @@ +import type { Transaction } from '@tiptap/pm/state' +import type { MapResult } from '@tiptap/pm/transform' + +/** + * A class that represents a mappable position in the editor. It can be extended + * by other extensions to add additional position mapping capabilities. + */ +export class MappablePosition { + /** + * The absolute position in the editor. + */ + public position: number + + constructor(position: number) { + this.position = position + } + + /** + * Creates a MappablePosition from a JSON object. + */ + static fromJSON(json: any): MappablePosition { + return new MappablePosition(json.position) + } + + /** + * Converts the MappablePosition to a JSON object. + */ + toJSON(): any { + return { + position: this.position, + } + } +} + +/** + * The result of the getUpdatedPosition function. + */ +export interface GetUpdatedPositionResult { + position: MappablePosition + mapResult: MapResult | null +} + +/** + * Calculates the new position after applying a transaction. Handles both Y.js + * transactions and regular transactions. + * + * @returns The new mappable position and the map result. + */ +export function getUpdatedPosition(position: MappablePosition, transaction: Transaction): GetUpdatedPositionResult { + const mapResult = transaction.mapping.mapResult(position.position) + return { + position: new MappablePosition(mapResult.pos), + mapResult, + } +} + +/** + * Creates a MappablePosition from a position number. This is the default + * implementation for Tiptap core. It can be overridden by other Tiptap + * extensions. + * + * @param position The position (as a number) where the MappablePosition will be created. + * @returns A new MappablePosition instance at the given position. + */ +export function createMappablePosition(position: number): MappablePosition { + return new MappablePosition(position) +} diff --git a/packages/core/src/helpers/index.ts b/packages/core/src/helpers/index.ts index 1bb18c9d2a..762cb88c0d 100644 --- a/packages/core/src/helpers/index.ts +++ b/packages/core/src/helpers/index.ts @@ -45,7 +45,7 @@ export * from './isNodeActive.js' export * from './isNodeEmpty.js' export * from './isNodeSelection.js' export * from './isTextSelection.js' -export * from './positionHelpers.js' +export * from './MappablePosition.js' export * from './posToDOMRect.js' export * from './resolveExtensions.js' export * from './resolveFocusPosition.js' diff --git a/packages/core/src/helpers/positionHelpers.ts b/packages/core/src/helpers/positionHelpers.ts deleted file mode 100644 index 48173a15c1..0000000000 --- a/packages/core/src/helpers/positionHelpers.ts +++ /dev/null @@ -1,178 +0,0 @@ -import type { Range } from '@tiptap/core' -import type { EditorState, Transaction } from '@tiptap/pm/state' -import type { MapResult } from '@tiptap/pm/transform' - -type WithOptionalProperties = Pick, K> & Omit - -/** - * A type that represents a Y.js relative position. Used to map a position from - * a transaction, handling both Yjs changes and regular transactions. - * - * If the editor is not collaborative, the value can be `null`. - */ -export type YRelativePosition = any | null - -/** - * A type that represents the Y.js relative positions of a range. Used to map a - * range from a transaction, handling both Yjs changes and regular transactions. - */ -export interface YRelativeRange { - from: YRelativePosition - to: YRelativePosition -} - -/** - * Options for the mapPositionFromTransaction function. - */ -export interface MapPositionFromTransactionOptions { - transaction: Transaction - state: EditorState - position: number - yRelativePosition: YRelativePosition -} - -/** - * The result of the mapPositionFromTransaction function. - */ -export interface MapPositionFromTransactionResult { - newPosition: number - newYRelativePosition: YRelativePosition - mapResult: MapResult | null -} - -/** - * Options for the mapRangeFromTransaction function. - */ -export interface MapRangeFromTransactionOptions { - transaction: Transaction - state: EditorState - range: Range - yRelativeRange: YRelativeRange -} - -/** - * The result of the mapRangeFromTransaction function. - */ -export interface MapRangeFromTransactionResult { - newRange: Range - newYRelativeRange: YRelativeRange - mapResultFrom: MapResult | null - mapResultTo: MapResult | null -} - -/** - * Calculates the new position after applying a transaction. Handles both Y.js - * transactions and regular transactions. - * - * @returns The new position, the Y.js relative position, and the map result. - */ -export function mapPositionFromTransaction({ - transaction, - position, - yRelativePosition, -}: MapPositionFromTransactionOptions): MapPositionFromTransactionResult { - const mapResult = transaction.mapping.mapResult(position) - return { - newPosition: mapResult.pos, - newYRelativePosition: yRelativePosition, - mapResult, - } -} - -/** - * Calculates the new range after applying a transaction. Handles both Y.js - * transactions and regular transactions. - * - * @returns The new range, the Y.js relative range, and the map results. - */ -export function mapRangeFromTransaction({ - range, - yRelativeRange, - ...options -}: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { - const fromResult = mapPositionFromTransaction({ - position: range.from, - yRelativePosition: yRelativeRange.from, - ...options, - }) - const toResult = mapPositionFromTransaction({ - position: range.to, - yRelativePosition: yRelativeRange.to, - ...options, - }) - - return { - newRange: { - from: fromResult.newPosition, - to: toResult.newPosition, - }, - newYRelativeRange: { - from: fromResult.newYRelativePosition, - to: toResult.newYRelativePosition, - }, - mapResultFrom: fromResult.mapResult, - mapResultTo: toResult.mapResult, - } -} - -// The methods below are implemented by the Collaboration extension, -// if you try to call them without the Collaboration extension installed, -// an error will be thrown. -const missingCollabExtensionError = new Error('Collaboration extension not installed') - -export function getYAbsolutePosition(): number { - throw missingCollabExtensionError -} - -export function getYRelativePosition(): YRelativePosition { - throw missingCollabExtensionError -} - -export function getYAbsoluteRange(): Range { - throw missingCollabExtensionError -} - -export function getYRelativeRange(): YRelativeRange { - throw missingCollabExtensionError -} - -/** - * Helper methods for working with positions and ranges. - */ -export interface PositionHelpers { - /** - * Returns the new position after applying a transaction. Handles both Y.js - * transactions and regular transactions. - */ - getUpdatedPosition: ( - options: WithOptionalProperties, - ) => MapPositionFromTransactionResult - - /** - * Returns the new Range after applying a transaction. Handles both Y.js - * transactions and regular transactions. - */ - getUpdatedRange: ( - options: WithOptionalProperties, - ) => MapRangeFromTransactionResult - - /** - * Converts a Y.js relative position to a position in the editor. - */ - getYAbsolutePosition: (relativePos: YRelativePosition) => number - - /** - * Converts a position in the editor to a Y.js relative position. - */ - getYRelativePosition: (absolutePos: number) => YRelativePosition - - /** - * Converts a Y.js relative range to a Range in the editor. - */ - getYAbsoluteRange: (yRelativeRange: YRelativeRange) => Range - - /** - * Converts a Range in the editor to a Y.js relative range. - */ - getYRelativeRange: (absoluteRange: Range) => YRelativeRange -} diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 1068c87061..881cb2e0f7 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -15,7 +15,14 @@ import type { import type { Editor } from './Editor.js' import type { Extendable } from './Extendable.js' -import type { Commands, ExtensionConfig, MarkConfig, NodeConfig } from './index.js' +import type { + Commands, + ExtensionConfig, + GetUpdatedPositionResult, + MappablePosition, + MarkConfig, + NodeConfig, +} from './index.js' import type { Mark } from './Mark.js' import type { Node } from './Node.js' @@ -965,3 +972,30 @@ export type MarkdownRendererHelpers = { */ indent: (content: string) => string } + +export type Utils = { + /** + * Returns the new position after applying a transaction. + * + * @param position The position (as a number) to update. + * @param transaction The transaction to apply. + * @returns The new position after applying the transaction. + * + * @example + * const position = editor.utils.createMappablePosition(10) + * const {position, mapResult} = editor.utils.getUpdatedPosition(position, transaction) + */ + getUpdatedPosition: (position: MappablePosition, transaction: Transaction) => GetUpdatedPositionResult + + /** + * Creates a MappablePosition from a position number. It can be used to obtain the + * next position after applying a transaction. + * + * @param position The position (as a number) where the MappablePosition will be created. + * @returns A new MappablePosition instance at the given position. + * + * @example + * const position = editor.utils.createMappablePosition(10) + */ + createMappablePosition: (position: number) => MappablePosition +} diff --git a/packages/extension-collaboration/src/collaboration.ts b/packages/extension-collaboration/src/collaboration.ts index be73e44087..71288df77f 100644 --- a/packages/extension-collaboration/src/collaboration.ts +++ b/packages/extension-collaboration/src/collaboration.ts @@ -1,11 +1,10 @@ -import type { Editor, PositionHelpers } from '@tiptap/core' import { Extension } from '@tiptap/core' import { Plugin, PluginKey } from '@tiptap/pm/state' import type { EditorView } from '@tiptap/pm/view' import { redo, undo, ySyncPlugin, yUndoPlugin, yUndoPluginKey, yXmlFragmentToProsemirrorJSON } from '@tiptap/y-tiptap' import type { Doc, UndoManager, XmlFragment } from 'yjs' -import { getPositionHelpers } from './helpers/getPositionHelpers.js' +import { createMappablePosition, getUpdatedPosition } from './helpers/CollaborationMappablePosition.js' type YSyncOpts = Parameters[1] type YUndoOpts = Parameters[0] @@ -16,11 +15,6 @@ export interface CollaborationStorage { * Disabling collaboration will prevent any changes from being synced with other users. */ isDisabled: boolean - - /** - * Get helper methods for working with Y.js positions and ranges. - */ - getPositionHelpers: (editor: Editor) => PositionHelpers } declare module '@tiptap/core' { @@ -107,7 +101,6 @@ export const Collaboration = Extension.create + getUpdatedPosition(position, transaction, this.editor.state) + this.editor.utils.createMappablePosition = position => createMappablePosition(position, this.editor.state) + }, + addCommands() { return { undo: diff --git a/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts b/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts new file mode 100644 index 0000000000..42e2314d6d --- /dev/null +++ b/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts @@ -0,0 +1,79 @@ +import { + type GetUpdatedPositionResult, + getUpdatedPosition as coreGetUpdatedPosition, + MappablePosition, +} from '@tiptap/core' +import type { EditorState, Transaction } from '@tiptap/pm/state' + +import { isChangeOrigin } from './isChangeOrigin.js' +import { type YRelativePosition, getYAbsolutePosition, getYRelativePosition } from './YRelativePosition.js' + +/** + * A MappablePosition subclass that includes Y.js relative position information + * to track positions in collaborative transactions. + */ +export class CollaborationMappablePosition extends MappablePosition { + /** + * The Y.js relative position used for mapping positions in collaborative editing. + */ + public yRelativePosition: YRelativePosition + + constructor(position: number, yRelativePosition: YRelativePosition) { + super(position) + this.yRelativePosition = yRelativePosition + } + + /** + * Creates a CollaborationMappablePosition from a JSON object. + */ + static fromJSON(json: any): CollaborationMappablePosition { + return new CollaborationMappablePosition(json.position, json.yRelativePosition) + } + + /** + * Converts the CollaborationMappablePosition to a JSON object. + */ + toJSON(): any { + return { + position: this.position, + yRelativePosition: this.yRelativePosition, + } + } +} + +/** + * Creates a MappablePosition from a position number. + * This is the collaboration implementation that returns a CollaborationMappablePosition. + */ +export function createMappablePosition(position: number, state: EditorState): CollaborationMappablePosition { + const yRelativePosition = getYRelativePosition(state, position) + return new CollaborationMappablePosition(position, yRelativePosition) +} + +/** + * Returns the new position after applying a transaction. Handles both Y.js + * transactions and regular transactions. + */ +export function getUpdatedPosition( + position: MappablePosition, + transaction: Transaction, + state: EditorState, +): GetUpdatedPositionResult { + const yRelativePosition = position instanceof CollaborationMappablePosition ? position.yRelativePosition : null + + if (isChangeOrigin(transaction) && yRelativePosition) { + const newPosition = getYAbsolutePosition(state, yRelativePosition) + + return { + position: new CollaborationMappablePosition(newPosition, yRelativePosition), + mapResult: null, + } + } + + const result = coreGetUpdatedPosition(position, transaction) + + return { + position: new CollaborationMappablePosition(result.position.position, yRelativePosition), + mapResult: result.mapResult, + } +} diff --git a/packages/extension-collaboration/src/helpers/getPositionHelpers.ts b/packages/extension-collaboration/src/helpers/getPositionHelpers.ts deleted file mode 100644 index afdc6a3f7d..0000000000 --- a/packages/extension-collaboration/src/helpers/getPositionHelpers.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { Editor, PositionHelpers } from '@tiptap/core' - -import { mapPositionFromTransaction } from './mapPositionFromTransaction.js' -import { mapRangeFromTransaction } from './mapRangeFromTransaction.js' -import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' -import { getYAbsoluteRange, getYRelativeRange } from './yRelativeRange.js' - -export function getPositionHelpers(editor: Editor): PositionHelpers { - const { state } = editor - return { - getUpdatedPosition: options => { - return mapPositionFromTransaction({ - ...options, - state, - }) - }, - getUpdatedRange: options => { - return mapRangeFromTransaction({ - ...options, - state, - }) - }, - getYAbsolutePosition: relativePos => { - return getYAbsolutePosition(state, relativePos) - }, - getYRelativePosition: absolutePos => { - return getYRelativePosition(state, absolutePos) - }, - getYAbsoluteRange: yRelativeRange => { - return getYAbsoluteRange(state, yRelativeRange) - }, - getYRelativeRange: absoluteRange => { - return getYRelativeRange(state, absoluteRange) - }, - } -} diff --git a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts deleted file mode 100644 index ae91740e1a..0000000000 --- a/packages/extension-collaboration/src/helpers/mapPositionFromTransaction.ts +++ /dev/null @@ -1,35 +0,0 @@ -import type { MapPositionFromTransactionOptions, MapPositionFromTransactionResult } from '@tiptap/core' -import { mapPositionFromTransaction as coreMapPositionFromTransaction } from '@tiptap/core' - -import { isChangeOrigin } from './isChangeOrigin.js' -import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' - -/** - * Returns the new position after applying a transaction. Handles both Y.js - * transactions and regular transactions. - */ -export function mapPositionFromTransaction( - options: MapPositionFromTransactionOptions, -): MapPositionFromTransactionResult { - const { transaction, state, yRelativePosition } = options - if (isChangeOrigin(transaction)) { - /** - * If there is no yRelativePosition that we can use to get the new position, - * we'll use this position as a fallback. - */ - const fallbackPosition = Math.min(options.position, state.doc.content.size) - - return { - newPosition: yRelativePosition ? getYAbsolutePosition(state, yRelativePosition) : fallbackPosition, - newYRelativePosition: yRelativePosition ?? getYRelativePosition(state, fallbackPosition), - mapResult: null, - } - } - - const result = coreMapPositionFromTransaction(options) - return { - newPosition: result.newPosition, - newYRelativePosition: getYRelativePosition(state, result.newPosition), - mapResult: result.mapResult, - } -} diff --git a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts b/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts deleted file mode 100644 index 8842e87476..0000000000 --- a/packages/extension-collaboration/src/helpers/mapRangeFromTransaction.ts +++ /dev/null @@ -1,35 +0,0 @@ -import type { MapRangeFromTransactionOptions, MapRangeFromTransactionResult } from '@tiptap/core' - -import { mapPositionFromTransaction } from './mapPositionFromTransaction.js' - -/** - * Returns the new Range after applying a transaction. Handles both Y.js - * transactions and regular transactions. - */ -export function mapRangeFromTransaction(options: MapRangeFromTransactionOptions): MapRangeFromTransactionResult { - const { range, yRelativeRange } = options - - const fromResult = mapPositionFromTransaction({ - ...options, - position: range.from, - yRelativePosition: yRelativeRange.from, - }) - const toResult = mapPositionFromTransaction({ - ...options, - position: range.to, - yRelativePosition: yRelativeRange.to, - }) - - return { - newRange: { - from: fromResult.newPosition, - to: toResult.newPosition, - }, - newYRelativeRange: { - from: fromResult.newYRelativePosition, - to: toResult.newYRelativePosition, - }, - mapResultFrom: fromResult.mapResult, - mapResultTo: toResult.mapResult, - } -} diff --git a/packages/extension-collaboration/src/helpers/yRelativePosition.ts b/packages/extension-collaboration/src/helpers/yRelativePosition.ts index 8dac5d518c..dfb35a4e01 100644 --- a/packages/extension-collaboration/src/helpers/yRelativePosition.ts +++ b/packages/extension-collaboration/src/helpers/yRelativePosition.ts @@ -1,4 +1,3 @@ -import type { YRelativePosition } from '@tiptap/core' import type { EditorState } from '@tiptap/pm/state' import { absolutePositionToRelativePosition, @@ -6,6 +5,14 @@ import { ySyncPluginKey, } from '@tiptap/y-tiptap' +/** + * A type that represents a Y.js relative position. Used to map a position from + * a transaction, handling both Yjs changes and regular transactions. + * + * If the editor is not collaborative, the value can be `null`. + */ +export type YRelativePosition = any + /** * Converts a Y.js relative position to a position in the Tiptap document. */ diff --git a/packages/extension-collaboration/src/helpers/yRelativeRange.ts b/packages/extension-collaboration/src/helpers/yRelativeRange.ts deleted file mode 100644 index 508335a95d..0000000000 --- a/packages/extension-collaboration/src/helpers/yRelativeRange.ts +++ /dev/null @@ -1,24 +0,0 @@ -import type { Range, YRelativeRange } from '@tiptap/core' -import type { EditorState } from '@tiptap/pm/state' - -import { getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' - -/** - * Converts a Y.js relative range to a Range in the Tiptap document. - */ -export function getYAbsoluteRange(state: EditorState, yRelativeRange: YRelativeRange): Range { - return { - from: getYAbsolutePosition(state, yRelativeRange.from), - to: getYAbsolutePosition(state, yRelativeRange.to), - } -} - -/** - * Converts a Range in the Tiptap document to a Y.js relative range. - */ -export function getYRelativeRange(state: EditorState, absoluteRange: Range): YRelativeRange { - return { - from: getYRelativePosition(state, absoluteRange.from), - to: getYRelativePosition(state, absoluteRange.to), - } -} From 9b0be99a73ca453189774042e054e244727abd7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 1 Dec 2025 13:47:43 +0100 Subject: [PATCH 529/629] chore: update demo --- .../CollaborationMapPositions/React/index.tsx | 35 +++++-------------- 1 file changed, 8 insertions(+), 27 deletions(-) diff --git a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx index bc5662fe38..4c35146645 100644 --- a/demos/src/Extensions/CollaborationMapPositions/React/index.tsx +++ b/demos/src/Extensions/CollaborationMapPositions/React/index.tsx @@ -1,6 +1,5 @@ import './styles.scss' -import type { YRelativePosition } from '@tiptap/core' import Collaboration from '@tiptap/extension-collaboration' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' @@ -9,23 +8,15 @@ import { Placeholder } from '@tiptap/extensions' import type { Node } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' import { Decoration, DecorationSet } from '@tiptap/pm/view' -import { EditorContent, Extension, useEditor } from '@tiptap/react' +import { type MappablePosition, EditorContent, Extension, useEditor } from '@tiptap/react' import { WebrtcProvider } from 'y-webrtc' import * as Y from 'yjs' -/** - * How decorations are stored in the plugin state. - */ -interface DecorationData { - position: number - yRelativePosition: YRelativePosition -} - /** * Creates a ProseMirror DecorationSet from a list of decoration data. * @returns A ProseMirror DecorationSet */ -function createDecorations(data: DecorationData[], doc: Node): DecorationSet { +function createDecorations(data: MappablePosition[], doc: Node): DecorationSet { return DecorationSet.create( doc, data.map(({ position }) => @@ -42,7 +33,7 @@ function createDecorations(data: DecorationData[], doc: Node): DecorationSet { * The state of the DecorationsExtension ProseMirror plugin. */ interface PluginState { - decorationData: DecorationData[] + decorationData: MappablePosition[] decorations: DecorationSet } @@ -71,21 +62,14 @@ const DecorationsExtension = Extension.create({ // If the transaction changes the document, update the decoration // positions if (transaction.docChanged) { - decorationData = decorationData.map(({ position, yRelativePosition }) => { - const result = editor.positionHelpers.getUpdatedPosition({ - transaction, - position, - yRelativePosition, - }) - return { - position: result.newPosition, - yRelativePosition: result.newYRelativePosition, - } + decorationData = decorationData.map(position => { + const result = editor.utils.getUpdatedPosition(position, transaction) + return result.position }) } // If the transaction adds a decoration, add it to the decoration data. - const metadata = transaction.getMeta(DecorationsPluginKey) as DecorationData | undefined + const metadata = transaction.getMeta(DecorationsPluginKey) as MappablePosition | undefined if (metadata) { decorationData.push(metadata) } @@ -138,10 +122,7 @@ export default () => { onClick={() => editor.commands.command(props => { const position = props.state.selection.from - const decorationData: DecorationData = { - position, - yRelativePosition: editor.positionHelpers.getYRelativePosition(position), - } + const decorationData = editor.utils.createMappablePosition(position) props.tr.setMeta(DecorationsPluginKey, decorationData) return true }) From bd063b557b1ddd5bca4b494ee5476650a3285185 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 1 Dec 2025 13:52:06 +0100 Subject: [PATCH 530/629] feat: export CollaborationMappablePosition from index file --- packages/extension-collaboration/src/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/extension-collaboration/src/index.ts b/packages/extension-collaboration/src/index.ts index 07ec74d6f6..7e8ad4fded 100644 --- a/packages/extension-collaboration/src/index.ts +++ b/packages/extension-collaboration/src/index.ts @@ -1,6 +1,7 @@ import { Collaboration } from './collaboration.js' export * from './collaboration.js' +export * from './helpers/CollaborationMappablePosition.js' export * from './helpers/isChangeOrigin.js' export default Collaboration From c0aa86a12c63f43e6733c957f580c27d33aa4e06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 1 Dec 2025 13:59:29 +0100 Subject: [PATCH 531/629] chore: apply copilot suggestions --- .changeset/bright-walls-wash.md | 2 +- packages/core/src/helpers/MappablePosition.ts | 3 +-- packages/core/src/types.ts | 4 ++-- .../src/helpers/CollaborationMappablePosition.ts | 11 ++++++++--- 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/.changeset/bright-walls-wash.md b/.changeset/bright-walls-wash.md index a1f01e1d90..09feb9eeff 100644 --- a/.changeset/bright-walls-wash.md +++ b/.changeset/bright-walls-wash.md @@ -5,6 +5,6 @@ Implement position mapping using the `MappablePosition` class. This enables position mapping in collaborative editing scenarios. -- Introduce `MappablePosition` class in core with `position`, `fromJson`, and `toJSON` methods +- Introduce `MappablePosition` class in core with `position`, `fromJSON`, and `toJSON` methods - Add `editor.utils` property with `getUpdatedPosition(position, transaction)` and `createMappablePosition()` methods - Create `CollaborationMappablePosition` subclass that extends `MappablePosition` with Y.js relative position support \ No newline at end of file diff --git a/packages/core/src/helpers/MappablePosition.ts b/packages/core/src/helpers/MappablePosition.ts index 8782375de2..7ed2d2e292 100644 --- a/packages/core/src/helpers/MappablePosition.ts +++ b/packages/core/src/helpers/MappablePosition.ts @@ -41,8 +41,7 @@ export interface GetUpdatedPositionResult { } /** - * Calculates the new position after applying a transaction. Handles both Y.js - * transactions and regular transactions. + * Calculates the new position after applying a transaction. * * @returns The new mappable position and the map result. */ diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 881cb2e0f7..492c9d6fbc 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -977,7 +977,7 @@ export type Utils = { /** * Returns the new position after applying a transaction. * - * @param position The position (as a number) to update. + * @param position The position to update. A MappablePosition instance. * @param transaction The transaction to apply. * @returns The new position after applying the transaction. * @@ -988,7 +988,7 @@ export type Utils = { getUpdatedPosition: (position: MappablePosition, transaction: Transaction) => GetUpdatedPositionResult /** - * Creates a MappablePosition from a position number. It can be used to obtain the + * Creates a MappablePosition from a position number. A mappable position can be used to track the * next position after applying a transaction. * * @param position The position (as a number) where the MappablePosition will be created. diff --git a/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts b/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts index 42e2314d6d..49e485fd31 100644 --- a/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts +++ b/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts @@ -62,18 +62,23 @@ export function getUpdatedPosition( const yRelativePosition = position instanceof CollaborationMappablePosition ? position.yRelativePosition : null if (isChangeOrigin(transaction) && yRelativePosition) { - const newPosition = getYAbsolutePosition(state, yRelativePosition) + const absolutePosition = getYAbsolutePosition(state, yRelativePosition) return { - position: new CollaborationMappablePosition(newPosition, yRelativePosition), + position: new CollaborationMappablePosition(absolutePosition, yRelativePosition), mapResult: null, } } const result = coreGetUpdatedPosition(position, transaction) + const absolutePosition = result.position.position + return { - position: new CollaborationMappablePosition(result.position.position, yRelativePosition), + position: new CollaborationMappablePosition( + absolutePosition, + yRelativePosition ?? getYRelativePosition(state, absolutePosition), + ), mapResult: result.mapResult, } } From 93e230d47acd40be5847fe553631f8d4afe8f820 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 1 Dec 2025 14:13:28 +0100 Subject: [PATCH 532/629] chore: rename import --- .../src/helpers/CollaborationMappablePosition.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts b/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts index 49e485fd31..7ff4d5b686 100644 --- a/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts +++ b/packages/extension-collaboration/src/helpers/CollaborationMappablePosition.ts @@ -6,7 +6,7 @@ import { import type { EditorState, Transaction } from '@tiptap/pm/state' import { isChangeOrigin } from './isChangeOrigin.js' -import { type YRelativePosition, getYAbsolutePosition, getYRelativePosition } from './YRelativePosition.js' +import { type YRelativePosition, getYAbsolutePosition, getYRelativePosition } from './yRelativePosition.js' /** * A MappablePosition subclass that includes Y.js relative position information From 958db8738fad6d8a539c670ad8fe20664a31d38c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Dec 2025 14:57:09 +0100 Subject: [PATCH 533/629] chore(deps): bump actions/checkout from 4 to 6 (#7263) Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4...v6) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build.yml | 8 ++++---- .github/workflows/publish.yml | 2 +- .github/workflows/release-to-discord.yml | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 13d03eda10..a0f0012c8d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -32,7 +32,7 @@ jobs: node-version: [20] steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Install pnpm uses: pnpm/action-setup@v4 @@ -78,7 +78,7 @@ jobs: node-version: [20] steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Install pnpm uses: pnpm/action-setup@v4 @@ -137,7 +137,7 @@ jobs: #- { name: "Demos/Overview", spec: "./demos/src/Overview/**/*.spec.{js,ts}" } steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Load turbo cache uses: actions/cache@v4.3.0 id: turbo-cache @@ -218,7 +218,7 @@ jobs: needs: [test, unit-test] steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Install pnpm uses: pnpm/action-setup@v4 diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 2e4124a9d2..4cbf2d5b3f 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -31,7 +31,7 @@ jobs: steps: - name: Checkout Repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install pnpm uses: pnpm/action-setup@v4 diff --git a/.github/workflows/release-to-discord.yml b/.github/workflows/release-to-discord.yml index 0154f60337..ea4444e544 100644 --- a/.github/workflows/release-to-discord.yml +++ b/.github/workflows/release-to-discord.yml @@ -12,7 +12,7 @@ jobs: contents: read steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Post release to Discord (tsickert/discord-webhook) uses: tsickert/discord-webhook@v7.0.0 From ad9e4b39742549d3a85106ee6c4998892a6da8fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnau=20G=C3=B3mez=20Farell?= Date: Mon, 1 Dec 2025 17:17:56 +0100 Subject: [PATCH 534/629] feat: add performance demo --- .../React/index.html | 0 .../React/index.tsx | 449 ++++++++++++++++++ .../React/styles.scss | 45 ++ 3 files changed, 494 insertions(+) create mode 100644 demos/src/Experiments/CollaborationMappingPerformance/React/index.html create mode 100644 demos/src/Experiments/CollaborationMappingPerformance/React/index.tsx create mode 100644 demos/src/Experiments/CollaborationMappingPerformance/React/styles.scss diff --git a/demos/src/Experiments/CollaborationMappingPerformance/React/index.html b/demos/src/Experiments/CollaborationMappingPerformance/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Experiments/CollaborationMappingPerformance/React/index.tsx b/demos/src/Experiments/CollaborationMappingPerformance/React/index.tsx new file mode 100644 index 0000000000..34e0aa5d0f --- /dev/null +++ b/demos/src/Experiments/CollaborationMappingPerformance/React/index.tsx @@ -0,0 +1,449 @@ +import './styles.scss' + +import Collaboration from '@tiptap/extension-collaboration' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { Placeholder } from '@tiptap/extensions' +import type { Node } from '@tiptap/pm/model' +import { Plugin, PluginKey } from '@tiptap/pm/state' +import { Decoration, DecorationSet } from '@tiptap/pm/view' +import type { MappablePosition } from '@tiptap/react' +import { EditorContent, Extension, useEditor } from '@tiptap/react' +import { useCallback, useEffect, useRef, useState } from 'react' +import { WebrtcProvider } from 'y-webrtc' +import * as Y from 'yjs' + +/** + * Generates HTML content with the specified number of paragraphs. + * @param paragraphCount - The number of paragraphs to generate. + * @returns HTML string with the generated content. + */ +function generateContent(paragraphCount: number): string { + const loremPhrases = [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.', + 'Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', + 'Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris.', + 'Duis aute irure dolor in reprehenderit in voluptate velit esse cillum.', + 'Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia.', + 'Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit.', + 'Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet.', + 'Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse.', + 'At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis.', + 'Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit.', + ] + + const paragraphs: string[] = [] + + for (let i = 0; i < paragraphCount; i += 1) { + const sentenceCount = 3 + Math.floor(Math.random() * 5) + const sentences: string[] = [] + + for (let j = 0; j < sentenceCount; j += 1) { + sentences.push(loremPhrases[Math.floor(Math.random() * loremPhrases.length)]) + } + + paragraphs.push(`

${sentences.join(' ')}

`) + } + + return paragraphs.join('\n') +} + +/** + * Content size presets with different amounts of text. + */ +const CONTENT_SIZES = { + small: generateContent(5), + medium: generateContent(25), + large: generateContent(100), + veryLarge: generateContent(500), +} as const + +type ContentSize = keyof typeof CONTENT_SIZES + +/** + * Decoration count options. + */ +const DECORATION_COUNTS = [5, 50, 500, 1000] as const + +type DecorationCount = (typeof DECORATION_COUNTS)[number] + +/** + * Creates a ProseMirror DecorationSet from a list of positions. + * @param positions - The positions where the decorations should be placed. + * @param doc - The ProseMirror document node. + * @returns A ProseMirror DecorationSet. + */ +function createDecorations(positions: number[], doc: Node): DecorationSet { + const validPositions = positions.filter(pos => pos >= 0 && pos <= doc.content.size) + + return DecorationSet.create( + doc, + validPositions.map(position => + Decoration.widget(position, () => { + const element = document.createElement('span') + + element.classList.add('decoration') + + return element + }), + ), + ) +} + +/** + * The state of the DecorationsExtension ProseMirror plugin. + */ +interface PluginState { + positions: MappablePosition[] + decorations: DecorationSet +} + +const DecorationsPluginKey = new PluginKey('decorations') + +/** + * Metadata for the decorations plugin transactions. + */ +interface DecorationsMeta { + type: 'add' | 'set' | 'clear' + positions?: MappablePosition[] +} + +/** + * Callback type for performance logging from the extension. + */ +type PerformanceCallback = (action: string, duration: number) => void + +/** + * Global ref for the performance callback, set by the component. + */ +let performanceCallback: PerformanceCallback | null = null + +/** + * Sets the performance callback for the decorations extension. + * @param callback - The callback to invoke with performance data. + */ +function setPerformanceCallback(callback: PerformanceCallback | null): void { + performanceCallback = callback +} + +/** + * An extension that allows you to insert decorations into the editor. + * Tracks decoration positions and remaps them on document changes. + * Also measures the time taken for position mapping. + */ +const DecorationsExtension = Extension.create({ + name: 'decorations', + addProseMirrorPlugins() { + const editor = this.editor + + return [ + new Plugin({ + key: DecorationsPluginKey, + state: { + init: () => ({ + positions: [], + decorations: DecorationSet.empty, + }), + apply(transaction, pluginState, _oldState, newState) { + let positions = pluginState.positions + let mappingDuration = 0 + + if (transaction.docChanged && positions.length > 0) { + const startTime = performance.now() + + positions = positions.map(position => editor.utils.getUpdatedPosition(position, transaction).position) + mappingDuration = performance.now() - startTime + + if (performanceCallback) { + performanceCallback(`Position mapping (${positions.length} positions)`, mappingDuration) + } + } + + const metadata = transaction.getMeta(DecorationsPluginKey) as DecorationsMeta | undefined + + if (metadata) { + if (metadata.type === 'clear') { + positions = [] + } else if (metadata.type === 'set' && metadata.positions) { + positions = metadata.positions + } else if (metadata.type === 'add' && metadata.positions) { + positions = [...positions, ...metadata.positions] + } + } + + return { + positions, + decorations: createDecorations( + positions.map(position => position.position), + newState.doc, + ), + } + }, + }, + props: { + decorations: state => DecorationsPluginKey.getState(state)?.decorations, + }, + }), + ] + }, +}) + +const ydoc = new Y.Doc() + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +const provider = new WebrtcProvider('tiptap-collab-mapping-perf-experiment', ydoc) + +/** + * Performance logging entry. + */ +interface PerformanceEntry { + timestamp: number + action: string + duration: number +} + +export default () => { + const [contentSize, setContentSize] = useState('small') + const [decorationCount, setDecorationCount] = useState(5) + const [performanceLog, setPerformanceLog] = useState([]) + const [currentDecorationCount, setCurrentDecorationCount] = useState(0) + const [docSize, setDocSize] = useState(0) + + const transactionStartTime = useRef(null) + const pendingAction = useRef(null) + + /** + * Logs a performance measurement. + */ + const logPerformance = useCallback((action: string, duration: number) => { + setPerformanceLog(prev => [{ timestamp: Date.now(), action, duration }, ...prev.slice(0, 99)]) + }, []) + + useEffect(() => { + setPerformanceCallback(logPerformance) + + return () => { + setPerformanceCallback(null) + } + }, [logPerformance]) + + const editor = useEditor({ + extensions: [ + Document, + Paragraph, + Text, + Collaboration.configure({ + document: ydoc, + }), + Placeholder.configure({ + placeholder: 'Content will be loaded here...', + }), + DecorationsExtension, + ], + onTransaction: () => { + if (transactionStartTime.current !== null && pendingAction.current !== null) { + const duration = performance.now() - transactionStartTime.current + + logPerformance(pendingAction.current, duration) + transactionStartTime.current = null + pendingAction.current = null + } + }, + onUpdate: ({ editor: updatedEditor }) => { + setDocSize(updatedEditor.state.doc.content.size) + }, + }) + + /** + * Starts timing a measured action. + */ + const startTiming = useCallback((action: string) => { + transactionStartTime.current = performance.now() + pendingAction.current = action + }, []) + + /** + * Loads content of the selected size into the editor. + */ + const loadContent = useCallback(() => { + if (!editor) { + return + } + + startTiming(`Load ${contentSize} content`) + + editor.commands.command(({ tr }) => { + tr.setMeta(DecorationsPluginKey, { type: 'clear' }) + + return true + }) + + editor.commands.setContent(CONTENT_SIZES[contentSize]) + setCurrentDecorationCount(0) + }, [editor, contentSize, startTiming]) + + /** + * Generates random positions within the document. + */ + const generateRandomPositions = useCallback( + (count: number): number[] => { + if (!editor) { + return [] + } + + const size = editor.state.doc.content.size + const positions: number[] = [] + + for (let i = 0; i < count; i += 1) { + const pos = Math.floor(Math.random() * (size - 1)) + 1 + + positions.push(pos) + } + + return positions.sort((a, b) => a - b) + }, + [editor], + ) + + /** + * Adds decorations at random positions in the document. + */ + const addDecorations = useCallback(() => { + if (!editor) { + return + } + + startTiming(`Add ${decorationCount} decorations`) + const positions = generateRandomPositions(decorationCount) + + editor.commands.command(({ tr }) => { + const metadata: DecorationsMeta = { + type: 'set', + positions: positions.map(position => editor.utils.createMappablePosition(position)), + } + tr.setMeta(DecorationsPluginKey, metadata) + + return true + }) + + setCurrentDecorationCount(decorationCount) + }, [editor, decorationCount, generateRandomPositions, startTiming]) + + /** + * Clears all decorations from the editor. + */ + const clearDecorations = useCallback(() => { + if (!editor) { + return + } + + startTiming('Clear decorations') + + editor.commands.command(({ tr }) => { + tr.setMeta(DecorationsPluginKey, { type: 'clear' }) + + return true + }) + + setCurrentDecorationCount(0) + }, [editor, startTiming]) + + /** + * Runs a typing simulation to test position mapping performance. + */ + const runTypingTest = useCallback(() => { + if (!editor) { + return + } + + startTiming(`Insert text (${currentDecorationCount} decorations)`) + const testString = 'Testing position mapping performance. ' + const insertPosition = Math.floor(editor.state.doc.content.size / 2) + + editor.commands.insertContentAt(insertPosition, testString) + }, [editor, currentDecorationCount, startTiming]) + + /** + * Clears the performance log. + */ + const clearLog = useCallback(() => { + setPerformanceLog([]) + }, []) + + useEffect(() => { + if (editor && editor.isEmpty) { + loadContent() + } + }, [editor, loadContent]) + + useEffect(() => { + if (editor) { + setDocSize(editor.state.doc.content.size) + } + }, [editor]) + + if (!editor) { + return null + } + + return ( + <> +
+
+ + + +
+ +
+ + + + +
+ +
+ + +
+ +
+ Doc: {docSize.toLocaleString()} chars + Decorations: {currentDecorationCount.toLocaleString()} +
+
+ + + + {performanceLog.length > 0 && ( +
+
+ Performance Log: + +
+ {performanceLog.map((entry, index) => ( +
+ {new Date(entry.timestamp).toLocaleTimeString()}: {entry.action} - {entry.duration.toFixed(2)}ms +
+ ))} +
+ )} + + ) +} diff --git a/demos/src/Experiments/CollaborationMappingPerformance/React/styles.scss b/demos/src/Experiments/CollaborationMappingPerformance/React/styles.scss new file mode 100644 index 0000000000..0c19ed7c03 --- /dev/null +++ b/demos/src/Experiments/CollaborationMappingPerformance/React/styles.scss @@ -0,0 +1,45 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* Placeholder (at the top) */ + p.is-editor-empty:first-child::before { + color: var(--gray-4); + content: attr(data-placeholder); + float: left; + height: 0; + pointer-events: none; + } +} + +.decoration { + background-color: red; + display: inline-block; + width: 8px; + height: 8px; + border-radius: 50%; + margin: 0 1px; + vertical-align: middle; +} + +.performance-log { + margin-top: 16px; + padding: 12px; + background: var(--gray-1); + border-radius: 8px; + font-family: monospace; + font-size: 12px; + max-height: 200px; + overflow-y: auto; +} + +.performance-log-entry { + padding: 4px 0; + border-bottom: 1px solid var(--gray-2); +} + +.performance-log-entry:last-child { + border-bottom: none; +} From 5db9bc1e980ac4e118737be201a057691cf93c9c Mon Sep 17 00:00:00 2001 From: Knut Eirik Leira Hjelle Date: Tue, 2 Dec 2025 17:40:39 +0100 Subject: [PATCH 535/629] Replace fast-deep-equals with fast-equals (#7292) * Replace fast-deep-equals with fast-equals * Added changeset * Update ninety-olives-guess.md --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/ninety-olives-guess.md | 5 +++++ packages/react/package.json | 2 +- packages/react/src/useEditorState.ts | 2 +- pnpm-lock.yaml | 12 +++++++++--- 4 files changed, 16 insertions(+), 5 deletions(-) create mode 100644 .changeset/ninety-olives-guess.md diff --git a/.changeset/ninety-olives-guess.md b/.changeset/ninety-olives-guess.md new file mode 100644 index 0000000000..c12a6ea4f6 --- /dev/null +++ b/.changeset/ninety-olives-guess.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': minor +--- + +Replaced unmaintained `fast-deep-equal` dependency with maintained `fast-equals` diff --git a/packages/react/package.json b/packages/react/package.json index bbc3572d45..07d52cba9c 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -40,7 +40,7 @@ ], "dependencies": { "@types/use-sync-external-store": "^0.0.6", - "fast-deep-equal": "^3.1.3", + "fast-equals": "^5.3.3", "use-sync-external-store": "^1.4.0" }, "devDependencies": { diff --git a/packages/react/src/useEditorState.ts b/packages/react/src/useEditorState.ts index d46d5cb528..50c84ec6c0 100644 --- a/packages/react/src/useEditorState.ts +++ b/packages/react/src/useEditorState.ts @@ -1,5 +1,5 @@ import type { Editor } from '@tiptap/core' -import deepEqual from 'fast-deep-equal/es6/react.js' +import { deepEqual } from 'fast-equals' import { useDebugValue, useEffect, useLayoutEffect, useState } from 'react' import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector.js' diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4a14f2d626..b18587ba04 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -984,9 +984,9 @@ importers: '@types/use-sync-external-store': specifier: ^0.0.6 version: 0.0.6 - fast-deep-equal: - specifier: ^3.1.3 - version: 3.1.3 + fast-equals: + specifier: ^5.3.3 + version: 5.3.3 use-sync-external-store: specifier: ^1.4.0 version: 1.4.0(react@19.1.0) @@ -4662,6 +4662,10 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + fast-equals@5.3.3: + resolution: {integrity: sha512-/boTcHZeIAQ2r/tL11voclBHDeP9WPxLt+tyAbVSyyXuUFyh0Tne7gJZTqGbxnvj79TjLdCXLOY7UIPhyG5MTw==} + engines: {node: '>=6.0.0'} + fast-glob@3.3.3: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} @@ -11273,6 +11277,8 @@ snapshots: fast-deep-equal@3.1.3: {} + fast-equals@5.3.3: {} + fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5 From 41601d1e0855535d0c52c68fe891d0319f090c49 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 2 Dec 2025 17:49:34 +0100 Subject: [PATCH 536/629] fix: resolve invalid position issue in React node views during updates (#7294) * fix: resolve invalid position issue in React node views during updates * fix: optimize selection updates in React node views with requestAnimationFrame * fix: update selection handling in ReactNodeView to retrieve position correctly --- .changeset/weak-seas-sniff.md | 5 +++ packages/react/src/ReactNodeViewRenderer.tsx | 45 ++++++++++++++------ 2 files changed, 36 insertions(+), 14 deletions(-) create mode 100644 .changeset/weak-seas-sniff.md diff --git a/.changeset/weak-seas-sniff.md b/.changeset/weak-seas-sniff.md new file mode 100644 index 0000000000..e06cab2f49 --- /dev/null +++ b/.changeset/weak-seas-sniff.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': patch +--- + +Fix a bug where React node views could receive invalid positions from `this.getPos()` when ProseMirror and React render cycles got out of sync, which could cause errors during updates. diff --git a/packages/react/src/ReactNodeViewRenderer.tsx b/packages/react/src/ReactNodeViewRenderer.tsx index 0685bfc7eb..ee78d6ca66 100644 --- a/packages/react/src/ReactNodeViewRenderer.tsx +++ b/packages/react/src/ReactNodeViewRenderer.tsx @@ -67,6 +67,11 @@ export class ReactNodeView< */ contentDOMElement!: HTMLElement | null + /** + * The requestAnimationFrame ID used for selection updates. + */ + selectionRafId: number | null = null + constructor(component: Component, props: NodeViewRendererProps, options?: Partial) { super(component, props, options) @@ -200,26 +205,33 @@ export class ReactNodeView< * If it is, call `selectNode`, otherwise call `deselectNode`. */ handleSelectionUpdate() { - const { from, to } = this.editor.state.selection - const pos = this.getPos() - - if (typeof pos !== 'number') { - return + if (this.selectionRafId) { + cancelAnimationFrame(this.selectionRafId) + this.selectionRafId = null } - if (from <= pos && to >= pos + this.node.nodeSize) { - if (this.renderer.props.selected) { + this.selectionRafId = requestAnimationFrame(() => { + this.selectionRafId = null + const { from, to } = this.editor.state.selection + const pos = this.getPos() + if (typeof pos !== 'number') { return } - this.selectNode() - } else { - if (!this.renderer.props.selected) { - return - } + if (from <= pos && to >= pos + this.node.nodeSize) { + if (this.renderer.props.selected) { + return + } - this.deselectNode() - } + this.selectNode() + } else { + if (!this.renderer.props.selected) { + return + } + + this.deselectNode() + } + }) } /** @@ -300,6 +312,11 @@ export class ReactNodeView< this.renderer.destroy() this.editor.off('selectionUpdate', this.handleSelectionUpdate) this.contentDOMElement = null + + if (this.selectionRafId) { + cancelAnimationFrame(this.selectionRafId) + this.selectionRafId = null + } } /** From 7c72d24c53c5a9cc32d2c934b6c1a6be1e0f0d13 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 2 Dec 2025 18:11:09 +0100 Subject: [PATCH 537/629] chore(release): publish a new release version (#7295) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/bright-walls-wash.md | 10 ----- ...boration-caret-user-update--steady-swan.md | 5 --- .changeset/ninety-olives-guess.md | 5 --- .changeset/weak-seas-sniff.md | 5 --- CHANGELOG.md | 38 +++++++++++++++++++ .../extension-character-count/CHANGELOG.md | 6 +++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 +++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 +++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 +++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 +++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 +++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 +++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 +++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 +++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 +++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 +++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 +++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 +++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 14 +++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 ++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 +++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 ++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 16 ++++++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 +++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 10 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 ++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 ++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 ++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 +++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 ++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 ++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 ++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 ++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 ++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 +++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 ++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 ++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 ++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 ++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 ++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 ++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 ++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 ++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 13 +++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 ++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 ++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 ++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 ++++ packages/vue-3/package.json | 2 +- 145 files changed, 663 insertions(+), 95 deletions(-) delete mode 100644 .changeset/bright-walls-wash.md delete mode 100644 .changeset/fix-collaboration-caret-user-update--steady-swan.md delete mode 100644 .changeset/ninety-olives-guess.md delete mode 100644 .changeset/weak-seas-sniff.md diff --git a/.changeset/bright-walls-wash.md b/.changeset/bright-walls-wash.md deleted file mode 100644 index 09feb9eeff..0000000000 --- a/.changeset/bright-walls-wash.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -'@tiptap/extension-collaboration': minor -'@tiptap/core': minor ---- - -Implement position mapping using the `MappablePosition` class. This enables position mapping in collaborative editing scenarios. - -- Introduce `MappablePosition` class in core with `position`, `fromJSON`, and `toJSON` methods -- Add `editor.utils` property with `getUpdatedPosition(position, transaction)` and `createMappablePosition()` methods -- Create `CollaborationMappablePosition` subclass that extends `MappablePosition` with Y.js relative position support \ No newline at end of file diff --git a/.changeset/fix-collaboration-caret-user-update--steady-swan.md b/.changeset/fix-collaboration-caret-user-update--steady-swan.md deleted file mode 100644 index 1a1ea04218..0000000000 --- a/.changeset/fix-collaboration-caret-user-update--steady-swan.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-collaboration-caret": patch ---- - -Avoid mutating `this.options` in the `updateUser` command. `this.options` can be a getter and is not writable; the command now updates the provider awareness directly so user updates are applied correctly. diff --git a/.changeset/ninety-olives-guess.md b/.changeset/ninety-olives-guess.md deleted file mode 100644 index c12a6ea4f6..0000000000 --- a/.changeset/ninety-olives-guess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': minor ---- - -Replaced unmaintained `fast-deep-equal` dependency with maintained `fast-equals` diff --git a/.changeset/weak-seas-sniff.md b/.changeset/weak-seas-sniff.md deleted file mode 100644 index e06cab2f49..0000000000 --- a/.changeset/weak-seas-sniff.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': patch ---- - -Fix a bug where React node views could receive invalid positions from `this.getPos()` when ProseMirror and React render cycles got out of sync, which could cause errors during updates. diff --git a/CHANGELOG.md b/CHANGELOG.md index 4f90ed383d..5c8d180e16 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,43 @@ # Releases +## v3.12.0 + +### @tiptap/extension-collaboration + +#### Minor Changes + +- Implement position mapping using the `MappablePosition` class. This enables position mapping in collaborative editing scenarios. + + - Introduce `MappablePosition` class in core with `position`, `fromJSON`, and `toJSON` methods + - Add `editor.utils` property with `getUpdatedPosition(position, transaction)` and `createMappablePosition()` methods + - Create `CollaborationMappablePosition` subclass that extends `MappablePosition` with Y.js relative position support + +### @tiptap/core + +#### Minor Changes + +- Implement position mapping using the `MappablePosition` class. This enables position mapping in collaborative editing scenarios. + + - Introduce `MappablePosition` class in core with `position`, `fromJSON`, and `toJSON` methods + - Add `editor.utils` property with `getUpdatedPosition(position, transaction)` and `createMappablePosition()` methods + - Create `CollaborationMappablePosition` subclass that extends `MappablePosition` with Y.js relative position support + +### @tiptap/extension-collaboration-caret + +#### Patch Changes + +- Avoid mutating `this.options` in the `updateUser` command. `this.options` can be a getter and is not writable; the command now updates the provider awareness directly so user updates are applied correctly. + +### @tiptap/react + +#### Minor Changes + +- Replaced unmaintained `fast-deep-equal` dependency with maintained `fast-equals` + +#### Patch Changes + +- Fix a bug where React node views could receive invalid positions from `this.getPos()` when ProseMirror and React render cycles got out of sync, which could cause errors during updates. + ## v3.11.1 ### @tiptap/core diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index ebecb0cdd8..c03c9510ab 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extensions@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 7b3e47596a..b73edcbd8a 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 5c643e45ed..71e5ec8ee1 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extensions@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index cead1ab49c..feeb5f4a08 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 5133382cf1..3001a66b96 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extensions@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 0d6e259c28..337e1c50f6 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 5870ea651f..4aff963827 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extensions@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index d54a7b4f27..756bb14ef0 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index ab9095d3ac..cb28bcd6d3 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extensions@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index e77eaaa106..0075c84014 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index c9c6b768bd..9e33fbde08 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-list@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index c60d378c39..be31730c8d 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 05b2ab413e..811b230dee 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-list@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index daf794d951..f5db6fbe6a 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 51889df9e9..66bf389930 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extensions@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 7b0e4daac6..9fc8a8373b 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 90c501dfc0..6694526eda 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-table@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 056bd02554..357337fd5b 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index d6c5679404..4475995554 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-table@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 6ec8b2533c..ecca0abf91 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index a4b550f285..444f3b09ca 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-table@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 7bf6d7d6eb..63aabd8369 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index bac44cfa9f..11a9e47fa8 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-list@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 40a357873c..f9372c4434 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 251a947d77..6950c0f935 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-list@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 1eced3ad0c..6eb8da32bf 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index bdb8790710..7b1dbaf468 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,19 @@ # Change Log +## 3.12.0 + +### Minor Changes + +- f232c5a: Implement position mapping using the `MappablePosition` class. This enables position mapping in collaborative editing scenarios. + + - Introduce `MappablePosition` class in core with `position`, `fromJSON`, and `toJSON` methods + - Add `editor.utils` property with `getUpdatedPosition(position, transaction)` and `createMappablePosition()` methods + - Create `CollaborationMappablePosition` subclass that extends `MappablePosition` with Y.js relative position support + +### Patch Changes + +- @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 4703dd9365..efbc99766d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index f53c4b9ee1..6882db2e8f 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index c0f7d2e90f..db3cca569c 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 1811c4704a..038900a736 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 4f47753ade..2036fc38df 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index e2a73f2dd2..49622c72a7 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 60630eaf16..4db7352a42 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 896b6aa21c..f43e57f5a5 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-list@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 93a25135b1..9952bbdf19 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index dfbea58ab1..00917f436e 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/extension-code-block@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 920afbdbd4..e16d3e7731 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 0a8b61c0ed..fb67e810a0 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 6d5cc508c6..48694ff972 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index a6847ac2bd..b318871c58 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 3794f7b8d9..ad8fd80c9c 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 711dbeb2e2..45830b3350 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- 96e8605: Avoid mutating `this.options` in the `updateUser` command. `this.options` can be a getter and is not writable; the command now updates the provider awareness directly so user updates are applied correctly. +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 8b6a2b93ee..f6df161065 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index bb999f2474..87c63e04f2 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,21 @@ # Change Log +## 3.12.0 + +### Minor Changes + +- f232c5a: Implement position mapping using the `MappablePosition` class. This enables position mapping in collaborative editing scenarios. + + - Introduce `MappablePosition` class in core with `position`, `fromJSON`, and `toJSON` methods + - Add `editor.utils` property with `getUpdatedPosition(position, transaction)` and `createMappablePosition()` methods + - Create `CollaborationMappablePosition` subclass that extends `MappablePosition` with Y.js relative position support + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 7cdbed10ce..cfec736632 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 40b62aa305..bae887d47f 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index d4a5e812ba..6dfc3d4487 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index bef049ece6..1301edce1f 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/extension-text-style@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 2a731ad5d8..8589a0cc0a 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 1cb579af54..590a66b6f6 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 8643af2c2f..e3b2e1a2ed 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index ce47d88817..b0b974e892 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-react +## 3.12.0 + +### Patch Changes + +- Updated dependencies [5db9bc1] +- Updated dependencies [41601d1] + - @tiptap/react@3.12.0 + - @tiptap/extension-drag-handle@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 1c65943a16..d7a0d57f6b 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 93617c7aa5..481ad9f248 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.12.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.12.0 +- @tiptap/vue-2@3.12.0 +- @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 95271789d7..14401ef3d5 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 35db4d7e02..d3767a7971 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.12.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.12.0 +- @tiptap/vue-3@3.12.0 +- @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 57f2f56942..5b97086edd 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 9a8b01da5e..a95cecf821 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/extension-collaboration@3.12.0 + - @tiptap/core@3.12.0 + - @tiptap/extension-node-range@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 8bfd26071f..8b488ce407 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 750f95100a..c75da0564a 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/suggestion@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 977218134d..a31aff0142 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index cbcce849fb..782afdc061 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/extension-text-style@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index ec9f9c82dc..45bdc5dbc3 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 702635b91d..898ac0bf90 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 62a55a5fb8..a78ccbe23a 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 08f6c58150..272dd3c064 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 256ea1f190..a9902f8384 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 8cb80cf570..30d456efad 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 0f243f488f..9f0e20aaa4 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index b5460c5b9f..2aa8842357 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 051e69ba76..6ff11d8464 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 02c7c16a72..af4c47a9d5 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index c199ec22f0..aae440a13f 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 3308ef772f..605c6a16a5 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index fdc80a8b37..d6a7312814 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 13a14f1d85..71cd496e58 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index cb54515a1f..9e3419d5d0 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 7bebbfa950..718d67d283 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/extension-text-style@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 50c39d0b75..942229f4b9 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 973f8f6d26..07d2f164a5 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index a5d85690ee..00d0bd64e0 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 71b3dd45ab..8dc0a552b0 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 7a85842523..4700d2512a 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index bf4334eb16..116fc18b38 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 18f49ed366..1e39ee99e0 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 42cd415bc9..5fb9d31d83 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 6971165a00..738992196e 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 51849bc2b8..329f7e2086 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/suggestion@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index f1a7fca55e..451e7bff8d 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 20b644960d..343641e904 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index f09f569406..492ed21a9f 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index e5ffc5b748..679eac8423 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- @tiptap/extension-list@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 51a5e9e4e5..8af04e6f56 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 4f538e49cb..83a4c02559 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 1e7e115e8c..19a843c4da 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 04fe8bcbe9..e2295a24f7 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 002a48ef4c..f26c599b35 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 9ff98e3482..7f5b7de8b6 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index e484f16920..63b36e2e02 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 99b75d64ff..58181d3deb 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index b246c48c59..334fbca44d 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 605e95ef73..0041cb9535 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.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 9255ad5732..abb448daed 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index a64bf8a2ed..e84522a1b0 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index b60626c282..e68ca3a71e 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index dfdd05c2e2..b29461e86b 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index f6518ac454..b005765d83 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 17cb1774c2..741c44000f 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 3cbeaadb70..9a196f8fd0 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 59f5ff815f..3dc8940f0a 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 3c7e2f60d7..b32004bfaa 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 71da23a40c..2ece90aeaf 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index f59854cb35..5736630233 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 0cbe3219dc..10b1bd6d90 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index f9e22031dc..05839b28d1 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 25d0888fd1..bef751a8a3 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 91c492202e..74f35ade55 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 7acd17ebb7..0413d83b05 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index b4edef1668..7a10b1ad84 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 30fadfd8c8..f22dfcb1d6 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index e01cbb30a9..220ee715a1 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 4a86d28756..e6afe878be 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 00b1ef418c..47e73ff1d3 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 82c816cc13..05952aecbe 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index cf15a8b3ed..981dcbe7b3 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 3d8b7188c9..a2bfd05555 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.12.0 + ## 3.11.1 ## 3.11.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index 0cac9566f4..a8d4fc8058 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 2d53f1eb64..d70f6bebd5 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,18 @@ # Change Log +## 3.12.0 + +### Minor Changes + +- 5db9bc1: Replaced unmaintained `fast-deep-equal` dependency with maintained `fast-equals` + +### Patch Changes + +- 41601d1: Fix a bug where React node views could receive invalid positions from `this.getPos()` when ProseMirror and React render cycles got out of sync, which could cause errors during updates. +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 07d52cba9c..ce103b3d2a 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 36cbff4fa7..8380e62c76 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/extension-blockquote@3.12.0 + - @tiptap/extension-bold@3.12.0 + - @tiptap/extension-code@3.12.0 + - @tiptap/extension-code-block@3.12.0 + - @tiptap/extension-document@3.12.0 + - @tiptap/extension-hard-break@3.12.0 + - @tiptap/extension-heading@3.12.0 + - @tiptap/extension-horizontal-rule@3.12.0 + - @tiptap/extension-italic@3.12.0 + - @tiptap/extension-link@3.12.0 + - @tiptap/extension-list@3.12.0 + - @tiptap/extension-paragraph@3.12.0 + - @tiptap/extension-strike@3.12.0 + - @tiptap/extension-text@3.12.0 + - @tiptap/extension-underline@3.12.0 + - @tiptap/extensions@3.12.0 + - @tiptap/extension-list-item@3.12.0 + - @tiptap/extension-list-keymap@3.12.0 + - @tiptap/extension-bullet-list@3.12.0 + - @tiptap/extension-ordered-list@3.12.0 + - @tiptap/extension-dropcursor@3.12.0 + - @tiptap/extension-gapcursor@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 520034332a..9ba9be38d5 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 529b88fd01..bc9dad8c36 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 64d94d184c..124b7c03b5 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index f47bcb018c..c3b1845c3f 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index e1a638f198..31729a24b6 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 4e0e74779b..2cee94363e 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index c882bf784c..1bc3eb0e5f 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index e92a020dae..7e3b7fd85b 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.0 + +### Patch Changes + +- Updated dependencies [f232c5a] + - @tiptap/core@3.12.0 + - @tiptap/pm@3.12.0 + ## 3.11.1 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 56751d9c79..c1d52bc38f 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.11.1", + "version": "3.12.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 06facb6077a304680b93e2a714589be0942c4c54 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 3 Dec 2025 11:27:37 +0100 Subject: [PATCH 538/629] fix: prevent ProseMirror document mutation during server-side rendering (#7296) --- .../add-ssr-guard-table-of-contents--steady-sparrow.md | 5 +++++ packages/extension-table-of-contents/src/plugin.ts | 5 +++++ packages/extension-table-of-contents/src/tableOfContents.ts | 5 +++++ 3 files changed, 15 insertions(+) create mode 100644 .changeset/add-ssr-guard-table-of-contents--steady-sparrow.md diff --git a/.changeset/add-ssr-guard-table-of-contents--steady-sparrow.md b/.changeset/add-ssr-guard-table-of-contents--steady-sparrow.md new file mode 100644 index 0000000000..887d7c76b1 --- /dev/null +++ b/.changeset/add-ssr-guard-table-of-contents--steady-sparrow.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-table-of-contents": patch +--- + +Fixed a bug that mutated the ProseMirror document during server-side rendering, which could cause "Invalid content for node doc" errors. diff --git a/packages/extension-table-of-contents/src/plugin.ts b/packages/extension-table-of-contents/src/plugin.ts index 7690db5757..5ca9ea8109 100644 --- a/packages/extension-table-of-contents/src/plugin.ts +++ b/packages/extension-table-of-contents/src/plugin.ts @@ -13,6 +13,11 @@ export const TableOfContentsPlugin = ({ key: new PluginKey('tableOfContent'), appendTransaction(transactions, _oldState, newState) { + // Avoid running on the server where `window` / DOM is not available. + if (typeof window === 'undefined') { + return null + } + const tr = newState.tr let modified = false diff --git a/packages/extension-table-of-contents/src/tableOfContents.ts b/packages/extension-table-of-contents/src/tableOfContents.ts index 9a751e8f91..fca52b5509 100644 --- a/packages/extension-table-of-contents/src/tableOfContents.ts +++ b/packages/extension-table-of-contents/src/tableOfContents.ts @@ -262,6 +262,11 @@ export const TableOfContents = Extension.create Date: Wed, 3 Dec 2025 17:04:23 +0100 Subject: [PATCH 539/629] chore(release): publish a new release version (#7298) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...guard-table-of-contents--steady-sparrow.md | 5 ---- CHANGELOG.md | 8 +++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 7 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 142 files changed, 562 insertions(+), 75 deletions(-) delete mode 100644 .changeset/add-ssr-guard-table-of-contents--steady-sparrow.md diff --git a/.changeset/add-ssr-guard-table-of-contents--steady-sparrow.md b/.changeset/add-ssr-guard-table-of-contents--steady-sparrow.md deleted file mode 100644 index 887d7c76b1..0000000000 --- a/.changeset/add-ssr-guard-table-of-contents--steady-sparrow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-table-of-contents": patch ---- - -Fixed a bug that mutated the ProseMirror document during server-side rendering, which could cause "Invalid content for node doc" errors. diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c8d180e16..5a8fa5fc02 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Releases +## v3.12.1 + +### @tiptap/extension-table-of-contents + +#### Patch Changes + +- Fixed a bug that mutated the ProseMirror document during server-side rendering, which could cause "Invalid content for node doc" errors. + ## v3.12.0 ### @tiptap/extension-collaboration diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index c03c9510ab..2c4480441f 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extensions@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index b73edcbd8a..d17ea73520 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 71e5ec8ee1..547121cbb9 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extensions@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index feeb5f4a08..b7b1e3cd9f 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 3001a66b96..63fffec7a8 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extensions@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 337e1c50f6..53c581a4f3 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 4aff963827..74bf099608 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extensions@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 756bb14ef0..1be422746a 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index cb28bcd6d3..821255e8f4 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extensions@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 0075c84014..e80aa949f2 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 9e33fbde08..bf15d7987a 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-list@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index be31730c8d..1e6bff3de1 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 811b230dee..5e26c4310e 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-list@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index f5db6fbe6a..927c633f8f 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 66bf389930..4b06eb9f90 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extensions@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 9fc8a8373b..d13f54b138 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 6694526eda..e427019873 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-table@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 357337fd5b..b2e3eb83ee 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 4475995554..cb01b81b6e 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-table@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index ecca0abf91..5100145934 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 444f3b09ca..7640e80fe3 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-table@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 63aabd8369..ec45e565d3 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 11a9e47fa8..78b84344aa 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-list@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index f9372c4434..f18c62888c 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 6950c0f935..ac850e8a8a 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-list@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 6eb8da32bf..5c72d07185 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 7b1dbaf468..f257d528bc 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index efbc99766d..e8cc4e994e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 6882db2e8f..543d9f9445 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index db3cca569c..b4546f2b93 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 038900a736..b471ae362a 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 2036fc38df..5640c9fc0f 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 49622c72a7..42514fa61d 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 4db7352a42..d688bb2c7f 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index f43e57f5a5..8118b462c2 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-list@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 9952bbdf19..615e0ce006 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 00917f436e..8078826127 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/extension-code-block@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index e16d3e7731..b278f101a3 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index fb67e810a0..006b3d6edc 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 48694ff972..cebc1d6a6f 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index b318871c58..9205be5d58 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index ad8fd80c9c..bb08a037f5 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 45830b3350..362ebd98ad 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index f6df161065..899d772a1b 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 87c63e04f2..cf225abbf7 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Minor Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index cfec736632..eeb2cf7ba9 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index bae887d47f..cb01da4d61 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 6dfc3d4487..9932205ef1 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 1301edce1f..933ed0445b 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/extension-text-style@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 8589a0cc0a..fee52f4879 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 590a66b6f6..c3b63633d2 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index e3b2e1a2ed..1ac0a51f5e 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index b0b974e892..5d0dd779c2 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.12.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.12.1 +- @tiptap/pm@3.12.1 +- @tiptap/react@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index d7a0d57f6b..79b0813876 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 481ad9f248..188d7652aa 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.12.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.12.1 +- @tiptap/pm@3.12.1 +- @tiptap/vue-2@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 14401ef3d5..940551998c 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index d3767a7971..8c0a98bea8 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.12.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.12.1 +- @tiptap/pm@3.12.1 +- @tiptap/vue-3@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 5b97086edd..a0282ae6d1 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index a95cecf821..31ef60b486 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/extension-collaboration@3.12.1 +- @tiptap/extension-node-range@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 8b488ce407..f5fce19139 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index c75da0564a..137d7425f8 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 +- @tiptap/suggestion@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index a31aff0142..bbf272dfdb 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 782afdc061..87ba86c91b 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/extension-text-style@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 45bdc5dbc3..392d99e7e0 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 898ac0bf90..1dd3b23715 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index a78ccbe23a..e418f9097d 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 272dd3c064..748632df6a 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index a9902f8384..3a62d71519 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 30d456efad..b08b9186f7 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 9f0e20aaa4..c495317fa6 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 2aa8842357..527ebbcf0c 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 6ff11d8464..dc121cd53a 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index af4c47a9d5..a7363d91cc 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index aae440a13f..7f1b484d0f 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 605c6a16a5..aa40eb61a0 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index d6a7312814..f0c243e946 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 71cd496e58..5086686953 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 9e3419d5d0..b72e3c8660 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 718d67d283..33e7e42c4a 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/extension-text-style@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 942229f4b9..df97f03dab 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 07d2f164a5..7388f42240 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 00d0bd64e0..e011e89f93 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 8dc0a552b0..ff4b2169b0 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 4700d2512a..94f3a82dcd 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 116fc18b38..3978586188 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 1e39ee99e0..7baa110520 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 5fb9d31d83..84b809121d 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 738992196e..fd46551580 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 329f7e2086..4ba2ac29f8 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 +- @tiptap/suggestion@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 451e7bff8d..6c904f93c4 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 343641e904..68001b196c 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 492ed21a9f..d70c00a998 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 679eac8423..fb80b481ef 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-list@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 8af04e6f56..c0a635ada0 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 83a4c02559..2896a6fd02 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 19a843c4da..08b8a5cf0a 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index e2295a24f7..6864c46753 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index f26c599b35..e03c566f76 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 7f5b7de8b6..db6af82c72 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 63b36e2e02..bcf70bf38b 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 58181d3deb..4d446183c1 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 334fbca44d..a0c0a7e379 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 0041cb9535..f91c9c50a0 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.12.1 + +### Patch Changes + +- 06facb6: Fixed a bug that mutated the ProseMirror document during server-side rendering, which could cause "Invalid content for node doc" errors. + - @tiptap/core@3.12.1 + - @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index abb448daed..59fd111954 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index e84522a1b0..4019204401 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index e68ca3a71e..fc5a8cf1bd 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index b29461e86b..6e01377e80 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index b005765d83..15994ddc3e 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 741c44000f..a367b4cbc9 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 9a196f8fd0..f227eefeb8 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 3dc8940f0a..4602d45ef4 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index b32004bfaa..f54b0508bd 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 2ece90aeaf..cccefc568a 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 5736630233..75fea48707 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 10b1bd6d90..53181349da 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 05839b28d1..d22666e33e 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index bef751a8a3..38ae16ed8d 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 74f35ade55..becbba7f90 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 0413d83b05..b83c932117 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 7a10b1ad84..2014f08ed7 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index f22dfcb1d6..0f67f32203 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 220ee715a1..e5e2d051a1 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index e6afe878be..fafb16af70 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 47e73ff1d3..6489f69c3b 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 05952aecbe..62942799aa 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/markdown +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 981dcbe7b3..6e88c0cea0 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index a2bfd05555..1debc8d932 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.12.1 + ## 3.12.0 ## 3.11.1 diff --git a/packages/pm/package.json b/packages/pm/package.json index a8d4fc8058..3ca94e9115 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index d70f6bebd5..041d63a8ec 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Minor Changes diff --git a/packages/react/package.json b/packages/react/package.json index ce103b3d2a..67fe743968 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 8380e62c76..91faa1eab0 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.12.1 +- @tiptap/extension-gapcursor@3.12.1 +- @tiptap/extension-list-item@3.12.1 +- @tiptap/extension-list-keymap@3.12.1 +- @tiptap/core@3.12.1 +- @tiptap/extension-blockquote@3.12.1 +- @tiptap/extension-bold@3.12.1 +- @tiptap/extension-bullet-list@3.12.1 +- @tiptap/extension-code@3.12.1 +- @tiptap/extension-code-block@3.12.1 +- @tiptap/extension-document@3.12.1 +- @tiptap/extension-hard-break@3.12.1 +- @tiptap/extension-heading@3.12.1 +- @tiptap/extension-horizontal-rule@3.12.1 +- @tiptap/extension-italic@3.12.1 +- @tiptap/extension-link@3.12.1 +- @tiptap/extension-list@3.12.1 +- @tiptap/extension-ordered-list@3.12.1 +- @tiptap/extension-paragraph@3.12.1 +- @tiptap/extension-strike@3.12.1 +- @tiptap/extension-text@3.12.1 +- @tiptap/extension-underline@3.12.1 +- @tiptap/extensions@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 9ba9be38d5..96dc0bfdb7 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index bc9dad8c36..24c2295be4 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 124b7c03b5..334ce1c173 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index c3b1845c3f..5cd2750744 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 31729a24b6..c8774ca64d 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 2cee94363e..19b6ec1e44 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 1bc3eb0e5f..e6232906b7 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 7e3b7fd85b..e4fee13774 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.12.1 + +### Patch Changes + +- @tiptap/core@3.12.1 +- @tiptap/pm@3.12.1 + ## 3.12.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index c1d52bc38f..de4914bf29 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.12.0", + "version": "3.12.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 77250522ae2700ccc50d334edfb35efd130f95ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ahmet=20Katranc=C4=B1?= Date: Wed, 3 Dec 2025 19:29:50 +0000 Subject: [PATCH 540/629] fix(markdown): fix trailing/leading spaces in markdown notation (#7280) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix trailing/leading spaces in markdown notation (Issue #7180) When text with formatting (bold, italic) has trailing or leading whitespace, the markdown output was incorrectly placing spaces inside the mark delimiters (e.g., "**text **" instead of "**text** "). This caused parsing issues in standard markdown parsers. The fix moves whitespace outside of mark delimiters during serialization to produce valid markdown output. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude * Fix whitespace handling in markdown serialization Fixed trailing and leading whitespace handling in markdown serialization for inline marks --------- Co-authored-by: Claude Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/rare-clouds-yell.md | 5 + .../__tests__/conversion-files/index.ts | 1 + .../trailing-whitespace-marks.ts | 53 +++++++ packages/markdown/__tests__/manager.spec.ts | 133 ++++++++++++++++++ packages/markdown/src/MarkdownManager.ts | 26 ++++ 5 files changed, 218 insertions(+) create mode 100644 .changeset/rare-clouds-yell.md create mode 100644 packages/markdown/__tests__/conversion-files/trailing-whitespace-marks.ts diff --git a/.changeset/rare-clouds-yell.md b/.changeset/rare-clouds-yell.md new file mode 100644 index 0000000000..a263c4f9c9 --- /dev/null +++ b/.changeset/rare-clouds-yell.md @@ -0,0 +1,5 @@ +--- +"@tiptap/markdown": patch +--- + +Fixed trailing and leading whitespace handling in markdown serialization for inline marks diff --git a/packages/markdown/__tests__/conversion-files/index.ts b/packages/markdown/__tests__/conversion-files/index.ts index 21268488ca..f3ec896d4d 100644 --- a/packages/markdown/__tests__/conversion-files/index.ts +++ b/packages/markdown/__tests__/conversion-files/index.ts @@ -8,3 +8,4 @@ export * as nestedNodes from './nested-nodes.js' export * as orderedList from './ordered-list.js' export * as softBreakMarks from './soft-break-marks.js' export * as taskList from './task-list.js' +export * as trailingWhitespaceMarks from './trailing-whitespace-marks.js' diff --git a/packages/markdown/__tests__/conversion-files/trailing-whitespace-marks.ts b/packages/markdown/__tests__/conversion-files/trailing-whitespace-marks.ts new file mode 100644 index 0000000000..fece41690b --- /dev/null +++ b/packages/markdown/__tests__/conversion-files/trailing-whitespace-marks.ts @@ -0,0 +1,53 @@ +export const name = 'Trailing Whitespace in Marks' + +// The expected input is the correct markdown output (no spaces inside marks) +export const expectedInput = `**text** continues here + +and **more text** here + +also *italic text* works + +and **bold** *italic* mixed`.trim() + +// The JSON content simulates text with trailing/leading spaces inside marks +// which should be moved outside the mark delimiters in the output +export const expectedOutput = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { type: 'text', marks: [{ type: 'bold' }], text: 'text' }, + { type: 'text', text: ' continues here' }, + ], + }, + { + type: 'paragraph', + content: [ + { type: 'text', text: 'and ' }, + { type: 'text', marks: [{ type: 'bold' }], text: 'more text' }, + { type: 'text', text: ' here' }, + ], + }, + { + type: 'paragraph', + content: [ + { type: 'text', text: 'also ' }, + { type: 'text', marks: [{ type: 'italic' }], text: 'italic text' }, + { type: 'text', text: ' works' }, + ], + }, + { + type: 'paragraph', + content: [ + { type: 'text', text: 'and ' }, + { type: 'text', marks: [{ type: 'bold' }], text: 'bold' }, + { type: 'text', text: ' ' }, + { type: 'text', marks: [{ type: 'italic' }], text: 'italic' }, + { type: 'text', text: ' mixed' }, + ], + }, + ], +} + +export const extensions = [] diff --git a/packages/markdown/__tests__/manager.spec.ts b/packages/markdown/__tests__/manager.spec.ts index d82494df0d..9f391f3002 100644 --- a/packages/markdown/__tests__/manager.spec.ts +++ b/packages/markdown/__tests__/manager.spec.ts @@ -212,6 +212,139 @@ Final paragraph.` expect(markdown).toBe('Hello world') }) + it('should move trailing whitespace outside of mark closing (Issue #7180)', () => { + // When text has trailing space and bold mark, output should be "**text** " not "**text **" + const doc = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'bold text ', + marks: [{ type: 'bold' }], + }, + { + type: 'text', + text: 'continues here', + }, + ], + }, + ], + } + + const markdown = markdownManager.renderNodes(doc) + // The trailing space should be outside the ** markers + expect(markdown).toBe('**bold text** continues here') + }) + + it('should move leading whitespace outside of mark opening (Issue #7180)', () => { + // When text has leading space and bold mark, output should be " **text**" not "** text**" + const doc = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'normal text', + }, + { + type: 'text', + text: ' bold text', + marks: [{ type: 'bold' }], + }, + ], + }, + ], + } + + const markdown = markdownManager.renderNodes(doc) + // The leading space should be outside the ** markers + expect(markdown).toBe('normal text **bold text**') + }) + + it('should handle both leading and trailing whitespace in marked text (Issue #7180)', () => { + // Text like " bold " with bold mark should output " **bold** " not "** bold **" + const doc = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'before', + }, + { + type: 'text', + text: ' bold ', + marks: [{ type: 'bold' }], + }, + { + type: 'text', + text: 'after', + }, + ], + }, + ], + } + + const markdown = markdownManager.renderNodes(doc) + // Both leading and trailing spaces should be outside the ** markers + expect(markdown).toBe('before **bold** after') + }) + + it('should handle trailing whitespace in italic marks (Issue #7180)', () => { + const doc = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'italic text ', + marks: [{ type: 'italic' }], + }, + { + type: 'text', + text: 'normal', + }, + ], + }, + ], + } + + const markdown = markdownManager.renderNodes(doc) + expect(markdown).toBe('*italic text* normal') + }) + + it('should handle whitespace at end of paragraph with mark (Issue #7180)', () => { + // Bold text with trailing space at end of paragraph + const doc = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'some text ', + marks: [{ type: 'bold' }], + }, + ], + }, + ], + } + + const markdown = markdownManager.renderNodes(doc) + // Trailing space should be outside the marks + expect(markdown).toBe('**some text** ') + }) + it('should render nested marks with correct tag order', () => { // Test case: bold inside strike should render as ~~**text**~~ const doc = { diff --git a/packages/markdown/src/MarkdownManager.ts b/packages/markdown/src/MarkdownManager.ts index 9b092136ed..66fc1880d3 100644 --- a/packages/markdown/src/MarkdownManager.ts +++ b/packages/markdown/src/MarkdownManager.ts @@ -891,6 +891,16 @@ export class MarkdownManager { }) // Open new marks (should be at the beginning) + // Extract leading whitespace before opening marks to prevent invalid markdown like "** text**" + let leadingWhitespace = '' + if (marksToOpen.length > 0) { + const leadingMatch = textContent.match(/^(\s+)/) + if (leadingMatch) { + leadingWhitespace = leadingMatch[1] + textContent = textContent.slice(leadingWhitespace.length) + } + } + marksToOpen.forEach(({ type, mark }) => { const openMarkdown = this.getMarkOpening(type, mark) if (openMarkdown) { @@ -899,6 +909,9 @@ export class MarkdownManager { activeMarks.set(type, mark) }) + // Add leading whitespace before the mark opening + textContent = leadingWhitespace + textContent + // Close marks at the end of this node if needed const marksToCloseAtEnd = findMarksToCloseAtEnd( activeMarks, @@ -907,6 +920,16 @@ export class MarkdownManager { this.markSetsEqual.bind(this), ) + // Extract trailing whitespace before closing marks to prevent invalid markdown like "**text **" + let trailingWhitespace = '' + if (marksToCloseAtEnd.length > 0) { + const trailingMatch = textContent.match(/(\s+)$/) + if (trailingMatch) { + trailingWhitespace = trailingMatch[1] + textContent = textContent.slice(0, -trailingWhitespace.length) + } + } + marksToCloseAtEnd.forEach(markType => { const mark = activeMarks.get(markType) const closeMarkdown = this.getMarkClosing(markType, mark) @@ -916,6 +939,9 @@ export class MarkdownManager { activeMarks.delete(markType) }) + // Add trailing whitespace after the mark closing + textContent += trailingWhitespace + result.push(textContent) } else { // For non-text nodes, close all active marks before rendering, then reopen after From 286820e6baf03bbb73406f298c45ff677d6b2db6 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 4 Dec 2025 19:05:49 +0100 Subject: [PATCH 541/629] feat(drag-handle): add data-dragging attribute to track drag state (#7304) --- .../add-data-dragging-attribute--swift-fox.md | 8 ++ .../src/DragHandle.tsx | 7 +- .../src/DragHandle.ts | 3 + .../src/DragHandle.ts | 1 + .../__tests__/drag-handle.spec.ts | 106 ++++++++++++++++++ .../src/drag-handle-plugin.ts | 6 + 6 files changed, 130 insertions(+), 1 deletion(-) create mode 100644 .changeset/add-data-dragging-attribute--swift-fox.md create mode 100644 packages/extension-drag-handle/__tests__/drag-handle.spec.ts diff --git a/.changeset/add-data-dragging-attribute--swift-fox.md b/.changeset/add-data-dragging-attribute--swift-fox.md new file mode 100644 index 0000000000..e4b294bfd6 --- /dev/null +++ b/.changeset/add-data-dragging-attribute--swift-fox.md @@ -0,0 +1,8 @@ +--- +"@tiptap/extension-drag-handle": patch +"@tiptap/extension-drag-handle-react": patch +"@tiptap/extension-drag-handle-vue-2": patch +"@tiptap/extension-drag-handle-vue-3": patch +--- + +Added `data-dragging` attribute to drag handle elements to track drag state. diff --git a/packages/extension-drag-handle-react/src/DragHandle.tsx b/packages/extension-drag-handle-react/src/DragHandle.tsx index 73b678aeeb..4254f7eed5 100644 --- a/packages/extension-drag-handle-react/src/DragHandle.tsx +++ b/packages/extension-drag-handle-react/src/DragHandle.tsx @@ -78,7 +78,12 @@ export const DragHandle = (props: DragHandleProps) => { }, [element, editor, onNodeChange, pluginKey, computePositionConfig, onElementDragStart, onElementDragEnd]) return ( -
+
{children}
) diff --git a/packages/extension-drag-handle-vue-2/src/DragHandle.ts b/packages/extension-drag-handle-vue-2/src/DragHandle.ts index c12ebd0357..8964c09870 100644 --- a/packages/extension-drag-handle-vue-2/src/DragHandle.ts +++ b/packages/extension-drag-handle-vue-2/src/DragHandle.ts @@ -84,6 +84,9 @@ export const DragHandle = Vue.extend({ 'div', { class: this.class, + attrs: { + 'data-dragging': 'false', + }, }, this.$slots.default, ) diff --git a/packages/extension-drag-handle-vue-3/src/DragHandle.ts b/packages/extension-drag-handle-vue-3/src/DragHandle.ts index 2e4c2bb098..b2969ec856 100644 --- a/packages/extension-drag-handle-vue-3/src/DragHandle.ts +++ b/packages/extension-drag-handle-vue-3/src/DragHandle.ts @@ -107,6 +107,7 @@ export const DragHandle = defineComponent({ ref: root, class: props.class, style: { visibility: 'hidden', position: 'absolute' }, + 'data-dragging': 'false', }, slots.default?.(), ) diff --git a/packages/extension-drag-handle/__tests__/drag-handle.spec.ts b/packages/extension-drag-handle/__tests__/drag-handle.spec.ts new file mode 100644 index 0000000000..65e3a76bde --- /dev/null +++ b/packages/extension-drag-handle/__tests__/drag-handle.spec.ts @@ -0,0 +1,106 @@ +import { Editor } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { afterEach, beforeEach, describe, expect, it } from 'vitest' + +import { DragHandle } from '../src/drag-handle.js' + +describe('DragHandle', () => { + let editor: Editor + let dragHandleElement: HTMLElement + + beforeEach(() => { + dragHandleElement = document.createElement('div') + dragHandleElement.classList.add('drag-handle') + + editor = new Editor({ + element: document.body, + extensions: [ + Document, + Paragraph, + Text, + DragHandle.configure({ + render: () => dragHandleElement, + }), + ], + content: '

Hello World

', + }) + }) + + afterEach(() => { + editor.destroy() + }) + + describe('data-dragging attribute', () => { + it('should initialize data-dragging attribute to false', () => { + expect(dragHandleElement.dataset.dragging).toBe('false') + }) + + it('should set data-dragging to true on dragstart', () => { + const dragStartEvent = new DragEvent('dragstart', { + bubbles: true, + cancelable: true, + dataTransfer: new DataTransfer(), + }) + + dragHandleElement.dispatchEvent(dragStartEvent) + + expect(dragHandleElement.dataset.dragging).toBe('true') + }) + + it('should set data-dragging to false on dragend', () => { + const dragStartEvent = new DragEvent('dragstart', { + bubbles: true, + cancelable: true, + dataTransfer: new DataTransfer(), + }) + + dragHandleElement.dispatchEvent(dragStartEvent) + + expect(dragHandleElement.dataset.dragging).toBe('true') + + const dragEndEvent = new DragEvent('dragend', { + bubbles: true, + cancelable: true, + }) + + dragHandleElement.dispatchEvent(dragEndEvent) + + expect(dragHandleElement.dataset.dragging).toBe('false') + }) + + it('should maintain data-dragging state through multiple drag cycles', () => { + const dataTransfer = new DataTransfer() + + for (let i = 0; i < 3; i += 1) { + const dragStartEvent = new DragEvent('dragstart', { + bubbles: true, + cancelable: true, + dataTransfer, + }) + + dragHandleElement.dispatchEvent(dragStartEvent) + expect(dragHandleElement.dataset.dragging).toBe('true') + + const dragEndEvent = new DragEvent('dragend', { + bubbles: true, + cancelable: true, + }) + + dragHandleElement.dispatchEvent(dragEndEvent) + expect(dragHandleElement.dataset.dragging).toBe('false') + } + }) + }) + + describe('element properties', () => { + it('should have draggable set to true', () => { + expect(dragHandleElement.draggable).toBe(true) + }) + + it('should have pointer events set to auto initially', () => { + expect(dragHandleElement.style.pointerEvents).toBe('auto') + }) + }) +}) diff --git a/packages/extension-drag-handle/src/drag-handle-plugin.ts b/packages/extension-drag-handle/src/drag-handle-plugin.ts index 8d97e461a9..2b8b4bdf7a 100644 --- a/packages/extension-drag-handle/src/drag-handle-plugin.ts +++ b/packages/extension-drag-handle/src/drag-handle-plugin.ts @@ -131,6 +131,10 @@ export const DragHandlePlugin = ({ // @ts-ignore dragHandler(e, editor) + if (element) { + element.dataset.dragging = 'true' + } + setTimeout(() => { if (element) { element.style.pointerEvents = 'none' @@ -143,6 +147,7 @@ export const DragHandlePlugin = ({ hideHandle() if (element) { element.style.pointerEvents = 'auto' + element.dataset.dragging = 'false' } } @@ -228,6 +233,7 @@ export const DragHandlePlugin = ({ view: view => { element.draggable = true element.style.pointerEvents = 'auto' + element.dataset.dragging = 'false' editor.view.dom.parentElement?.appendChild(wrapper) From 18eef0d87c1c5f876a4c13ad641587c8e8c9c842 Mon Sep 17 00:00:00 2001 From: SuYao Date: Fri, 5 Dec 2025 06:27:37 +0800 Subject: [PATCH 542/629] fix(extensions/table-of-content): IME capture Error (#7134) * Fix IME composition handling by undoing recently applied input rules - Add compositionstart handler to undo input rules when IME starts - Prevent input rules from interfering with IME text composition - Maintain existing compositionend behavior for rule application * Remove compositionstart handler to fix IME input issues - Delete compositionstart event handler that was interfering with IME input - Keep compositionend handler for proper text input rule processing - Maintain undoInputRule functionality through other means * Skip table of contents updates during IME composition - Prevent table of contents plugin from updating during input method editor composition - Add composition checks in both plugin transaction handler and extension transaction handler - Avoid interfering with IME input by skipping unnecessary TOC updates * Skip the update directory logic during IME input method removal to avoid interference with input. * add changeset * Apply suggestion from @Copilot Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/plenty-dancers-listen.md | 5 +++++ packages/extension-table-of-contents/src/plugin.ts | 6 ++++++ 2 files changed, 11 insertions(+) create mode 100644 .changeset/plenty-dancers-listen.md diff --git a/.changeset/plenty-dancers-listen.md b/.changeset/plenty-dancers-listen.md new file mode 100644 index 0000000000..08dc3577e2 --- /dev/null +++ b/.changeset/plenty-dancers-listen.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-table-of-contents': patch +--- + +Skip the table of contents update logic during IME input method composition to avoid interference with input. diff --git a/packages/extension-table-of-contents/src/plugin.ts b/packages/extension-table-of-contents/src/plugin.ts index 5ca9ea8109..e5f81614af 100644 --- a/packages/extension-table-of-contents/src/plugin.ts +++ b/packages/extension-table-of-contents/src/plugin.ts @@ -18,6 +18,12 @@ export const TableOfContentsPlugin = ({ return null } + // Skip updating table of contents during IME composition + // to avoid interfering with input method editor + if (transactions.some(tr => tr.getMeta('composition'))) { + return + } + const tr = newState.tr let modified = false From fb51a32c89b0c33fe57cb87f41852546c38f58de Mon Sep 17 00:00:00 2001 From: Aslam Date: Fri, 5 Dec 2025 05:35:11 +0700 Subject: [PATCH 543/629] fix(link): Ensure `enableClickSelection` works regardless of the `openOnClick` option (#7297) * fix: enableClickSelection for links when openOnClick is disabled * add changeset --- .changeset/olive-cycles-drive.md | 5 ++ .../src/helpers/clickHandler.ts | 55 ++++++++++--------- packages/extension-link/src/link.ts | 17 +++--- 3 files changed, 43 insertions(+), 34 deletions(-) create mode 100644 .changeset/olive-cycles-drive.md diff --git a/.changeset/olive-cycles-drive.md b/.changeset/olive-cycles-drive.md new file mode 100644 index 0000000000..49dcbd1239 --- /dev/null +++ b/.changeset/olive-cycles-drive.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-link': patch +--- + +Ensure `enableClickSelection` works regardless of the `openOnClick` option by always registering the link click handler plugin. \ No newline at end of file diff --git a/packages/extension-link/src/helpers/clickHandler.ts b/packages/extension-link/src/helpers/clickHandler.ts index 974f32801f..3687c7d28e 100644 --- a/packages/extension-link/src/helpers/clickHandler.ts +++ b/packages/extension-link/src/helpers/clickHandler.ts @@ -6,6 +6,7 @@ import { Plugin, PluginKey } from '@tiptap/pm/state' type ClickHandlerOptions = { type: MarkType editor: Editor + openOnClick?: boolean enableClickSelection?: boolean } @@ -22,40 +23,44 @@ export function clickHandler(options: ClickHandlerOptions): Plugin { return false } - let link: HTMLAnchorElement | null = null + let handled = false - if (event.target instanceof HTMLAnchorElement) { - link = event.target - } else { - let a = event.target as HTMLElement - const els = [] - - while (a.nodeName !== 'DIV') { - els.push(a) - a = a.parentNode as HTMLElement - } - link = els.find(value => value.nodeName === 'A') as HTMLAnchorElement + if (options.enableClickSelection) { + const commandResult = options.editor.commands.extendMarkRange(options.type.name) + handled = commandResult } - if (!link) { - return false - } + if (options.openOnClick) { + let link: HTMLAnchorElement | null = null - const attrs = getAttributes(view.state, options.type.name) - const href = link?.href ?? attrs.href - const target = link?.target ?? attrs.target + if (event.target instanceof HTMLAnchorElement) { + link = event.target + } else { + let a = event.target as HTMLElement + const els = [] - if (options.enableClickSelection) { - options.editor.commands.extendMarkRange(options.type.name) - } + while (a.nodeName !== 'DIV') { + els.push(a) + a = a.parentNode as HTMLElement + } + link = els.find(value => value.nodeName === 'A') as HTMLAnchorElement + } - if (link && href) { - window.open(href, target) + if (!link) { + return handled + } - return true + const attrs = getAttributes(view.state, options.type.name) + const href = link?.href ?? attrs.href + const target = link?.target ?? attrs.target + + if (link && href) { + window.open(href, target) + handled = true + } } - return false + return handled }, }, }) diff --git a/packages/extension-link/src/link.ts b/packages/extension-link/src/link.ts index 920b195c3a..3354eaec8e 100644 --- a/packages/extension-link/src/link.ts +++ b/packages/extension-link/src/link.ts @@ -436,15 +436,14 @@ export const Link = Mark.create({ ) } - if (this.options.openOnClick === true) { - plugins.push( - clickHandler({ - type: this.type, - editor: this.editor, - enableClickSelection: this.options.enableClickSelection, - }), - ) - } + plugins.push( + clickHandler({ + type: this.type, + editor: this.editor, + openOnClick: this.options.openOnClick === 'whenNotEditable' ? true : this.options.openOnClick, + enableClickSelection: this.options.enableClickSelection, + }), + ) if (this.options.linkOnPaste) { plugins.push( From e3b4f68d78c04549938c650889f16a73258c9c3f Mon Sep 17 00:00:00 2001 From: Aslam Date: Fri, 5 Dec 2025 05:45:08 +0700 Subject: [PATCH 544/629] feat(core): allow custom resize handle rendering via `createCustomHandle` in `ResizableNodeView` (#7216) * feat(code): add to for custom handle rendering * chore: add changeset * update changeset * missing comment for createCustomhandle * feat: hide resize handles when editor is not editable (#7221) * feat: hide resize handles when editor is not editable * add changeset * chore: remove container predefined style * chore: keep flex to wrapper * chore: removed className from createCustomHandle * update changeset * remove className param from comment * chore: add fallback when createCustomhandle returns invalid element replace shorthand with explicit branching --- .changeset/soft-candles-knock.md | 8 ++ packages/core/src/lib/ResizableNodeView.ts | 126 ++++++++++++++++++++- packages/extension-image/src/image.ts | 10 +- 3 files changed, 133 insertions(+), 11 deletions(-) create mode 100644 .changeset/soft-candles-knock.md diff --git a/.changeset/soft-candles-knock.md b/.changeset/soft-candles-knock.md new file mode 100644 index 0000000000..7327be3dbe --- /dev/null +++ b/.changeset/soft-candles-knock.md @@ -0,0 +1,8 @@ +--- +'@tiptap/core': minor +'@tiptap/extension-image': minor +--- + +1. **Added** an optional `createCustomHandle` callback to `ResizableNodeView`, allowing developers to fully customize resize handles. When provided, it replaces the default handle creation and bypasses the built-in `positionHandle` logic, giving complete control over markup, styling, and positioning while preserving backward compatibility. +2. **Removed** predefined inline styles from the `wrapper` element to better support dynamic alignment. This eliminates the need for `!important` overrides in user styles. +3. **Added** an editor `update` event listener to dynamically attach or remove resize handles based on the editor’s editable state. The implementation tracks the previous editable state to avoid unnecessary re-renders. diff --git a/packages/core/src/lib/ResizableNodeView.ts b/packages/core/src/lib/ResizableNodeView.ts index db06c16b40..c7fa727449 100644 --- a/packages/core/src/lib/ResizableNodeView.ts +++ b/packages/core/src/lib/ResizableNodeView.ts @@ -1,6 +1,8 @@ import type { Node as PMNode } from '@tiptap/pm/model' import type { Decoration, DecorationSource, NodeView } from '@tiptap/pm/view' +import type { Editor } from '../Editor.js' + const isTouchEvent = (e: MouseEvent | TouchEvent): e is TouchEvent => { return 'touches' in e } @@ -73,6 +75,11 @@ export type ResizableNodeViewOptions = { */ node: PMNode + /** + * The Tiptap editor instance + */ + editor: Editor + /** * Function that returns the current position of the node in the document */ @@ -204,6 +211,51 @@ export type ResizableNodeViewOptions = { /** Class added to container while actively resizing */ resizing?: string } + + /** + * Optional callback for creating custom resize handle elements. + * + * This function allows developers to define their own handle element + * (e.g., custom icons, classes, or styles) for a given resize direction. + * It is called internally for each handle direction. + * + * @param direction - The direction of the handle being created (e.g., 'top', 'bottom-right'). + * @returns The custom handle HTMLElement. + * + * @example + * ```ts + * createCustomHandle: (direction) => { + * const handle = document.createElement('div') + * handle.dataset.resizeHandle = direction + * handle.style.position = 'absolute' + * handle.className = 'tiptap-custom-handle' + * + * const isTop = direction.includes('top') + * const isBottom = direction.includes('bottom') + * const isLeft = direction.includes('left') + * const isRight = direction.includes('right') + * + * if (isTop) handle.style.top = '0' + * if (isBottom) handle.style.bottom = '0' + * if (isLeft) handle.style.left = '0' + * if (isRight) handle.style.right = '0' + * + * // Edge handles span the full width or height + * if (direction === 'top' || direction === 'bottom') { + * handle.style.left = '0' + * handle.style.right = '0' + * } + * + * if (direction === 'left' || direction === 'right') { + * handle.style.top = '0' + * handle.style.bottom = '0' + * } + * + * return handle + * } + * ``` + */ + createCustomHandle?: (direction: ResizableNodeViewDirection) => HTMLElement } } @@ -247,6 +299,9 @@ export class ResizableNodeView { /** The ProseMirror node instance */ node: PMNode + /** The Tiptap editor instance */ + editor: Editor + /** The DOM element being made resizable */ element: HTMLElement @@ -294,6 +349,9 @@ export class ResizableNodeView { resizing: '', } + /** Optional callback for creating custom resize handles */ + createCustomHandle?: (direction: ResizableNodeViewDirection) => HTMLElement + /** Initial width of the element (for aspect ratio calculation) */ private initialWidth: number = 0 @@ -324,6 +382,12 @@ export class ResizableNodeView { /** Whether Shift key is currently pressed (for temporary aspect ratio lock) */ private isShiftKeyPressed: boolean = false + /** Last known editable state of the editor */ + private lastEditableState: boolean | undefined = undefined + + /** Map of handle elements by direction */ + private handleMap = new Map() + /** * Creates a new ResizableNodeView instance. * @@ -334,6 +398,7 @@ export class ResizableNodeView { */ constructor(options: ResizableNodeViewOptions) { this.node = options.node + this.editor = options.editor this.element = options.element this.contentElement = options.contentElement @@ -371,11 +436,17 @@ export class ResizableNodeView { } } + if (options.options?.createCustomHandle) { + this.createCustomHandle = options.options.createCustomHandle + } + this.wrapper = this.createWrapper() this.container = this.createContainer() this.applyInitialSize() this.attachHandles() + + this.editor.on('update', this.handleEditorUpdate.bind(this)) } /** @@ -394,6 +465,23 @@ export class ResizableNodeView { return this.contentElement } + private handleEditorUpdate() { + const isEditable = this.editor.isEditable + + // Only if state actually changed + if (isEditable === this.lastEditableState) { + return + } + + this.lastEditableState = isEditable + + if (!isEditable) { + this.removeHandles() + } else if (isEditable && this.handleMap.size === 0) { + this.attachHandles() + } + } + /** * Called when the node's content or attributes change. * @@ -442,6 +530,8 @@ export class ResizableNodeView { this.activeHandle = null } + this.editor.off('update', this.handleEditorUpdate.bind(this)) + this.container.remove() } @@ -459,8 +549,6 @@ export class ResizableNodeView { element.dataset.resizeContainer = '' element.dataset.node = this.node.type.name element.style.display = 'flex' - element.style.justifyContent = 'flex-start' - element.style.alignItems = 'flex-start' if (this.classNames.container) { element.className = this.classNames.container @@ -567,14 +655,44 @@ export class ResizableNodeView { */ private attachHandles(): void { this.directions.forEach(direction => { - const handle = this.createHandle(direction) - this.positionHandle(handle, direction) + let handle: HTMLElement + + if (this.createCustomHandle) { + handle = this.createCustomHandle(direction) + } else { + handle = this.createHandle(direction) + } + + if (!(handle instanceof HTMLElement)) { + console.warn( + `[ResizableNodeView] createCustomHandle("${direction}") did not return an HTMLElement. Falling back to default handle.`, + ) + handle = this.createHandle(direction) + } + + if (!this.createCustomHandle) { + this.positionHandle(handle, direction) + } + handle.addEventListener('mousedown', event => this.handleResizeStart(event, direction)) handle.addEventListener('touchstart', event => this.handleResizeStart(event as unknown as MouseEvent, direction)) + + this.handleMap.set(direction, handle) + this.wrapper.appendChild(handle) }) } + /** + * Removes all resize handles from the wrapper. + * + * Cleans up the handle map and removes each handle element from the DOM. + */ + private removeHandles(): void { + this.handleMap.forEach(el => el.remove()) + this.handleMap.clear() + } + /** * Applies initial sizing from node attributes to the element. * diff --git a/packages/extension-image/src/image.ts b/packages/extension-image/src/image.ts index 88297588a6..29414b7a80 100644 --- a/packages/extension-image/src/image.ts +++ b/packages/extension-image/src/image.ts @@ -144,18 +144,13 @@ export const Image = Node.create({ }, addNodeView() { - if ( - !this.options.resize || - !this.options.resize.enabled || - typeof document === 'undefined' || - !this.editor.isEditable - ) { + if (!this.options.resize || !this.options.resize.enabled || typeof document === 'undefined') { return null } const { directions, minWidth, minHeight, alwaysPreserveAspectRatio } = this.options.resize - return ({ node, getPos, HTMLAttributes }) => { + return ({ node, getPos, HTMLAttributes, editor }) => { const el = document.createElement('img') Object.entries(HTMLAttributes).forEach(([key, value]) => { @@ -175,6 +170,7 @@ export const Image = Node.create({ const nodeView = new ResizableNodeView({ element: el, + editor, node, getPos, onResize: (width, height) => { From 526365a682d87a51522da0161a87da72fb58ed16 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 5 Dec 2025 00:01:20 +0100 Subject: [PATCH 545/629] Fix/multimention markdown serialization (#7306) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(mention): add 'mentionSuggestionChar' to allowedAttributes for mention nodes * add changeset * chore: adjust changeset type * feat(markdown): enhance multi-mention support with customizable suggestion characters and clean serialization --------- Co-authored-by: Fabian Jäger --- .changeset/serious-pigs-chew.md | 6 + demos/src/Markdown/Full/React/content.ts | 9 +- demos/src/Markdown/Full/React/index.tsx | 41 ++++--- .../markdown/createInlineMarkdownSpec.ts | 56 +++++++++- packages/extension-mention/src/mention.ts | 25 ++++- packages/markdown/__tests__/utilities.spec.ts | 105 ++++++++++++++++++ 6 files changed, 220 insertions(+), 22 deletions(-) create mode 100644 .changeset/serious-pigs-chew.md diff --git a/.changeset/serious-pigs-chew.md b/.changeset/serious-pigs-chew.md new file mode 100644 index 0000000000..4aec8b20f7 --- /dev/null +++ b/.changeset/serious-pigs-chew.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-mention': patch +'@tiptap/core': patch +--- + +Add 'mentionSuggestionChar' to allowedAttributes for Markdown serialization in multi-mention setups. The attribute is only serialized when it differs from the default '@' character, keeping markdown output clean for single-mention users. diff --git a/demos/src/Markdown/Full/React/content.ts b/demos/src/Markdown/Full/React/content.ts index d342a75304..81f204bbeb 100644 --- a/demos/src/Markdown/Full/React/content.ts +++ b/demos/src/Markdown/Full/React/content.ts @@ -103,7 +103,14 @@ You can learn how to use Tiptap by visiting the [official documentation](https:/ ### Mentions -Hey, [@ id="madonna" label="Madonna"], have you seen [@ id="tom-cruise" label="Tom Cruise"]? +Hey, [@ id="Madonna"], have you seen [@ id="Tom Cruise"]? + +This demo supports **multi-mention** with different trigger characters: + +- User mentions with \`@\`: [@ id="Lea Thompson"] and [@ id="Cyndi Lauper"] +- Tag mentions with \`#\`: [@ id="bug" char="#"] and [@ id="feature" char="#"] + +Try typing \`@\` or \`#\` in the editor to see suggestions! ### Mathematics diff --git a/demos/src/Markdown/Full/React/index.tsx b/demos/src/Markdown/Full/React/index.tsx index 23a2632f70..11aef7fc63 100644 --- a/demos/src/Markdown/Full/React/index.tsx +++ b/demos/src/Markdown/Full/React/index.tsx @@ -107,22 +107,33 @@ export default () => { HTMLAttributes: { class: 'mention', }, - suggestion: { - items: ({ query }) => { - return [ - 'Lea Thompson', - 'Cyndi Lauper', - 'Tom Cruise', - 'Madonna', - 'Jerry Hall', - 'Joan Collins', - 'Winona Ryder', - 'Christina Applegate', - ] - .filter(item => item.toLowerCase().startsWith(query.toLowerCase())) - .slice(0, 5) + suggestions: [ + { + char: '@', + items: ({ query }) => { + return [ + 'Lea Thompson', + 'Cyndi Lauper', + 'Tom Cruise', + 'Madonna', + 'Jerry Hall', + 'Joan Collins', + 'Winona Ryder', + 'Christina Applegate', + ] + .filter(item => item.toLowerCase().startsWith(query.toLowerCase())) + .slice(0, 5) + }, }, - }, + { + char: '#', + items: ({ query }) => { + return ['bug', 'feature', 'enhancement', 'documentation', 'help-wanted', 'priority-high', 'priority-low'] + .filter(item => item.toLowerCase().startsWith(query.toLowerCase())) + .slice(0, 5) + }, + }, + ], }), Mathematics, CustomReactNode, diff --git a/packages/core/src/utilities/markdown/createInlineMarkdownSpec.ts b/packages/core/src/utilities/markdown/createInlineMarkdownSpec.ts index 44d3021d31..a8b5e69aaa 100644 --- a/packages/core/src/utilities/markdown/createInlineMarkdownSpec.ts +++ b/packages/core/src/utilities/markdown/createInlineMarkdownSpec.ts @@ -40,6 +40,23 @@ function serializeShortcodeAttributes(attrs: Record): string { .join(' ') } +/** + * Configuration for an allowed attribute in markdown serialization. + * Can be a simple string (attribute name) or an object with additional options. + */ +export type AllowedAttribute = + | string + | { + /** The attribute name */ + name: string + /** + * If provided, the attribute will be skipped during serialization when its value + * equals this default value. This keeps markdown output clean by omitting + * attributes that have their default values. + */ + skipIfDefault?: any + } + export interface InlineMarkdownSpecOptions { /** The Tiptap node name this spec is for */ nodeName: string @@ -55,8 +72,26 @@ export interface InlineMarkdownSpecOptions { defaultAttributes?: Record /** Whether this is a self-closing shortcode (no content, like [emoji name=party]) */ selfClosing?: boolean - /** Allowlist of attributes to include in markdown (if not provided, all attributes are included) */ - allowedAttributes?: string[] + /** + * Allowlist of attributes to include in markdown serialization. + * If not provided, all attributes are included. + * + * Each item can be either: + * - A string: the attribute name (always included if present) + * - An object: `{ name: string, skipIfDefault?: any }` for conditional inclusion + * + * @example + * // Simple string attributes (backward compatible) + * allowedAttributes: ['id', 'label'] + * + * // Mixed with conditional attributes + * allowedAttributes: [ + * 'id', + * 'label', + * { name: 'mentionSuggestionChar', skipIfDefault: '@' } + * ] + */ + allowedAttributes?: AllowedAttribute[] } /** @@ -130,9 +165,20 @@ export function createInlineMarkdownSpec(options: InlineMarkdownSpecOptions): { } const filtered: Record = {} - allowedAttributes.forEach(key => { - if (key in attrs) { - filtered[key] = attrs[key] + allowedAttributes.forEach(attr => { + // Handle both string and object formats for backward compatibility + const attrName = typeof attr === 'string' ? attr : attr.name + const skipIfDefault = typeof attr === 'string' ? undefined : attr.skipIfDefault + + if (attrName in attrs) { + const value = attrs[attrName] + + // Skip if value equals the default (when skipIfDefault is specified) + if (skipIfDefault !== undefined && value === skipIfDefault) { + return + } + + filtered[attrName] = value } }) return filtered diff --git a/packages/extension-mention/src/mention.ts b/packages/extension-mention/src/mention.ts index 1cca95680a..21be7f4cae 100644 --- a/packages/extension-mention/src/mention.ts +++ b/packages/extension-mention/src/mention.ts @@ -272,7 +272,30 @@ export const Mention = Node.create({ nodeName: 'mention', name: '@', selfClosing: true, - allowedAttributes: ['id', 'label'], + allowedAttributes: ['id', 'label', { name: 'mentionSuggestionChar', skipIfDefault: '@' }], + parseAttributes: (attrString: string) => { + const attrs: Record = {} + const regex = /(\w+)=(?:"([^"]*)"|'([^']*)')/g + let match = regex.exec(attrString) + + while (match !== null) { + const [, key, doubleQuoted, singleQuoted] = match + const value = doubleQuoted ?? singleQuoted + attrs[key === 'char' ? 'mentionSuggestionChar' : key] = value + match = regex.exec(attrString) + } + + return attrs + }, + serializeAttributes: (attrs: Record) => { + return Object.entries(attrs) + .filter(([, value]) => value !== undefined && value !== null) + .map(([key, value]) => { + const serializedKey = key === 'mentionSuggestionChar' ? 'char' : key + return `${serializedKey}="${value}"` + }) + .join(' ') + }, }), renderText({ node }) { diff --git a/packages/markdown/__tests__/utilities.spec.ts b/packages/markdown/__tests__/utilities.spec.ts index 9f9acd7a12..ab676e2168 100644 --- a/packages/markdown/__tests__/utilities.spec.ts +++ b/packages/markdown/__tests__/utilities.spec.ts @@ -128,6 +128,111 @@ describe('Markdown Utilities', () => { const rendered = spec.renderMarkdown(node) expect(rendered).toBe('[highlight color="yellow"]highlighted text[/highlight]') }) + + it('should skip attributes with default values when skipIfDefault is specified', () => { + const spec = createInlineMarkdownSpec({ + nodeName: 'mention', + selfClosing: true, + allowedAttributes: ['id', 'label', { name: 'mentionSuggestionChar', skipIfDefault: '@' }], + }) + + // When mentionSuggestionChar equals the default '@', it should be omitted + const nodeWithDefault = { + attrs: { + id: 'test', + label: 'Test User', + mentionSuggestionChar: '@', + }, + } + + const renderedWithDefault = spec.renderMarkdown(nodeWithDefault) + expect(renderedWithDefault).toBe('[mention id="test" label="Test User"]') + + // When mentionSuggestionChar differs from default, it should be included + const nodeWithNonDefault = { + attrs: { + id: 'bug', + label: 'Bug', + mentionSuggestionChar: '#', + }, + } + + const renderedWithNonDefault = spec.renderMarkdown(nodeWithNonDefault) + expect(renderedWithNonDefault).toBe('[mention id="bug" label="Bug" mentionSuggestionChar="#"]') + }) + + it('should support custom parseAttributes and serializeAttributes for attribute name mapping', () => { + const spec = createInlineMarkdownSpec({ + nodeName: 'mention', + name: '@', + selfClosing: true, + allowedAttributes: ['id', 'label', { name: 'mentionSuggestionChar', skipIfDefault: '@' }], + parseAttributes: (attrString: string) => { + const attrs: Record = {} + const regex = /(\w+)=(?:"([^"]*)"|'([^']*)')/g + let match = regex.exec(attrString) + + while (match !== null) { + const [, key, doubleQuoted, singleQuoted] = match + const value = doubleQuoted ?? singleQuoted + attrs[key === 'char' ? 'mentionSuggestionChar' : key] = value + match = regex.exec(attrString) + } + + return attrs + }, + serializeAttributes: (attrs: Record) => { + return Object.entries(attrs) + .filter(([, value]) => value !== undefined && value !== null) + .map(([key, value]) => { + const serializedKey = key === 'mentionSuggestionChar' ? 'char' : key + return `${serializedKey}="${value}"` + }) + .join(' ') + }, + }) + + // Test serialization: mentionSuggestionChar should be serialized as 'char' + const nodeWithHashChar = { + attrs: { + id: 'bug', + mentionSuggestionChar: '#', + }, + } + + const rendered = spec.renderMarkdown(nodeWithHashChar) + expect(rendered).toBe('[@ id="bug" char="#"]') + + // Test serialization: default '@' should be omitted + const nodeWithDefaultChar = { + attrs: { + id: 'Madonna', + mentionSuggestionChar: '@', + }, + } + + const renderedDefault = spec.renderMarkdown(nodeWithDefaultChar) + expect(renderedDefault).toBe('[@ id="Madonna"]') + + // Test parsing: 'char' should be mapped to 'mentionSuggestionChar' + const token = spec.markdownTokenizer.tokenize('[@ id="feature" char="#"]', [], null as any) + expect(token).toMatchObject({ + type: 'mention', + attributes: { + id: 'feature', + mentionSuggestionChar: '#', + }, + }) + + // Test parsing: without char attribute + const tokenNoChar = spec.markdownTokenizer.tokenize('[@ id="Tom Cruise"]', [], null as any) + expect(tokenNoChar).toMatchObject({ + type: 'mention', + attributes: { + id: 'Tom Cruise', + }, + }) + }) }) describe('createBlockMarkdownSpec', () => { From acdd64fcdb938a2904f2d7cb37e7e66b0d053f72 Mon Sep 17 00:00:00 2001 From: bdbch Date: Fri, 5 Dec 2025 00:24:25 +0100 Subject: [PATCH 546/629] fix(tests): ensure editor is properly destroyed after mark range tests --- packages/core/__tests__/extendMarkRange.spec.ts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packages/core/__tests__/extendMarkRange.spec.ts b/packages/core/__tests__/extendMarkRange.spec.ts index cdcdf74d4b..3c95ac24d7 100644 --- a/packages/core/__tests__/extendMarkRange.spec.ts +++ b/packages/core/__tests__/extendMarkRange.spec.ts @@ -70,6 +70,8 @@ describe('extendMarkRange', () => { } expect({ from, to }).toEqual(expectedSelection) + + editor.destroy() }) it('should extend to mark with specific attributes', () => { @@ -141,6 +143,8 @@ describe('extendMarkRange', () => { } expect({ from, to }).toEqual(expectedSelection) + + editor.destroy() }) it('should not extend at all if selection contains no mark', () => { @@ -206,6 +210,8 @@ describe('extendMarkRange', () => { } expect({ from, to }).toEqual(expectedSelection) + + editor.destroy() }) it('should not extend at all if selection contains any non-matching mark', () => { @@ -277,5 +283,7 @@ describe('extendMarkRange', () => { } expect({ from, to }).toEqual(expectedSelection) + + editor.destroy() }) }) From 9d7ea8d2f9099f4d3ffe5e093beeee72e7c8722e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 5 Dec 2025 12:47:37 +0100 Subject: [PATCH 547/629] chore(release): publish a new release version (#7308) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../add-data-dragging-attribute--swift-fox.md | 8 --- .changeset/olive-cycles-drive.md | 5 -- .changeset/plenty-dancers-listen.md | 5 -- .changeset/rare-clouds-yell.md | 5 -- .changeset/serious-pigs-chew.md | 6 -- .changeset/soft-candles-knock.md | 8 --- CHANGELOG.md | 70 +++++++++++++++++++ .../extension-character-count/CHANGELOG.md | 6 ++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 11 +++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 8 +++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 9 +++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 10 +++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 9 +++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 8 +++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 9 +++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 9 +++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 10 +++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 8 +++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 10 +++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 10 +++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 10 +++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 12 ++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 10 +++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 10 +++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 9 +++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 8 +++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 8 +++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 8 +++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 9 +++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 12 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 10 +++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 8 +++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 10 +++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 9 +++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 9 +++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 11 +++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 9 +++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 8 +++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 8 +++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 9 +++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 9 +++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 10 +++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 9 +++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 8 +++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 8 +++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 8 +++ packages/extension-text/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 8 +++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 8 +++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 9 +++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 8 +++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 9 +++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 9 +++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 10 +++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 9 +++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 32 +++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 9 +++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 9 +++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 9 +++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 9 +++ packages/vue-3/package.json | 2 +- 147 files changed, 740 insertions(+), 107 deletions(-) delete mode 100644 .changeset/add-data-dragging-attribute--swift-fox.md delete mode 100644 .changeset/olive-cycles-drive.md delete mode 100644 .changeset/plenty-dancers-listen.md delete mode 100644 .changeset/rare-clouds-yell.md delete mode 100644 .changeset/serious-pigs-chew.md delete mode 100644 .changeset/soft-candles-knock.md diff --git a/.changeset/add-data-dragging-attribute--swift-fox.md b/.changeset/add-data-dragging-attribute--swift-fox.md deleted file mode 100644 index e4b294bfd6..0000000000 --- a/.changeset/add-data-dragging-attribute--swift-fox.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -"@tiptap/extension-drag-handle": patch -"@tiptap/extension-drag-handle-react": patch -"@tiptap/extension-drag-handle-vue-2": patch -"@tiptap/extension-drag-handle-vue-3": patch ---- - -Added `data-dragging` attribute to drag handle elements to track drag state. diff --git a/.changeset/olive-cycles-drive.md b/.changeset/olive-cycles-drive.md deleted file mode 100644 index 49dcbd1239..0000000000 --- a/.changeset/olive-cycles-drive.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-link': patch ---- - -Ensure `enableClickSelection` works regardless of the `openOnClick` option by always registering the link click handler plugin. \ No newline at end of file diff --git a/.changeset/plenty-dancers-listen.md b/.changeset/plenty-dancers-listen.md deleted file mode 100644 index 08dc3577e2..0000000000 --- a/.changeset/plenty-dancers-listen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-table-of-contents': patch ---- - -Skip the table of contents update logic during IME input method composition to avoid interference with input. diff --git a/.changeset/rare-clouds-yell.md b/.changeset/rare-clouds-yell.md deleted file mode 100644 index a263c4f9c9..0000000000 --- a/.changeset/rare-clouds-yell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/markdown": patch ---- - -Fixed trailing and leading whitespace handling in markdown serialization for inline marks diff --git a/.changeset/serious-pigs-chew.md b/.changeset/serious-pigs-chew.md deleted file mode 100644 index 4aec8b20f7..0000000000 --- a/.changeset/serious-pigs-chew.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-mention': patch -'@tiptap/core': patch ---- - -Add 'mentionSuggestionChar' to allowedAttributes for Markdown serialization in multi-mention setups. The attribute is only serialized when it differs from the default '@' character, keeping markdown output clean for single-mention users. diff --git a/.changeset/soft-candles-knock.md b/.changeset/soft-candles-knock.md deleted file mode 100644 index 7327be3dbe..0000000000 --- a/.changeset/soft-candles-knock.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@tiptap/core': minor -'@tiptap/extension-image': minor ---- - -1. **Added** an optional `createCustomHandle` callback to `ResizableNodeView`, allowing developers to fully customize resize handles. When provided, it replaces the default handle creation and bypasses the built-in `positionHandle` logic, giving complete control over markup, styling, and positioning while preserving backward compatibility. -2. **Removed** predefined inline styles from the `wrapper` element to better support dynamic alignment. This eliminates the need for `!important` overrides in user styles. -3. **Added** an editor `update` event listener to dynamically attach or remove resize handles based on the editor’s editable state. The implementation tracks the previous editable state to avoid unnecessary re-renders. diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a8fa5fc02..c5e2246ddc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,75 @@ # Releases +## v3.13.0 + +### @tiptap/extension-drag-handle + +#### Patch Changes + +- Added `data-dragging` attribute to drag handle elements to track drag state. + +### @tiptap/extension-drag-handle-react + +#### Patch Changes + +- Added `data-dragging` attribute to drag handle elements to track drag state. + +### @tiptap/extension-drag-handle-vue-2 + +#### Patch Changes + +- Added `data-dragging` attribute to drag handle elements to track drag state. + +### @tiptap/extension-drag-handle-vue-3 + +#### Patch Changes + +- Added `data-dragging` attribute to drag handle elements to track drag state. + +### @tiptap/extension-link + +#### Patch Changes + +- Ensure `enableClickSelection` works regardless of the `openOnClick` option by always registering the link click handler plugin. + +### @tiptap/extension-table-of-contents + +#### Patch Changes + +- Skip the table of contents update logic during IME input method composition to avoid interference with input. + +### @tiptap/markdown + +#### Patch Changes + +- Fixed trailing and leading whitespace handling in markdown serialization for inline marks + +### @tiptap/extension-mention + +#### Patch Changes + +- Add 'mentionSuggestionChar' to allowedAttributes for Markdown serialization in multi-mention setups. The attribute is only serialized when it differs from the default '@' character, keeping markdown output clean for single-mention users. + +### @tiptap/core + +#### Minor Changes + +- 1. **Added** an optional `createCustomHandle` callback to `ResizableNodeView`, allowing developers to fully customize resize handles. When provided, it replaces the default handle creation and bypasses the built-in `positionHandle` logic, giving complete control over markup, styling, and positioning while preserving backward compatibility. + 2. **Removed** predefined inline styles from the `wrapper` element to better support dynamic alignment. This eliminates the need for `!important` overrides in user styles. + 3. **Added** an editor `update` event listener to dynamically attach or remove resize handles based on the editor’s editable state. The implementation tracks the previous editable state to avoid unnecessary re-renders. + +#### Patch Changes + +- Add 'mentionSuggestionChar' to allowedAttributes for Markdown serialization in multi-mention setups. The attribute is only serialized when it differs from the default '@' character, keeping markdown output clean for single-mention users. + +### @tiptap/extension-image + +#### Minor Changes + +- 1. **Added** an optional `createCustomHandle` callback to `ResizableNodeView`, allowing developers to fully customize resize handles. When provided, it replaces the default handle creation and bypasses the built-in `positionHandle` logic, giving complete control over markup, styling, and positioning while preserving backward compatibility. + 2. **Removed** predefined inline styles from the `wrapper` element to better support dynamic alignment. This eliminates the need for `!important` overrides in user styles. + 3. **Added** an editor `update` event listener to dynamically attach or remove resize handles based on the editor’s editable state. The implementation tracks the previous editable state to avoid unnecessary re-renders. + ## v3.12.1 ### @tiptap/extension-table-of-contents diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 2c4480441f..37fc961ed9 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extensions@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index d17ea73520..6fcd6b7e8b 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 547121cbb9..a6be083a9b 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extensions@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index b7b1e3cd9f..42db2a1739 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 63fffec7a8..78408735d5 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extensions@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 53c581a4f3..3db0ba3226 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 74bf099608..93c3039594 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extensions@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 1be422746a..16703cda1e 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 821255e8f4..fb7d264c5f 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extensions@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index e80aa949f2..444667f2be 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index bf15d7987a..ba1c63b0ae 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-list@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 1e6bff3de1..6fc329181e 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 5e26c4310e..02fe5e0a97 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-list@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 927c633f8f..8a97340659 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 4b06eb9f90..a64d0b04bd 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extensions@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index d13f54b138..e143999bfd 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index e427019873..221b5281e2 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-table@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index b2e3eb83ee..d355301a69 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index cb01b81b6e..2a06f8ddf3 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-table@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 5100145934..4be1095953 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 7640e80fe3..b6be356ba0 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-table@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index ec45e565d3..24ec6ba516 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 78b84344aa..ba3dbbdd8d 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-list@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index f18c62888c..dae1604992 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index ac850e8a8a..35420fc08f 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-list@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 5c72d07185..b25cc906a3 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index f257d528bc..ba8623e0a7 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.13.0 + +### Minor Changes + +- e3b4f68: 1. **Added** an optional `createCustomHandle` callback to `ResizableNodeView`, allowing developers to fully customize resize handles. When provided, it replaces the default handle creation and bypasses the built-in `positionHandle` logic, giving complete control over markup, styling, and positioning while preserving backward compatibility. 2. **Removed** predefined inline styles from the `wrapper` element to better support dynamic alignment. This eliminates the need for `!important` overrides in user styles. 3. **Added** an editor `update` event listener to dynamically attach or remove resize handles based on the editor’s editable state. The implementation tracks the previous editable state to avoid unnecessary re-renders. + +### Patch Changes + +- 526365a: Add 'mentionSuggestionChar' to allowedAttributes for Markdown serialization in multi-mention setups. The attribute is only serialized when it differs from the default '@' character, keeping markdown output clean for single-mention users. + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index e8cc4e994e..ff8067e41d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 543d9f9445..0bcacc76b2 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index b4546f2b93..e07fa27590 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index b471ae362a..ea109989ca 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 5640c9fc0f..ab4bf3e7fa 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 42514fa61d..6411f943ef 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index d688bb2c7f..5f23775075 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 8118b462c2..23d54af55d 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-list@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 615e0ce006..b9cfc6f2f6 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 8078826127..32521b058c 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/extension-code-block@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index b278f101a3..cb6a20c15e 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 006b3d6edc..fa5f09337f 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index cebc1d6a6f..3e1b09c829 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 9205be5d58..f342e34a93 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index bb08a037f5..ccfb0d7f5c 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 362ebd98ad..882f74a8e7 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 899d772a1b..2f1d6e22eb 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index cf225abbf7..5eafaab661 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index eeb2cf7ba9..8a2e83ce45 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index cb01da4d61..005cedc377 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 9932205ef1..66e928db89 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 933ed0445b..552a561f94 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-details +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/extension-text-style@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index fee52f4879..e93f51c345 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index c3b63633d2..17cd11c9aa 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 1ac0a51f5e..f655768e44 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 5d0dd779c2..fde44c04ff 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-react +## 3.13.0 + +### Patch Changes + +- 286820e: Added `data-dragging` attribute to drag handle elements to track drag state. +- Updated dependencies [286820e] + - @tiptap/extension-drag-handle@3.13.0 + - @tiptap/react@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 79b0813876..17696f4517 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 188d7652aa..e0f4049e9f 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.13.0 + +### Patch Changes + +- 286820e: Added `data-dragging` attribute to drag handle elements to track drag state. +- Updated dependencies [286820e] + - @tiptap/extension-drag-handle@3.13.0 + - @tiptap/vue-2@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 940551998c..5a19366de7 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 8c0a98bea8..740426640e 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.13.0 + +### Patch Changes + +- 286820e: Added `data-dragging` attribute to drag handle elements to track drag state. +- Updated dependencies [286820e] + - @tiptap/extension-drag-handle@3.13.0 + - @tiptap/vue-3@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index a0282ae6d1..c9822afdff 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 31ef60b486..c18e5a16cc 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/extension-drag-handle +## 3.13.0 + +### Patch Changes + +- 286820e: Added `data-dragging` attribute to drag handle elements to track drag state. +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/extension-collaboration@3.13.0 + - @tiptap/extension-node-range@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index f5fce19139..5b642c91b0 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 137d7425f8..61307677a5 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-emoji +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/suggestion@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index bbf272dfdb..581d0fd405 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 87ba86c91b..9f1344efe6 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-file-handler +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/extension-text-style@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 392d99e7e0..5574e505a2 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 1dd3b23715..e7c5af81cf 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index e418f9097d..5f9d0dc510 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 748632df6a..4750d8e60b 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 3a62d71519..f3f2498033 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index b08b9186f7..5169480717 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index c495317fa6..47a16f8497 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 527ebbcf0c..f1cd46e648 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index dc121cd53a..77b6b39550 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index a7363d91cc..96af4d9c58 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 7f1b484d0f..f9154e1b81 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index aa40eb61a0..d2c73b0b0c 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index f0c243e946..0ecb718e9c 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 5086686953..716b0a8b8a 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.13.0 + +### Minor Changes + +- e3b4f68: 1. **Added** an optional `createCustomHandle` callback to `ResizableNodeView`, allowing developers to fully customize resize handles. When provided, it replaces the default handle creation and bypasses the built-in `positionHandle` logic, giving complete control over markup, styling, and positioning while preserving backward compatibility. 2. **Removed** predefined inline styles from the `wrapper` element to better support dynamic alignment. This eliminates the need for `!important` overrides in user styles. 3. **Added** an editor `update` event listener to dynamically attach or remove resize handles based on the editor’s editable state. The implementation tracks the previous editable state to avoid unnecessary re-renders. + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index b72e3c8660..d3584f914a 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 33e7e42c4a..c88ab0c4fe 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-invisible-characters +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/extension-text-style@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index df97f03dab..251732c0b3 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 7388f42240..62d267c74b 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index e011e89f93..2e22186da0 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index ff4b2169b0..fe0c4d93a2 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- fb51a32: Ensure `enableClickSelection` works regardless of the `openOnClick` option by always registering the link click handler plugin. +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 94f3a82dcd..9f476ec7c0 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 3978586188..b0b186a4a5 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 7baa110520..603be936d1 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 84b809121d..cf1680982b 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-mathematics +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index fd46551580..606c1f6b86 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 4ba2ac29f8..cc32534dbe 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- 526365a: Add 'mentionSuggestionChar' to allowedAttributes for Markdown serialization in multi-mention setups. The attribute is only serialized when it differs from the default '@' character, keeping markdown output clean for single-mention users. +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/suggestion@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 6c904f93c4..ed15934c95 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 68001b196c..4d451b860e 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-node-range +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index d70c00a998..b15dcdea95 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index fb80b481ef..d300a0e897 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- @tiptap/extension-list@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index c0a635ada0..b5485e10ad 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 2896a6fd02..774e161d10 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 08b8a5cf0a..02e70a1d58 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 6864c46753..605020bacf 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index e03c566f76..c16067d055 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index db6af82c72..4a0643f293 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index bcf70bf38b..eb797c80e8 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 4d446183c1..87804a1914 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index a0c0a7e379..6da9c97557 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index f91c9c50a0..2af808dbda 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-table-of-contents +## 3.13.0 + +### Patch Changes + +- 18eef0d: Skip the table of contents update logic during IME input method composition to avoid interference with input. +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 59fd111954..576714ee3e 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 4019204401..b372e8a4ed 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index fc5a8cf1bd..2e32a01cf7 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 6e01377e80..cccfb03028 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 15994ddc3e..a5bc15df34 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index a367b4cbc9..c90352c09c 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index f227eefeb8..82bbf36b3d 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 4602d45ef4..4a1db074b1 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index f54b0508bd..45b12d3618 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index cccefc568a..c9abb615f4 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 75fea48707..8d7439f45b 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 53181349da..640f5a8ccb 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index d22666e33e..c92e40a638 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 38ae16ed8d..dccb99e019 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-unique-id +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index becbba7f90..af10708457 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index b83c932117..ab1c0d7728 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 2014f08ed7..bb23fe6742 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 0f67f32203..c3197330c1 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index e5e2d051a1..f417e6b39d 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index fafb16af70..07ec2bdb81 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 6489f69c3b..46c3080897 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 62942799aa..4c5bb92926 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/markdown +## 3.13.0 + +### Patch Changes + +- 7725052: Fixed trailing and leading whitespace handling in markdown serialization for inline marks +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 6e88c0cea0..72bcfdb575 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 1debc8d932..639ecf8bb1 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.13.0 + ## 3.12.1 ## 3.12.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index 3ca94e9115..54b4749813 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 041d63a8ec..d1d9989524 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 67fe743968..2a8e54992c 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 91faa1eab0..3ed557a8b1 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,37 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [fb51a32] +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/extension-link@3.13.0 + - @tiptap/core@3.13.0 + - @tiptap/extension-blockquote@3.13.0 + - @tiptap/extension-bold@3.13.0 + - @tiptap/extension-code@3.13.0 + - @tiptap/extension-code-block@3.13.0 + - @tiptap/extension-document@3.13.0 + - @tiptap/extension-hard-break@3.13.0 + - @tiptap/extension-heading@3.13.0 + - @tiptap/extension-horizontal-rule@3.13.0 + - @tiptap/extension-italic@3.13.0 + - @tiptap/extension-list@3.13.0 + - @tiptap/extension-paragraph@3.13.0 + - @tiptap/extension-strike@3.13.0 + - @tiptap/extension-text@3.13.0 + - @tiptap/extension-underline@3.13.0 + - @tiptap/extensions@3.13.0 + - @tiptap/extension-list-item@3.13.0 + - @tiptap/extension-list-keymap@3.13.0 + - @tiptap/extension-bullet-list@3.13.0 + - @tiptap/extension-ordered-list@3.13.0 + - @tiptap/extension-dropcursor@3.13.0 + - @tiptap/extension-gapcursor@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 96dc0bfdb7..e2baa9d895 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 24c2295be4..e29c8e8bd8 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 334ce1c173..609a060153 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 5cd2750744..6d4a8ed32e 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index c8774ca64d..a4f7fab8f5 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 19b6ec1e44..3e627f2c51 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index e6232906b7..9670ca80b6 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index e4fee13774..b45556e9c1 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.13.0 + +### Patch Changes + +- Updated dependencies [526365a] +- Updated dependencies [e3b4f68] + - @tiptap/core@3.13.0 + - @tiptap/pm@3.13.0 + ## 3.12.1 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index de4914bf29..e8a489436f 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.12.1", + "version": "3.13.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 5717dcf92d52cb548573ebb75ebfbb10ef876661 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 5 Dec 2025 22:34:56 +0100 Subject: [PATCH 548/629] feat(extension): add new Twitch extension for embedding videos, clips, and live channels with customizable options (#7309) * feat(extension): add Twitch embed extension with customizable options and commands * feat(extension): add new Twitch extension for embedding videos, clips, and live channels with customizable options * add changeset and sync lockfile * feat(extension): add Twitch video support with customizable options --- .../add-twitch-extension--vibrant-violin.md | 5 + demos/src/Markdown/Full/React/content.ts | 8 + demos/src/Markdown/Full/React/index.tsx | 7 + demos/src/Nodes/Twitch/React/index.html | 0 demos/src/Nodes/Twitch/React/index.jsx | 122 +++++ demos/src/Nodes/Twitch/React/styles.scss | 25 + demos/src/Nodes/Twitch/Vue/index.html | 0 demos/src/Nodes/Twitch/Vue/index.vue | 135 +++++ packages/extension-twitch/CHANGELOG.md | 7 + packages/extension-twitch/README.md | 18 + .../extension-twitch/__tests__/twitch.spec.ts | 489 ++++++++++++++++++ packages/extension-twitch/package.json | 48 ++ packages/extension-twitch/src/index.ts | 6 + packages/extension-twitch/src/twitch.ts | 257 +++++++++ packages/extension-twitch/src/utils.ts | 213 ++++++++ packages/extension-twitch/tsup.config.ts | 11 + pnpm-lock.yaml | 6 + 17 files changed, 1357 insertions(+) create mode 100644 .changeset/add-twitch-extension--vibrant-violin.md create mode 100644 demos/src/Nodes/Twitch/React/index.html create mode 100644 demos/src/Nodes/Twitch/React/index.jsx create mode 100644 demos/src/Nodes/Twitch/React/styles.scss create mode 100644 demos/src/Nodes/Twitch/Vue/index.html create mode 100644 demos/src/Nodes/Twitch/Vue/index.vue create mode 100644 packages/extension-twitch/CHANGELOG.md create mode 100644 packages/extension-twitch/README.md create mode 100644 packages/extension-twitch/__tests__/twitch.spec.ts create mode 100644 packages/extension-twitch/package.json create mode 100644 packages/extension-twitch/src/index.ts create mode 100644 packages/extension-twitch/src/twitch.ts create mode 100644 packages/extension-twitch/src/utils.ts create mode 100644 packages/extension-twitch/tsup.config.ts diff --git a/.changeset/add-twitch-extension--vibrant-violin.md b/.changeset/add-twitch-extension--vibrant-violin.md new file mode 100644 index 0000000000..d14bbb6a2d --- /dev/null +++ b/.changeset/add-twitch-extension--vibrant-violin.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-twitch": minor +--- + +Add new Twitch extension for embedding Twitch videos, clips, and live channels in the editor. Supports customizable parameters like autoplay, muted, and start time, with attribute-level overrides for per-embed configuration. diff --git a/demos/src/Markdown/Full/React/content.ts b/demos/src/Markdown/Full/React/content.ts index 81f204bbeb..3ed4b81c4e 100644 --- a/demos/src/Markdown/Full/React/content.ts +++ b/demos/src/Markdown/Full/React/content.ts @@ -97,6 +97,14 @@ You can learn how to use Tiptap by visiting the [official documentation](https:/ :::youtube {src="https://www.youtube.com/watch?v=dQw4w9WgXcQ" start="0" width="400" height="300"} ::: +### Twitch Videos + +:::twitch {src="https://www.twitch.tv/videos/2409205759" muted="true"} ::: + +:::twitch {src="https://www.twitch.tv/nasa/clip/CooperativeBrainyJellyfishPJSugar-0TPiyjN_MNkrcErt" muted="true"} ::: + +:::twitch {src="https://www.twitch.tv/LofiGirl" muted="true"} ::: + ### Images ![Random Image](https://unsplash.it/400/600 "Tiptap Editor") diff --git a/demos/src/Markdown/Full/React/index.tsx b/demos/src/Markdown/Full/React/index.tsx index 11aef7fc63..d4d7dd5906 100644 --- a/demos/src/Markdown/Full/React/index.tsx +++ b/demos/src/Markdown/Full/React/index.tsx @@ -9,6 +9,7 @@ import { TaskItem, TaskList } from '@tiptap/extension-list' import { Mathematics } from '@tiptap/extension-mathematics' import { Mention } from '@tiptap/extension-mention' import { TableKit } from '@tiptap/extension-table' +import { Twitch } from '@tiptap/extension-twitch' import { Youtube } from '@tiptap/extension-youtube' import { Markdown } from '@tiptap/markdown' import { EditorContent, NodeViewContent, NodeViewWrapper, ReactNodeViewRenderer, useEditor } from '@tiptap/react' @@ -100,6 +101,12 @@ export default () => { width: 480, height: 320, }), + Twitch.configure({ + inline: false, + width: 480, + height: 320, + parent: window.location.hostname, + }), Image, TableKit, Highlight, diff --git a/demos/src/Nodes/Twitch/React/index.html b/demos/src/Nodes/Twitch/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Nodes/Twitch/React/index.jsx b/demos/src/Nodes/Twitch/React/index.jsx new file mode 100644 index 0000000000..0d715c2878 --- /dev/null +++ b/demos/src/Nodes/Twitch/React/index.jsx @@ -0,0 +1,122 @@ +import './styles.scss' + +import Document from '@tiptap/extension-document' +import Heading from '@tiptap/extension-heading' +import { ListKit } from '@tiptap/extension-list' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import Twitch from '@tiptap/extension-twitch' +import { EditorContent, useEditor } from '@tiptap/react' +import React from 'react' + +const MenuBar = ({ editor }) => { + const [height, setHeight] = React.useState(480) + const [width, setWidth] = React.useState(640) + + if (!editor) { + return null + } + + const addTwitchVideo = () => { + const url = prompt('Enter Twitch video URL') + + if (url) { + editor.commands.setTwitchVideo({ + src: url, + width: Math.max(320, parseInt(width, 10)) || 640, + height: Math.max(180, parseInt(height, 10)) || 480, + }) + } + } + + return ( +
+
+ setWidth(event.target.value)} + /> + setHeight(event.target.value)} + /> + +
+
+ ) +} + +export default () => { + const editor = useEditor({ + extensions: [ + Document, + Heading, + Paragraph, + ListKit, + Text, + Twitch.configure({ + parent: window.location.hostname, + allowFullscreen: true, + }), + ], + content: ` +

Tiptap now supports Twitch embeds! Awesome!

+

It supports

+
    +
  • +

    Different types of content

    +
      +
    • Channels
    • +
    • Videos
    • +
    • & Clips
    • +
    +
  • +
  • +

    Customizable parameters

    +
      +
    • Muted
    • +
    • Autoplay
    • +
    • Start time
    • +
    +
  • +
+

Channel

+
+ +
+

Videos

+
+ +
+

Clips

+
+ +
+ + `, + editorProps: { + attributes: { + spellcheck: 'false', + }, + }, + }) + + return ( + <> + + + + ) +} diff --git a/demos/src/Nodes/Twitch/React/styles.scss b/demos/src/Nodes/Twitch/React/styles.scss new file mode 100644 index 0000000000..01bbbaa280 --- /dev/null +++ b/demos/src/Nodes/Twitch/React/styles.scss @@ -0,0 +1,25 @@ +/* Basic editor styles */ +.tiptap { + :first-child { + margin-top: 0; + } + + /* Twitch embed */ + div[data-twitch-video] { + cursor: move; + padding-right: 1.5rem; + + iframe { + border: 0.5rem solid var(--black-contrast); + display: block; + min-height: 200px; + min-width: 200px; + outline: 0px solid transparent; + } + + &.ProseMirror-selectednode iframe { + outline: 3px solid var(--purple); + transition: outline 0.15s; + } + } +} diff --git a/demos/src/Nodes/Twitch/Vue/index.html b/demos/src/Nodes/Twitch/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Nodes/Twitch/Vue/index.vue b/demos/src/Nodes/Twitch/Vue/index.vue new file mode 100644 index 0000000000..760ba82770 --- /dev/null +++ b/demos/src/Nodes/Twitch/Vue/index.vue @@ -0,0 +1,135 @@ + + + + + diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md new file mode 100644 index 0000000000..8eb61617b4 --- /dev/null +++ b/packages/extension-twitch/CHANGELOG.md @@ -0,0 +1,7 @@ +# @tiptap/extension-twitch + +## 3.0.0 + +### Major Changes + +- Initial release of Twitch extension for Tiptap diff --git a/packages/extension-twitch/README.md b/packages/extension-twitch/README.md new file mode 100644 index 0000000000..132a773a97 --- /dev/null +++ b/packages/extension-twitch/README.md @@ -0,0 +1,18 @@ +# @tiptap/extension-twitch + +[![Version](https://img.shields.io/npm/v/@tiptap/extension-twitch.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-twitch) +[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-twitch.svg)](https://npmcharts.com/compare/@tiptap/extension-twitch?minimal=true) +[![License](https://img.shields.io/npm/l/@tiptap/extension-twitch.svg)](https://www.npmjs.com/package/@tiptap/extension-twitch) +[![Sponsor](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub)](https://github.com/sponsors/ueberdosis) + +## Introduction + +Tiptap is a headless wrapper around [ProseMirror](https://ProseMirror.net) – a toolkit for building rich text WYSIWYG editors, which is already in use at many well-known companies such as _New York Times_, _The Guardian_ or _Atlassian_. + +## Official Documentation + +Documentation can be found on the [Tiptap website](https://tiptap.dev). + +## License + +Tiptap is open sourced software licensed under the [MIT license](https://github.com/ueberdosis/tiptap/blob/main/LICENSE.md). diff --git a/packages/extension-twitch/__tests__/twitch.spec.ts b/packages/extension-twitch/__tests__/twitch.spec.ts new file mode 100644 index 0000000000..1a56f98314 --- /dev/null +++ b/packages/extension-twitch/__tests__/twitch.spec.ts @@ -0,0 +1,489 @@ +import { Editor } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import Twitch from '@tiptap/extension-twitch' +import { describe, expect, it } from 'vitest' + +/** + * Most Twitch tests should actually exist in the demo/ app folder + */ +describe('extension-twitch', () => { + const editorElClass = 'tiptap' + let editor: Editor | null = null + + const createEditorEl = () => { + const editorEl = document.createElement('div') + + editorEl.classList.add(editorElClass) + document.body.appendChild(editorEl) + return editorEl + } + + const getEditorEl = () => document.querySelector(`.${editorElClass}`) + + const invalidUrls = [ + // We have to disable the eslint rule here because we're trying to purposely test eval urls + // eslint-disable-next-line no-script-url + 'javascript:alert(window.origin)//embed/', + 'https://twitch.google.com/videos/1234567890', + 'https://twitch.com.bad/videos/1234567890', + 'https://www.twtich.tv/videos/1234567890', + ] + + invalidUrls.forEach(url => { + it(`does not output html for javascript schema or non-twitch links for url ${url}`, () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Twitch], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: url, + }, + }, + ], + }, + }) + + expect(editor.getHTML()).not.toContain(url) + + editor?.destroy() + getEditorEl()?.remove() + }) + }) + + it('outputs html with iframe for valid twitch video id', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890', + }, + }, + ], + }, + }) + + expect(editor.getHTML()).toContain('player.twitch.tv') + expect(editor.getHTML()).toContain('1234567890') + expect(editor.getHTML()).toContain('example.com') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('outputs html with iframe for twitch clip url', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://clips.twitch.tv/ExampleClipName-ABC123', + }, + }, + ], + }, + }) + + expect(editor.getHTML()).toContain('clips.twitch.tv/embed') + expect(editor.getHTML()).toContain('ExampleClipName-ABC123') + expect(editor.getHTML()).toContain('example.com') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('outputs html with iframe for twitch channel url', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/examplechannel', + }, + }, + ], + }, + }) + + expect(editor.getHTML()).toContain('player.twitch.tv') + expect(editor.getHTML()).toContain('examplechannel') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('respects allowFullscreen option', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + allowFullscreen: true, + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890', + }, + }, + ], + }, + }) + + const html = editor.getHTML() + expect(html).toContain('allowfullscreen="true"') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('respects custom width and height', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + width: 800, + height: 600, + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890', + width: 800, + height: 600, + }, + }, + ], + }, + }) + + const html = editor.getHTML() + expect(html).toContain('width="800"') + expect(html).toContain('height="600"') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('can insert a video using the setTwitchVideo command', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + }), + ], + }) + + editor.commands.setTwitchVideo({ + src: 'https://www.twitch.tv/videos/1234567890', + }) + + expect(editor.getHTML()).toContain('data-twitch-video') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('does not insert video with invalid URL using setTwitchVideo command', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Twitch], + }) + + const result = editor.commands.setTwitchVideo({ + src: 'https://invalid.com/video', + }) + + expect(result).toBe(false) + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('handles video URL with search parameters', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890?filter=archives&sort=time', + }, + }, + ], + }, + }) + + expect(editor.getHTML()).toContain('player.twitch.tv') + expect(editor.getHTML()).toContain('1234567890') + expect(editor.getHTML()).not.toContain('filter=archives') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('handles clip URL with search parameters', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://clips.twitch.tv/ExampleClipName-ABC123?foo=bar&baz=qux', + }, + }, + ], + }, + }) + + expect(editor.getHTML()).toContain('clips.twitch.tv/embed') + expect(editor.getHTML()).toContain('ExampleClipName-ABC123') + expect(editor.getHTML()).not.toContain('foo=bar') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('respects muted option', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + muted: true, + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890', + }, + }, + ], + }, + }) + + const html = editor.getHTML() + expect(html).toContain('muted=true') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('respects time option for videos', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + time: '1h2m3s', + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890', + }, + }, + ], + }, + }) + + const html = editor.getHTML() + expect(html).toContain('time=1h2m3s') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('respects attribute overrides for autoplay', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + autoplay: true, + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890', + autoplay: false, + }, + }, + ], + }, + }) + + const html = editor.getHTML() + // Should NOT have autoplay=true since attribute overrides option + expect(html).not.toContain('autoplay=true') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('respects attribute overrides for muted', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + muted: false, + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890', + muted: true, + }, + }, + ], + }, + }) + + const html = editor.getHTML() + expect(html).toContain('muted=true') + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('respects attribute overrides for time', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Twitch.configure({ + parent: 'example.com', + time: '1h0m0s', + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'twitch', + attrs: { + src: 'https://www.twitch.tv/videos/1234567890', + time: '2h30m15s', + }, + }, + ], + }, + }) + + const html = editor.getHTML() + expect(html).toContain('time=2h30m15s') + expect(html).not.toContain('1h0m0s') + + editor?.destroy() + getEditorEl()?.remove() + }) +}) diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json new file mode 100644 index 0000000000..55ae04eec4 --- /dev/null +++ b/packages/extension-twitch/package.json @@ -0,0 +1,48 @@ +{ + "name": "@tiptap/extension-twitch", + "description": "a twitch embed extension for tiptap", + "version": "3.0.0", + "homepage": "https://tiptap.dev", + "keywords": [ + "tiptap", + "tiptap extension" + ], + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "type": "module", + "exports": { + ".": { + "types": { + "import": "./dist/index.d.ts", + "require": "./dist/index.d.cts" + }, + "import": "./dist/index.js", + "require": "./dist/index.cjs" + } + }, + "main": "dist/index.cjs", + "module": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "src", + "dist" + ], + "devDependencies": { + "@tiptap/core": "workspace:^" + }, + "peerDependencies": { + "@tiptap/core": "workspace:^" + }, + "repository": { + "type": "git", + "url": "https://github.com/ueberdosis/tiptap", + "directory": "packages/extension-twitch" + }, + "scripts": { + "build": "tsup", + "lint": "prettier ./src/ --check && eslint --cache --quiet --no-error-on-unmatched-pattern ./src/" + } +} diff --git a/packages/extension-twitch/src/index.ts b/packages/extension-twitch/src/index.ts new file mode 100644 index 0000000000..1c6a49266e --- /dev/null +++ b/packages/extension-twitch/src/index.ts @@ -0,0 +1,6 @@ +import { Twitch } from './twitch.js' + +export * from './twitch.js' +export * from './utils.js' + +export default Twitch diff --git a/packages/extension-twitch/src/twitch.ts b/packages/extension-twitch/src/twitch.ts new file mode 100644 index 0000000000..489a3bab90 --- /dev/null +++ b/packages/extension-twitch/src/twitch.ts @@ -0,0 +1,257 @@ +import { createAtomBlockMarkdownSpec, mergeAttributes, Node, nodePasteRule } from '@tiptap/core' + +import { getEmbedUrlFromTwitchUrl, isValidTwitchUrl, TWITCH_REGEX_GLOBAL } from './utils.js' + +export interface TwitchOptions { + /** + * Controls if the paste handler for Twitch videos should be added. + * @default true + * @example false + */ + addPasteHandler: boolean + + /** + * Controls if the Twitch video should be allowed to go fullscreen. + * @default true + * @example false + */ + allowFullscreen: boolean + + /** + * Controls if the Twitch video should autoplay. + * @default false + * @example true + */ + autoplay: boolean + + /** + * Controls if the Twitch video should start muted. + * @default false + * @example true + */ + muted: boolean + + /** + * The time in the video where playback starts (format: 1h2m3s). + * Only works for video embeds, not for clips or channels. + * @default undefined + * @example '1h2m3s' + */ + time?: string + + /** + * The parent domain for the Twitch embed. Required for embed functionality. + * @default 'localhost' + * @example 'example.com' + */ + parent: string + + /** + * The height of the Twitch video. + * @default 480 + * @example 720 + */ + height: number + + /** + * The width of the Twitch video. + * @default 640 + * @example 1280 + */ + width: number + + /** + * The HTML attributes for a Twitch video node. + * @default {} + * @example { class: 'foo' } + */ + HTMLAttributes: Record + + /** + * Controls if the Twitch node should be inline or not. + * @default false + * @example true + */ + inline: boolean +} + +/** + * The options for setting a Twitch video. + */ +type SetTwitchVideoOptions = { + src: string + width?: number + height?: number + autoplay?: boolean + muted?: boolean + time?: string +} + +declare module '@tiptap/core' { + interface Commands { + twitch: { + /** + * Insert a Twitch video + * @param options The Twitch video attributes + * @example editor.commands.setTwitchVideo({ src: 'https://www.twitch.tv/videos/1234567890' }) + */ + setTwitchVideo: (options: SetTwitchVideoOptions) => ReturnType + } + } +} + +/** + * This extension adds support for Twitch videos. + * @see https://www.tiptap.dev/api/nodes/twitch + * + * @example + * ```ts + * import { useEditor, EditorContent } from '@tiptap/react' + * import { StarterKit } from '@tiptap/starter-kit' + * import { Twitch } from '@tiptap/extension-twitch' + * + * const editor = useEditor({ + * extensions: [ + * StarterKit, + * Twitch.configure({ + * parent: 'example.com', + * allowFullscreen: true, + * }), + * ], + * content: '

Hello World!

', + * }) + * ``` + */ +export const Twitch = Node.create({ + name: 'twitch', + + addOptions() { + return { + addPasteHandler: true, + allowFullscreen: true, + autoplay: false, + muted: false, + time: undefined, + parent: 'localhost', + height: 480, + width: 640, + HTMLAttributes: {}, + inline: false, + } + }, + + inline() { + return this.options.inline + }, + + group() { + return this.options.inline ? 'inline' : 'block' + }, + + draggable: true, + + addAttributes() { + return { + src: { + default: null, + }, + width: { + default: this.options.width, + }, + height: { + default: this.options.height, + }, + autoplay: { + default: this.options.autoplay, + }, + muted: { + default: this.options.muted, + }, + time: { + default: this.options.time, + }, + } + }, + + parseHTML() { + return [ + { + tag: 'div[data-twitch-video] iframe', + }, + ] + }, + + addCommands() { + return { + setTwitchVideo: + (options: SetTwitchVideoOptions) => + ({ commands }) => { + if (!isValidTwitchUrl(options.src)) { + return false + } + + return commands.insertContent({ + type: this.name, + attrs: options, + }) + }, + } + }, + + addPasteRules() { + if (!this.options.addPasteHandler) { + return [] + } + + return [ + nodePasteRule({ + find: TWITCH_REGEX_GLOBAL, + type: this.type, + getAttributes: match => { + return { src: match.input } + }, + }), + ] + }, + + renderHTML({ HTMLAttributes }) { + const embedUrl = getEmbedUrlFromTwitchUrl({ + url: HTMLAttributes.src, + allowFullscreen: this.options.allowFullscreen, + autoplay: HTMLAttributes.autoplay ?? this.options.autoplay, + muted: HTMLAttributes.muted ?? this.options.muted, + time: HTMLAttributes.time ?? this.options.time, + parent: this.options.parent, + }) + + if (!embedUrl) { + return ['div', 'Invalid Twitch URL'] + } + + HTMLAttributes.src = embedUrl + + return [ + 'div', + { 'data-twitch-video': '' }, + [ + 'iframe', + mergeAttributes( + this.options.HTMLAttributes, + { + width: this.options.width, + height: this.options.height, + allowfullscreen: this.options.allowFullscreen, + scrolling: 'no', + frameborder: '0', + }, + HTMLAttributes, + ), + ], + ] + }, + + ...createAtomBlockMarkdownSpec({ + nodeName: 'twitch', + allowedAttributes: ['src', 'width', 'height', 'autoplay', 'muted', 'time'], + }), +}) diff --git a/packages/extension-twitch/src/utils.ts b/packages/extension-twitch/src/utils.ts new file mode 100644 index 0000000000..7d51f56971 --- /dev/null +++ b/packages/extension-twitch/src/utils.ts @@ -0,0 +1,213 @@ +/** + * Regex patterns for matching Twitch URLs + * Matches: + * - https://twitch.tv/videos/1234567890 + * - https://www.twitch.tv/videos/1234567890 + * - https://twitch.tv/examplechannel/clip/ClipName-123 + * - https://www.twitch.tv/examplechannel/clip/ClipName-123 + * - https://clips.twitch.tv/ClipName + * - https://www.clips.twitch.tv/ClipName + * - https://twitch.tv/examplechannel (channel) + * - https://www.twitch.tv/examplechannel + */ +export const TWITCH_REGEX = + /^(https?:\/\/)?(www\.)?(twitch\.tv|clips\.twitch\.tv)\/(?:videos\/(\d+)|(\w+)\/clip\/([\w-]+)|([\w-]+)(?:\/)?)?(\?.*)?$/ + +export const TWITCH_REGEX_GLOBAL = + /^(https?:\/\/)?(www\.)?(twitch\.tv|clips\.twitch\.tv)\/(?:videos\/(\d+)|(\w+)\/clip\/([\w-]+)|([\w-]+)(?:\/)?)?(\?.*)?$/g + +/** + * Validates if a URL is a valid Twitch video, clip or channel URL + * + * @param url - The URL to validate + * @returns true if the URL is a valid Twitch URL + * + * @example + * ```ts + * isValidTwitchUrl('https://www.twitch.tv/videos/1234567890') // true + * isValidTwitchUrl('https://www.twitch.tv/examplechannel/clip/ExampleClipName') // true + * isValidTwitchUrl('https://www.twitch.tv/examplechannel') // true + * isValidTwitchUrl('https://clips.twitch.tv/ExampleClipName') // true + * isValidTwitchUrl('invalid') // false + * ``` + */ +export const isValidTwitchUrl = (url: string) => { + return url.match(TWITCH_REGEX) +} + +export interface GetEmbedUrlOptions { + url: string + allowFullscreen?: boolean + autoplay?: boolean + muted?: boolean + time?: string + parent?: string +} + +/** + * Extracts the video, clip or channel identifier from a Twitch URL + * + * @param url - The Twitch URL + * @returns Object containing type ('video', 'clip' or 'channel') and ID, or null if invalid + * + * @example + * ```ts + * getTwitchIdentifier('https://www.twitch.tv/videos/1234567890') + * // { type: 'video', id: '1234567890' } + * + * getTwitchIdentifier('https://www.twitch.tv/examplechannel/clip/ExampleClipName-ABC123') + * // { type: 'clip', id: 'ExampleClipName-ABC123' } + * + * getTwitchIdentifier('https://www.twitch.tv/examplechannel') + * // { type: 'channel', id: 'examplechannel' } + * ``` + */ +export const getTwitchIdentifier = (url: string): { type: 'video' | 'clip' | 'channel'; id: string } | null => { + if (!isValidTwitchUrl(url)) { + return null + } + + // Remove query parameters + const cleanUrl = url.split('?')[0] + + // Handle clip URLs from clips.twitch.tv + if (cleanUrl.includes('clips.twitch.tv/')) { + const clipRegex = /clips\.twitch\.tv\/([\w-]+)/ + const match = cleanUrl.match(clipRegex) + return match ? { type: 'clip', id: match[1] } : null + } + + // Handle twitch.tv URLs + if (cleanUrl.includes('twitch.tv/')) { + // Check if it's a video URL (videos/ID) + const videoRegex = /twitch\.tv\/videos\/(\d+)/ + const videoMatch = cleanUrl.match(videoRegex) + if (videoMatch) { + return { type: 'video', id: videoMatch[1] } + } + + // Check if it's a clip URL (channel/clip/clipname) + const channelClipRegex = /twitch\.tv\/([\w-]+)\/clip\/([\w-]+)/ + const clipMatch = cleanUrl.match(channelClipRegex) + if (clipMatch) { + return { type: 'clip', id: clipMatch[2] } + } + + // Otherwise it's a channel URL + const channelRegex = /twitch\.tv\/([\w-]+)(?:\/)?$/ + const channelMatch = cleanUrl.match(channelRegex) + if (channelMatch) { + return { type: 'channel', id: channelMatch[1] } + } + } + + return null +} + +/** + * Generates an embed URL from a Twitch video, clip or channel URL with optional parameters + * + * @param options - The embed URL options + * @returns The embed URL or null if invalid + * + * @example + * ```ts + * getEmbedUrlFromTwitchUrl({ + * url: 'https://www.twitch.tv/videos/1234567890', + * parent: 'example.com', + * muted: true, + * time: '1h2m3s' + * }) + * // Returns: https://player.twitch.tv/?video=1234567890&parent=example.com&muted=true&time=1h2m3s + * + * getEmbedUrlFromTwitchUrl({ + * url: 'https://www.twitch.tv/examplechannel/clip/ExampleClipName-ABC123', + * parent: 'example.com', + * autoplay: true, + * muted: true + * }) + * // Returns: https://clips.twitch.tv/embed?clip=ExampleClipName-ABC123&parent=example.com&autoplay=true&muted=true + * + * getEmbedUrlFromTwitchUrl({ + * url: 'https://www.twitch.tv/examplechannel', + * parent: 'example.com' + * }) + * // Returns: https://player.twitch.tv/?channel=examplechannel&parent=example.com + * ``` + */ +export const getEmbedUrlFromTwitchUrl = (options: GetEmbedUrlOptions): string | null => { + const { url, allowFullscreen = true, autoplay = false, muted = false, time, parent } = options + + const identifier = getTwitchIdentifier(url) + + if (!identifier) { + return null + } + + const parentDomain = parent || 'localhost' + + // Handle clip URLs + if (identifier.type === 'clip') { + const clipUrl = new URL('https://clips.twitch.tv/embed') + clipUrl.searchParams.set('clip', identifier.id) + clipUrl.searchParams.set('parent', parentDomain) + + if (autoplay) { + clipUrl.searchParams.set('autoplay', 'true') + } + + if (muted) { + clipUrl.searchParams.set('muted', 'true') + } + + return clipUrl.toString() + } + + // Handle video URLs + if (identifier.type === 'video') { + const videoUrl = new URL('https://player.twitch.tv/') + videoUrl.searchParams.set('video', identifier.id) + videoUrl.searchParams.set('parent', parentDomain) + + if (allowFullscreen) { + videoUrl.searchParams.set('allowfullscreen', 'true') + } + + if (autoplay) { + videoUrl.searchParams.set('autoplay', 'true') + } + + if (muted) { + videoUrl.searchParams.set('muted', 'true') + } + + if (time) { + videoUrl.searchParams.set('time', time) + } + + return videoUrl.toString() + } + + // Handle channel URLs + if (identifier.type === 'channel') { + const channelUrl = new URL('https://player.twitch.tv/') + channelUrl.searchParams.set('channel', identifier.id) + channelUrl.searchParams.set('parent', parentDomain) + + if (allowFullscreen) { + channelUrl.searchParams.set('allowfullscreen', 'true') + } + + if (autoplay) { + channelUrl.searchParams.set('autoplay', 'true') + } + + if (muted) { + channelUrl.searchParams.set('muted', 'true') + } + + return channelUrl.toString() + } + + return null +} diff --git a/packages/extension-twitch/tsup.config.ts b/packages/extension-twitch/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-twitch/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b18587ba04..0ae109b11e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -854,6 +854,12 @@ importers: specifier: workspace:^ version: link:../core + packages/extension-twitch: + devDependencies: + '@tiptap/core': + specifier: workspace:^ + version: link:../core + packages/extension-typography: devDependencies: '@tiptap/core': From 7495ecc69b19bd3bce3e72da23351803fa7bbaa5 Mon Sep 17 00:00:00 2001 From: Patrick Baber Date: Tue, 9 Dec 2025 13:59:23 +0100 Subject: [PATCH 549/629] add specific npm version to publishing workflow --- .github/workflows/publish.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 4cbf2d5b3f..c96c03b199 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -44,6 +44,9 @@ jobs: node-version: ${{ matrix.node-version }} cache: 'pnpm' + - name: Update npm for Trusted Publishing + run: npm install -g npm@11.6.2 + - name: Load turbo cache uses: actions/cache@v4.3.0 id: turbo-cache From 96e50b32e5930e8da7f74af01f72a06314527a15 Mon Sep 17 00:00:00 2001 From: Patrick Baber Date: Tue, 9 Dec 2025 14:00:20 +0100 Subject: [PATCH 550/629] remove npmrc from publishing workflow --- .github/workflows/publish.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c96c03b199..146f402ace 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -62,9 +62,6 @@ jobs: - name: Install Dependencies run: pnpm install --strict-peer-dependencies - - name: Setup npmrc - run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc - - name: Create Release PR or publish stable version to npm id: changesets uses: changesets/action@v1 From df277af9ab886babd7d132aae844d92c155389f2 Mon Sep 17 00:00:00 2001 From: Aslam Date: Wed, 17 Dec 2025 19:08:30 +0700 Subject: [PATCH 551/629] fix(drag-handle): resolve parent when nodeAt(pos) is null for atom nodes with inline content (#7139) * fix(drag-handle): resolve parent when nodeAt(pos) is null for atom-with-inline When pos maps into an atom node that allows inline content, state.doc.nodeAt(pos) may be null. Resolve the position and return the parent * add changeset --- .changeset/lazy-impalas-burn.md | 6 ++++++ .../src/helpers/findNextElementFromCursor.ts | 13 +++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 .changeset/lazy-impalas-burn.md diff --git a/.changeset/lazy-impalas-burn.md b/.changeset/lazy-impalas-burn.md new file mode 100644 index 0000000000..10bf0bbcc2 --- /dev/null +++ b/.changeset/lazy-impalas-burn.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-drag-handle': patch +--- + +Fix `findElementNextToCoords` to resolve the parent when `nodeAt(pos)` is null +(e.g., inside an atom node that allows inline content) \ No newline at end of file diff --git a/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts b/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts index b14302e856..9009365a21 100644 --- a/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts +++ b/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts @@ -102,6 +102,19 @@ export const findElementNextToCoords = ( const node = state.doc.nodeAt(pos) + if (!node) { + // This case occurs when an atom node is allowed to contain inline content. + // We need to resolve the position here to ensure we target the correct parent node. + const resolvedPos = state.doc.resolve(pos) + const parent = resolvedPos.parent + + return { + resultElement: block, + resultNode: parent, + pos: resolvedPos.start(), + } + } + return { resultElement: block, resultNode: node, From 383145efcd4a4f2959bf88ffdc1b80f4dd0d02b7 Mon Sep 17 00:00:00 2001 From: Jonas Date: Fri, 19 Dec 2025 10:59:40 +0100 Subject: [PATCH 552/629] fix: append all children of editors parent node to element (#7350) Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. Fixes: #7282 Signed-off-by: Jonas --- .changeset/funky-geese-hammer.md | 9 +++++++++ packages/react/src/EditorContent.tsx | 8 ++++---- packages/vue-2/src/EditorContent.ts | 8 ++++---- packages/vue-3/src/EditorContent.ts | 4 ++-- packages/vue-3/src/useEditor.ts | 2 +- 5 files changed, 20 insertions(+), 11 deletions(-) create mode 100644 .changeset/funky-geese-hammer.md diff --git a/.changeset/funky-geese-hammer.md b/.changeset/funky-geese-hammer.md new file mode 100644 index 0000000000..d3bc3da734 --- /dev/null +++ b/.changeset/funky-geese-hammer.md @@ -0,0 +1,9 @@ +--- +'@tiptap/react': patch +'@tiptap/vue-2': patch +'@tiptap/vue-3': patch +--- + +Append all children of editors parent node to element + +Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. diff --git a/packages/react/src/EditorContent.tsx b/packages/react/src/EditorContent.tsx index 733fddf75a..a86aa28817 100644 --- a/packages/react/src/EditorContent.tsx +++ b/packages/react/src/EditorContent.tsx @@ -114,14 +114,14 @@ export class PureEditorContent extends React.Component< init() { const editor = this.props.editor as EditorWithContentComponent | null - if (editor && !editor.isDestroyed && editor.options.element) { + if (editor && !editor.isDestroyed && editor.view.dom?.parentNode) { if (editor.contentComponent) { return } const element = this.editorContentRef.current - element.append(editor.view.dom) + element.append(...editor.view.dom.parentNode.childNodes) editor.setOptions({ element, @@ -179,14 +179,14 @@ export class PureEditorContent extends React.Component< // try to reset the editor element // may fail if this editor's view.dom was never initialized/mounted yet try { - if (!editor.view.dom?.firstChild) { + if (!editor.view.dom?.parentNode) { return } // TODO using the new editor.mount method might allow us to remove this const newElement = document.createElement('div') - newElement.append(editor.view.dom) + newElement.append(...editor.view.dom.parentNode.childNodes) editor.setOptions({ element: newElement, diff --git a/packages/vue-2/src/EditorContent.ts b/packages/vue-2/src/EditorContent.ts index 7a28dde3ac..66ba23424b 100644 --- a/packages/vue-2/src/EditorContent.ts +++ b/packages/vue-2/src/EditorContent.ts @@ -25,11 +25,11 @@ export const EditorContent: Component = { this.$nextTick(() => { const element = this.$el - if (!element || !editor.view.dom?.firstChild) { + if (!element || !editor.view.dom?.parentNode) { return } - element.append(editor.view.dom) + element.append(...editor.view.dom.parentNode.childNodes) editor.contentComponent = this editor.setOptions({ @@ -62,14 +62,14 @@ export const EditorContent: Component = { editor.contentComponent = null - if (!editor.view.dom?.firstChild) { + if (!editor.view.dom?.parentNode) { return } // TODO using the new editor.mount method might allow us to remove this const newElement = document.createElement('div') - newElement.append(editor.view.dom) + newElement.append(...editor.view.dom.parentNode.childNodes) editor.setOptions({ element: newElement, diff --git a/packages/vue-3/src/EditorContent.ts b/packages/vue-3/src/EditorContent.ts index 3d25fc31ec..051b482902 100644 --- a/packages/vue-3/src/EditorContent.ts +++ b/packages/vue-3/src/EditorContent.ts @@ -22,14 +22,14 @@ export const EditorContent = defineComponent({ if (editor && editor.options.element && rootEl.value) { nextTick(() => { - if (!rootEl.value || !editor.view.dom?.firstChild) { + if (!rootEl.value || !editor.view.dom?.parentNode) { return } // TODO using the new editor.mount method might allow us to remove this const element = unref(rootEl.value) - rootEl.value.append(editor.view.dom) + rootEl.value.append(...editor.view.dom.parentNode.childNodes) // @ts-ignore editor.contentComponent = instance.ctx._ diff --git a/packages/vue-3/src/useEditor.ts b/packages/vue-3/src/useEditor.ts index ad7b6f5fcd..097ae8c0ef 100644 --- a/packages/vue-3/src/useEditor.ts +++ b/packages/vue-3/src/useEditor.ts @@ -12,7 +12,7 @@ export const useEditor = (options: Partial = {}) => { onBeforeUnmount(() => { // Cloning root node (and its children) to avoid content being lost by destroy - const nodes = editor.value?.view.dom + const nodes = editor.value?.view.dom?.parentNode const newEl = nodes?.cloneNode(true) as HTMLElement nodes?.parentNode?.replaceChild(newEl, nodes) From 1ea0133882b592fbb525c1957dbe65b0eca35953 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 19 Dec 2025 11:13:19 +0100 Subject: [PATCH 553/629] chore(release): publish a new release version (#7354) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../add-twitch-extension--vibrant-violin.md | 5 --- .changeset/funky-geese-hammer.md | 9 ----- .changeset/lazy-impalas-burn.md | 6 --- CHANGELOG.md | 39 +++++++++++++++++++ .../extension-character-count/CHANGELOG.md | 6 +++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 +++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 +++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 +++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 +++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 +++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 +++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 +++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 +++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 +++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 +++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 +++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 +++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 +++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 +++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 +++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 ++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 +++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 ++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 ++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 +++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 ++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 ++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 +++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 ++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 +++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 10 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 10 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 10 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 11 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 ++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 ++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 ++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 +++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 +++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 +++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 +++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 ++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 +++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 ++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 +++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 ++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 ++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 ++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 ++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 ++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 +++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 +++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 +++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 ++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 ++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 ++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 ++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 +++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 +++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 +++ packages/extension-text/package.json | 2 +- packages/extension-twitch/CHANGELOG.md | 10 +++++ packages/extension-twitch/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 +++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 +++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 ++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 +++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 ++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 ++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 7 ++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 11 ++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 ++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 ++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 ++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 11 ++++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 11 ++++++ packages/vue-3/package.json | 2 +- 146 files changed, 623 insertions(+), 91 deletions(-) delete mode 100644 .changeset/add-twitch-extension--vibrant-violin.md delete mode 100644 .changeset/funky-geese-hammer.md delete mode 100644 .changeset/lazy-impalas-burn.md diff --git a/.changeset/add-twitch-extension--vibrant-violin.md b/.changeset/add-twitch-extension--vibrant-violin.md deleted file mode 100644 index d14bbb6a2d..0000000000 --- a/.changeset/add-twitch-extension--vibrant-violin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-twitch": minor ---- - -Add new Twitch extension for embedding Twitch videos, clips, and live channels in the editor. Supports customizable parameters like autoplay, muted, and start time, with attribute-level overrides for per-embed configuration. diff --git a/.changeset/funky-geese-hammer.md b/.changeset/funky-geese-hammer.md deleted file mode 100644 index d3bc3da734..0000000000 --- a/.changeset/funky-geese-hammer.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'@tiptap/react': patch -'@tiptap/vue-2': patch -'@tiptap/vue-3': patch ---- - -Append all children of editors parent node to element - -Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. diff --git a/.changeset/lazy-impalas-burn.md b/.changeset/lazy-impalas-burn.md deleted file mode 100644 index 10bf0bbcc2..0000000000 --- a/.changeset/lazy-impalas-burn.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-drag-handle': patch ---- - -Fix `findElementNextToCoords` to resolve the parent when `nodeAt(pos)` is null -(e.g., inside an atom node that allows inline content) \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index c5e2246ddc..5394860b72 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,44 @@ # Releases +## v3.14.0 + +### @tiptap/extension-twitch + +#### Minor Changes + +- Add new Twitch extension for embedding Twitch videos, clips, and live channels in the editor. Supports customizable parameters like autoplay, muted, and start time, with attribute-level overrides for per-embed configuration. + +### @tiptap/react + +#### Patch Changes + +- Append all children of editors parent node to element + + Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. + +### @tiptap/vue-2 + +#### Patch Changes + +- Append all children of editors parent node to element + + Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. + +### @tiptap/vue-3 + +#### Patch Changes + +- Append all children of editors parent node to element + + Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. + +### @tiptap/extension-drag-handle + +#### Patch Changes + +- Fix `findElementNextToCoords` to resolve the parent when `nodeAt(pos)` is null + (e.g., inside an atom node that allows inline content) + ## v3.13.0 ### @tiptap/extension-drag-handle diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 37fc961ed9..ad557d5643 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extensions@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 6fcd6b7e8b..45e9c41afb 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index a6be083a9b..099e607400 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extensions@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 42db2a1739..fef19a27ae 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 78408735d5..aa6bbc5516 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extensions@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 3db0ba3226..a27b573f2b 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 93c3039594..8c5b325ea9 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extensions@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 16703cda1e..8b84d07e2c 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index fb7d264c5f..5ba6792562 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extensions@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 444667f2be..6fda4b82e2 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index ba1c63b0ae..aa0aaae6bf 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-list@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 6fc329181e..03506f5853 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 02fe5e0a97..920efee7fe 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-list@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 8a97340659..6193ae9d6a 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index a64d0b04bd..f383ffcf90 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extensions@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index e143999bfd..2ba5856e53 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 221b5281e2..3891c5aa82 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-table@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index d355301a69..068c883f91 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 2a06f8ddf3..7d82f0251d 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-table@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 4be1095953..a32726f2e3 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index b6be356ba0..e1141285a4 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-table@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 24ec6ba516..0801beab87 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index ba3dbbdd8d..0dae63cfcb 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-list@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index dae1604992..159cd10fc4 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 35420fc08f..bd860ba003 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-list@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index b25cc906a3..e8eb7898fb 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index ba8623e0a7..278abf128e 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index ff8067e41d..4a4922f9a6 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 0bcacc76b2..3ce0911707 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index e07fa27590..6853f670d8 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index ea109989ca..ddb61729ce 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index ab4bf3e7fa..c76cc92a25 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 6411f943ef..c469df3f8b 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 5f23775075..8488d917cc 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 23d54af55d..90ead6d664 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-list@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index b9cfc6f2f6..78afc4b541 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 32521b058c..f2526670d8 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/extension-code-block@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index cb6a20c15e..f7ae219d88 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index fa5f09337f..90163a17f3 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 3e1b09c829..28a9bf6515 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index f342e34a93..a6a29e277c 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index ccfb0d7f5c..3596273493 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 882f74a8e7..89037bd414 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 2f1d6e22eb..61ce696edb 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 5eafaab661..30537323e1 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 8a2e83ce45..32c1e9af59 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 005cedc377..240be0bdab 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 66e928db89..225270a0c2 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 552a561f94..0115c3f14b 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/extension-text-style@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index e93f51c345..486fcf0004 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 17cd11c9aa..f5082fe080 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index f655768e44..b47aec7acb 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index fde44c04ff..9f2625ae29 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-react +## 3.14.0 + +### Patch Changes + +- Updated dependencies [383145e] +- Updated dependencies [df277af] + - @tiptap/react@3.14.0 + - @tiptap/extension-drag-handle@3.14.0 + - @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 17696f4517..0ef509c38f 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index e0f4049e9f..d9c2cf10d4 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.14.0 + +### Patch Changes + +- Updated dependencies [383145e] +- Updated dependencies [df277af] + - @tiptap/vue-2@3.14.0 + - @tiptap/extension-drag-handle@3.14.0 + - @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 5a19366de7..b7d91d96b0 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 740426640e..4b05864482 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.14.0 + +### Patch Changes + +- Updated dependencies [383145e] +- Updated dependencies [df277af] + - @tiptap/vue-3@3.14.0 + - @tiptap/extension-drag-handle@3.14.0 + - @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index c9822afdff..22e6ea0045 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index c18e5a16cc..ceb4dfefd0 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-drag-handle +## 3.14.0 + +### Patch Changes + +- df277af: Fix `findElementNextToCoords` to resolve the parent when `nodeAt(pos)` is null + (e.g., inside an atom node that allows inline content) + - @tiptap/core@3.14.0 + - @tiptap/extension-collaboration@3.14.0 + - @tiptap/extension-node-range@3.14.0 + - @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 5b642c91b0..226c8e86f5 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 61307677a5..a12cbbacba 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 +- @tiptap/suggestion@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 581d0fd405..9de4d3235e 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 9f1344efe6..7af134c09c 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/extension-text-style@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 5574e505a2..038b36a14d 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index e7c5af81cf..59790214e6 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 5f9d0dc510..b9fd7e9e64 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 4750d8e60b..7727670f8c 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index f3f2498033..1c348fd950 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 5169480717..b9dcf925e6 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 47a16f8497..d1549e3c38 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index f1cd46e648..f973fbfeba 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 77b6b39550..46073aaee9 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 96af4d9c58..8d0ce82dfe 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index f9154e1b81..aa0b7e0b60 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index d2c73b0b0c..13048fb604 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 0ecb718e9c..67fe6e10b8 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 716b0a8b8a..5b6a0c1395 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Minor Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index d3584f914a..4505f6ad29 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index c88ab0c4fe..8078b4b630 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/extension-text-style@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 251732c0b3..52df3bf147 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 62d267c74b..2f8e1eab11 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 2e22186da0..edd5e7466f 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index fe0c4d93a2..b44edad281 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 9f476ec7c0..3bd34a83c3 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index b0b186a4a5..4a3b2ef81b 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 603be936d1..7ea8e23d01 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index cf1680982b..35f6977218 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 606c1f6b86..0232de93c2 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index cc32534dbe..5b67ad37fc 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 +- @tiptap/suggestion@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index ed15934c95..86ac3f6d38 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 4d451b860e..f41b2b1720 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index b15dcdea95..901e761d7d 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index d300a0e897..a78f377a40 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-list@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index b5485e10ad..b0ab1b4d79 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 774e161d10..fc4500eef5 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 02e70a1d58..e9eed3b414 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 605020bacf..b3af465ba6 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index c16067d055..2856f569eb 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 4a0643f293..7667a64776 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index eb797c80e8..477bf5d259 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 87804a1914..6114dbc804 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 6da9c97557..902aab59b0 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 2af808dbda..42fc3ff209 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 576714ee3e..9801c4fe61 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index b372e8a4ed..00eb4d8121 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 2e32a01cf7..c61078e9d4 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index cccfb03028..a014e6d0d1 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index a5bc15df34..c2bda5ac75 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index c90352c09c..a9e6d76f8c 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 82bbf36b3d..d6ed471f09 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 4a1db074b1..e02f36d9da 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 45b12d3618..8583586597 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md index 8eb61617b4..6377b028ca 100644 --- a/packages/extension-twitch/CHANGELOG.md +++ b/packages/extension-twitch/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-twitch +## 3.14.0 + +### Minor Changes + +- 5717dcf: Add new Twitch extension for embedding Twitch videos, clips, and live channels in the editor. Supports customizable parameters like autoplay, muted, and start time, with attribute-level overrides for per-embed configuration. + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.0.0 ### Major Changes diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json index 55ae04eec4..788fb26f0c 100644 --- a/packages/extension-twitch/package.json +++ b/packages/extension-twitch/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-twitch", "description": "a twitch embed extension for tiptap", - "version": "3.0.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index c9abb615f4..eb93185465 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 8d7439f45b..f2f06b53ad 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 640f5a8ccb..1687074afe 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index c92e40a638..ea76b7541d 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index dccb99e019..d7d484577f 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index af10708457..6af893d2c5 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index ab1c0d7728..bbaa7235bd 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index bb23fe6742..591efa92fb 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index c3197330c1..228642102c 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index f417e6b39d..847f1e53a6 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 07ec2bdb81..225bb46e13 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 46c3080897..e597deedf6 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 4c5bb92926..512220e94c 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/markdown +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 72bcfdb575..46dc315a0b 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 639ecf8bb1..ff5b6d4c1b 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.14.0 + ## 3.13.0 ## 3.12.1 diff --git a/packages/pm/package.json b/packages/pm/package.json index 54b4749813..bf56668226 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index d1d9989524..da5b1fd9fb 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- 383145e: Append all children of editors parent node to element + + Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. + + - @tiptap/core@3.14.0 + - @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 2a8e54992c..940772f8e2 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 3ed557a8b1..39cd3d9dba 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.14.0 +- @tiptap/extension-gapcursor@3.14.0 +- @tiptap/extension-list-item@3.14.0 +- @tiptap/extension-list-keymap@3.14.0 +- @tiptap/core@3.14.0 +- @tiptap/extension-blockquote@3.14.0 +- @tiptap/extension-bold@3.14.0 +- @tiptap/extension-bullet-list@3.14.0 +- @tiptap/extension-code@3.14.0 +- @tiptap/extension-code-block@3.14.0 +- @tiptap/extension-document@3.14.0 +- @tiptap/extension-hard-break@3.14.0 +- @tiptap/extension-heading@3.14.0 +- @tiptap/extension-horizontal-rule@3.14.0 +- @tiptap/extension-italic@3.14.0 +- @tiptap/extension-link@3.14.0 +- @tiptap/extension-list@3.14.0 +- @tiptap/extension-ordered-list@3.14.0 +- @tiptap/extension-paragraph@3.14.0 +- @tiptap/extension-strike@3.14.0 +- @tiptap/extension-text@3.14.0 +- @tiptap/extension-underline@3.14.0 +- @tiptap/extensions@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index e2baa9d895..627735ab3d 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index e29c8e8bd8..2383147baa 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 609a060153..e2a2da3259 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 6d4a8ed32e..e308580f61 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- @tiptap/core@3.14.0 +- @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index a4f7fab8f5..29e7ab599c 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 3e627f2c51..1c1ab3adfc 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- 383145e: Append all children of editors parent node to element + + Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. + + - @tiptap/core@3.14.0 + - @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 9670ca80b6..28df68a9c4 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index b45556e9c1..3b2bac7010 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.14.0 + +### Patch Changes + +- 383145e: Append all children of editors parent node to element + + Fixes a regression introduced by #6972, that resulted in elements that got appended to the editors parent node staying detached. E.g. the drag handle plugin is affected by this regression. + + - @tiptap/core@3.14.0 + - @tiptap/pm@3.14.0 + ## 3.13.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index e8a489436f..b929612b8e 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.13.0", + "version": "3.14.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From c5cbea624bac8955bf6a25eb10f0dc143063d1c5 Mon Sep 17 00:00:00 2001 From: amarnath-memfold Date: Mon, 22 Dec 2025 13:39:30 +0530 Subject: [PATCH 554/629] fix(extension-unique-id): check next node attribute before transaction modification (#7311) Co-authored-by: Amarnath Prasad --- .changeset/fix-unique-id-empty-node-check.md | 5 +++++ packages/extension-unique-id/src/unique-id.ts | 9 +++++---- 2 files changed, 10 insertions(+), 4 deletions(-) create mode 100644 .changeset/fix-unique-id-empty-node-check.md diff --git a/.changeset/fix-unique-id-empty-node-check.md b/.changeset/fix-unique-id-empty-node-check.md new file mode 100644 index 0000000000..fc70c597a6 --- /dev/null +++ b/.changeset/fix-unique-id-empty-node-check.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-unique-id": patch +--- + +Fix unique ID assignment when handling empty nodes by checking next node's attribute state in the transaction document before modifying it, preventing incorrect ID assignments. diff --git a/packages/extension-unique-id/src/unique-id.ts b/packages/extension-unique-id/src/unique-id.ts index 136fdb2315..3d72f7c6fe 100644 --- a/packages/extension-unique-id/src/unique-id.ts +++ b/packages/extension-unique-id/src/unique-id.ts @@ -201,16 +201,17 @@ export const UniqueID = Extension.create({ const nextNode = newNodes[i + 1] if (nextNode && node.content.size === 0) { + const nextNodeInTr = tr.doc.nodeAt(nextNode.pos) + if (nextNodeInTr?.attrs[attributeName] && nextNodeInTr.attrs[attributeName] !== id) { + return + } + tr.setNodeMarkup(nextNode.pos, undefined, { ...nextNode.node.attrs, [attributeName]: id, }) newIds[i + 1] = id - if (nextNode.node.attrs[attributeName]) { - return - } - const generatedId = generateID({ node, pos }) tr.setNodeMarkup(pos, undefined, { From b4db352f839e1d82f9add6ee7fb45561336286d8 Mon Sep 17 00:00:00 2001 From: bdbch Date: Mon, 5 Jan 2026 16:25:26 +0100 Subject: [PATCH 555/629] update gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index f63c1ff75c..6b82d5bc23 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,7 @@ dist .eslintcache .instructions +.agent # Log files npm-debug.log* From ac8361c710a6a1d1b89dd2eef58b6ee5d1a1e538 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Mon, 5 Jan 2026 20:16:08 +0100 Subject: [PATCH 556/629] dispatchTransaction in extensions (#7382) * feat: Add a `dispatchTransaction` hook to extensions for intercepting and modifying ProseMirror transactions. * Added docs to gitignore --- ...ch-transaction-hook-joyful-leaping-lynx.md | 5 + .gitignore | 2 + .../__tests__/dispatchTransaction.spec.ts | 110 ++++++++++++++++++ packages/core/src/Editor.ts | 16 ++- packages/core/src/Extendable.ts | 28 +++++ packages/core/src/ExtensionManager.ts | 36 +++++- packages/core/src/types.ts | 28 +++++ 7 files changed, 221 insertions(+), 4 deletions(-) create mode 100644 .changeset/add-dispatch-transaction-hook-joyful-leaping-lynx.md create mode 100644 packages/core/__tests__/dispatchTransaction.spec.ts diff --git a/.changeset/add-dispatch-transaction-hook-joyful-leaping-lynx.md b/.changeset/add-dispatch-transaction-hook-joyful-leaping-lynx.md new file mode 100644 index 0000000000..2a572767a2 --- /dev/null +++ b/.changeset/add-dispatch-transaction-hook-joyful-leaping-lynx.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": minor +--- + +Add a new `dispatchTransaction` hook to extensions, allowing developers to intercept, modify, or block transactions before they are applied to the editor state. diff --git a/.gitignore b/.gitignore index 6b82d5bc23..ed4df01ce8 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,8 @@ dist .instructions .agent +docs + # Log files npm-debug.log* yarn-debug.log* diff --git a/packages/core/__tests__/dispatchTransaction.spec.ts b/packages/core/__tests__/dispatchTransaction.spec.ts new file mode 100644 index 0000000000..7add660446 --- /dev/null +++ b/packages/core/__tests__/dispatchTransaction.spec.ts @@ -0,0 +1,110 @@ +import { Editor, Extension } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { describe, expect, it, vi } from 'vitest' + +describe('dispatchTransaction', () => { + it('should call dispatchTransaction from an extension', () => { + const dispatchTransaction = vi.fn(({ transaction, next }) => next(transaction)) + const CustomExtension = Extension.create({ + name: 'custom', + dispatchTransaction, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomExtension], + }) + + editor.commands.insertContent('foo') + + expect(dispatchTransaction).toHaveBeenCalled() + }) + + it('should call multiple dispatchTransaction hooks in priority order', () => { + const order: string[] = [] + const Extension1 = Extension.create({ + name: 'extension1', + priority: 10, + dispatchTransaction({ transaction, next }) { + order.push('extension1') + next(transaction) + }, + }) + const Extension2 = Extension.create({ + name: 'extension2', + priority: 20, + dispatchTransaction({ transaction, next }) { + order.push('extension2') + next(transaction) + }, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, Extension1, Extension2], + }) + + editor.commands.insertContent('foo') + + expect(order).toEqual(['extension2', 'extension1']) + }) + + it('should block transaction if next is not called', () => { + const Extension1 = Extension.create({ + name: 'extension1', + dispatchTransaction() { + // do nothing + }, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, Extension1], + }) + + editor.commands.insertContent('foo') + + expect(editor.getText()).toBe('') + }) + + it('should allow user-provided dispatchTransaction as base', () => { + const userDispatch = vi.fn(_tr => { + // In a real scenario, the user would update the view state here. + // For this test, we just want to see if it's called. + }) + + const Extension1 = Extension.create({ + name: 'extension1', + dispatchTransaction({ transaction, next }) { + next(transaction) + }, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, Extension1], + editorProps: { + dispatchTransaction: userDispatch, + } as any, + }) + + editor.commands.insertContent('foo') + + expect(userDispatch).toHaveBeenCalled() + }) + + it('should bypass extensions if enableExtensionDispatchTransaction is false', () => { + const dispatchTransaction = vi.fn(({ transaction, next }) => next(transaction)) + const CustomExtension = Extension.create({ + name: 'custom', + dispatchTransaction, + }) + + const editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomExtension], + enableExtensionDispatchTransaction: false, + }) + + editor.commands.insertContent('foo') + + expect(dispatchTransaction).not.toHaveBeenCalled() + }) +}) diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 27e364fca5..2fc913960e 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -115,6 +115,7 @@ export class Editor extends EventEmitter { onPaste: () => null, onDrop: () => null, onDelete: () => null, + enableExtensionDispatchTransaction: true, } constructor(options: Partial = {}) { @@ -518,14 +519,23 @@ export class Editor extends EventEmitter { * Creates a ProseMirror view. */ private createView(element: NonNullable): void { + const { editorProps, enableExtensionDispatchTransaction } = this.options + // If a user provided a custom `dispatchTransaction` through `editorProps`, + // we use that as the base dispatch function. + // Otherwise, we use Tiptap's internal `dispatchTransaction` method. + const baseDispatch = (editorProps as any).dispatchTransaction || this.dispatchTransaction.bind(this) + const dispatch = enableExtensionDispatchTransaction + ? this.extensionManager.dispatchTransaction(baseDispatch) + : baseDispatch + this.editorView = new EditorView(element, { - ...this.options.editorProps, + ...editorProps, attributes: { // add `role="textbox"` to the editor element role: 'textbox', - ...this.options.editorProps?.attributes, + ...editorProps?.attributes, }, - dispatchTransaction: this.dispatchTransaction.bind(this), + dispatchTransaction: dispatch, state: this.editorState, markViews: this.extensionManager.markViews, nodeViews: this.extensionManager.nodeViews, diff --git a/packages/core/src/Extendable.ts b/packages/core/src/Extendable.ts index 6a4080c084..a2062474da 100644 --- a/packages/core/src/Extendable.ts +++ b/packages/core/src/Extendable.ts @@ -9,6 +9,7 @@ import type { Node } from './Node.js' import type { PasteRule } from './PasteRule.js' import type { AnyConfig, + DispatchTransactionProps, EditorEvents, Extensions, GlobalAttributes, @@ -447,6 +448,33 @@ export interface ExtendableConfig< event: EditorEvents['destroy'], ) => void) | null + + /** + * This hook allows you to intercept and modify transactions before they are dispatched. + * + * Example + * ```ts + * dispatchTransaction({ transaction, next }) { + * console.log('Dispatching transaction:', transaction) + * next(transaction) + * } + * ``` + * + * @param props - The dispatch transaction props + */ + dispatchTransaction?: + | (( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: PMType + parent: ParentConfig['dispatchTransaction'] + }, + props: DispatchTransactionProps, + ) => void) + | null } export class Extendable< diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts index f28185d748..ac4c96c9ee 100644 --- a/packages/core/src/ExtensionManager.ts +++ b/packages/core/src/ExtensionManager.ts @@ -1,6 +1,6 @@ import { keymap } from '@tiptap/pm/keymap' import type { Schema } from '@tiptap/pm/model' -import type { Plugin } from '@tiptap/pm/state' +import type { Plugin, Transaction } from '@tiptap/pm/state' import type { MarkViewConstructor, NodeViewConstructor } from '@tiptap/pm/view' import type { Editor } from './Editor.js' @@ -243,6 +243,40 @@ export class ExtensionManager { ) } + /** + * Get the composed dispatchTransaction function from all extensions. + * @param baseDispatch The base dispatch function (e.g. from the editor or user props) + * @returns A composed dispatch function + */ + dispatchTransaction(baseDispatch: (tr: Transaction) => void): (tr: Transaction) => void { + const { editor } = this + const extensions = sortExtensions([...this.extensions].reverse()) + + return extensions.reduceRight((next, extension) => { + const context = { + name: extension.name, + options: extension.options, + storage: this.editor.extensionStorage[extension.name as keyof Storage], + editor, + type: getSchemaTypeByName(extension.name, this.schema), + } + + const dispatchTransaction = getExtensionField( + extension, + 'dispatchTransaction', + context, + ) + + if (!dispatchTransaction) { + return next + } + + return (transaction: Transaction) => { + dispatchTransaction.call(context, { transaction, next }) + } + }, baseDispatch) + } + get markViews(): Record { const { editor } = this const { markExtensions } = splitExtensions(this.extensions) diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 67aff28370..4e4dfa64eb 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -264,6 +264,23 @@ export interface EditorEvents { ) } +/** + * Props passed to the `dispatchTransaction` hook in extensions. + */ +export type DispatchTransactionProps = { + /** + * The transaction that is about to be dispatched. + */ + transaction: Transaction + /** + * A function that should be called to pass the transaction down to the next extension + * (or eventually to the editor). + * + * @param transaction The transaction to dispatch + */ + next: (transaction: Transaction) => void +} + export type EnableRules = (AnyExtension | string)[] | boolean export interface EditorOptions { @@ -450,6 +467,17 @@ export interface EditorOptions { * Called when content is deleted from the editor. */ onDelete: (props: EditorEvents['delete']) => void + /** + * Whether to enable extension-level dispatching of transactions. + * If `false`, extensions cannot define their own `dispatchTransaction` hook. + * + * @default true + * @example + * new Editor({ + * enableExtensionDispatchTransaction: false, + * }) + */ + enableExtensionDispatchTransaction?: boolean } /** From 559cadbc5060c80accc192f7113ea9dace74bbc8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 5 Jan 2026 20:19:58 +0100 Subject: [PATCH 557/629] chore(release): publish a new release version (#7383) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...ch-transaction-hook-joyful-leaping-lynx.md | 5 ---- .changeset/fix-unique-id-empty-node-check.md | 5 ---- CHANGELOG.md | 14 +++++++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 10 +++++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 +++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 +++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 +++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 +++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 10 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 +++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 +++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 +++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 +++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 +++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 +++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 +++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 +++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 +++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 +++++ packages/extension-text/package.json | 2 +- packages/extension-twitch/CHANGELOG.md | 7 +++++ packages/extension-twitch/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 +++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 +++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 9 ++++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 +++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 +++++ packages/vue-3/package.json | 2 +- 145 files changed, 628 insertions(+), 81 deletions(-) delete mode 100644 .changeset/add-dispatch-transaction-hook-joyful-leaping-lynx.md delete mode 100644 .changeset/fix-unique-id-empty-node-check.md diff --git a/.changeset/add-dispatch-transaction-hook-joyful-leaping-lynx.md b/.changeset/add-dispatch-transaction-hook-joyful-leaping-lynx.md deleted file mode 100644 index 2a572767a2..0000000000 --- a/.changeset/add-dispatch-transaction-hook-joyful-leaping-lynx.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": minor ---- - -Add a new `dispatchTransaction` hook to extensions, allowing developers to intercept, modify, or block transactions before they are applied to the editor state. diff --git a/.changeset/fix-unique-id-empty-node-check.md b/.changeset/fix-unique-id-empty-node-check.md deleted file mode 100644 index fc70c597a6..0000000000 --- a/.changeset/fix-unique-id-empty-node-check.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-unique-id": patch ---- - -Fix unique ID assignment when handling empty nodes by checking next node's attribute state in the transaction document before modifying it, preventing incorrect ID assignments. diff --git a/CHANGELOG.md b/CHANGELOG.md index 5394860b72..6e59329f64 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # Releases +## v3.15.0 + +### @tiptap/core + +#### Minor Changes + +- Add a new `dispatchTransaction` hook to extensions, allowing developers to intercept, modify, or block transactions before they are applied to the editor state. + +### @tiptap/extension-unique-id + +#### Patch Changes + +- Fix unique ID assignment when handling empty nodes by checking next node's attribute state in the transaction document before modifying it, preventing incorrect ID assignments. + ## v3.14.0 ### @tiptap/extension-twitch diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index ad557d5643..17c8c11499 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extensions@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 45e9c41afb..88ca1809f6 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 099e607400..535aa62d44 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extensions@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index fef19a27ae..2fa40a09b7 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index aa6bbc5516..71019cf129 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extensions@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index a27b573f2b..7ff6303b34 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 8c5b325ea9..f5bd419de6 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extensions@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 8b84d07e2c..2ae1d880d7 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 5ba6792562..172e58f274 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extensions@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 6fda4b82e2..df85f97f17 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index aa0aaae6bf..0a664a0a19 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-list@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 03506f5853..3fee726def 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 920efee7fe..8b2967456d 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-list@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 6193ae9d6a..815dd0d719 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index f383ffcf90..e738cdf7d1 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extensions@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 2ba5856e53..5aa925d554 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 3891c5aa82..c6962d83a3 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-table@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 068c883f91..fd98f545a2 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 7d82f0251d..33946b1307 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-table@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index a32726f2e3..6cd1985317 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index e1141285a4..59cb7dcb9c 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-table@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 0801beab87..73ce80f57d 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 0dae63cfcb..c3b0acec0b 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-list@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 159cd10fc4..22536f1441 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index bd860ba003..7a973000ec 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-list@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index e8eb7898fb..a5e506d376 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 278abf128e..b32841d3ab 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.15.0 + +### Minor Changes + +- ac8361c: Add a new `dispatchTransaction` hook to extensions, allowing developers to intercept, modify, or block transactions before they are applied to the editor state. + +### Patch Changes + +- @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 4a4922f9a6..1b3b0cafa6 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 3ce0911707..6bff552a0d 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 6853f670d8..810248c058 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index ddb61729ce..95a8335069 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index c76cc92a25..a3c8458b9d 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index c469df3f8b..3b3de64374 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 8488d917cc..5132b71071 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 90ead6d664..e9e1286190 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-list@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 78afc4b541..70d4025c38 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index f2526670d8..3c1ee5cbe7 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/extension-code-block@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index f7ae219d88..b5795fb187 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 90163a17f3..9cc40a4487 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 28a9bf6515..44efd1d01b 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index a6a29e277c..d6df32a812 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 3596273493..506b532e35 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 89037bd414..824e372419 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 61ce696edb..d10c674f72 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 30537323e1..13fc1937c0 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 32c1e9af59..c1b73b863a 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 240be0bdab..4c05832f1d 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 225270a0c2..cd94e99cc6 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 0115c3f14b..99ff88913b 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/extension-text-style@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 486fcf0004..b62fb42037 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index f5082fe080..6e08a05c3f 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index b47aec7acb..6c60f287bf 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 9f2625ae29..48ff9d8605 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.15.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.15.0 +- @tiptap/react@3.15.0 +- @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 0ef509c38f..95bb787bae 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index d9c2cf10d4..da87c49020 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.15.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.15.0 +- @tiptap/vue-2@3.15.0 +- @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index b7d91d96b0..e02a25f24f 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 4b05864482..0a067780ee 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.15.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.15.0 +- @tiptap/vue-3@3.15.0 +- @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 22e6ea0045..a1dff512d9 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index ceb4dfefd0..da760c6ce3 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/extension-collaboration@3.15.0 + - @tiptap/extension-node-range@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 226c8e86f5..0abb1aeae7 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index a12cbbacba..583d9e3b68 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/suggestion@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 9de4d3235e..99780fba9e 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 7af134c09c..f41526f56b 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/extension-text-style@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 038b36a14d..cf5fb0c893 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 59790214e6..ec6df6b6b9 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index b9fd7e9e64..c0b601eac2 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 7727670f8c..c125b69729 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 1c348fd950..a5a521b368 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index b9dcf925e6..75acf09610 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index d1549e3c38..cad3aef3f4 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index f973fbfeba..a8896c0653 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 46073aaee9..58a1878ebd 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 8d0ce82dfe..f6c6ef8f28 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index aa0b7e0b60..e449c34400 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 13048fb604..c1044bda1b 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 67fe6e10b8..3aea115cb6 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 5b6a0c1395..e820c089af 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 4505f6ad29..ef74de0009 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 8078b4b630..3b70ea5a3a 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/extension-text-style@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 52df3bf147..c4df75a9e6 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 2f8e1eab11..73dd0a2b1f 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index edd5e7466f..4597f730ad 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index b44edad281..5ae6242b8a 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 3bd34a83c3..2bbd52b090 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 4a3b2ef81b..49d5fd5a70 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 7ea8e23d01..a64511cc34 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 35f6977218..7a4cc0dc29 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 0232de93c2..002e21ec57 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 5b67ad37fc..b3a67d269a 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/suggestion@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 86ac3f6d38..7dc66779e7 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index f41b2b1720..c1f0e24f25 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 901e761d7d..a46bd564a8 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index a78f377a40..b50283daaa 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- @tiptap/extension-list@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index b0ab1b4d79..9de78f449a 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index fc4500eef5..26a3bb06b9 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index e9eed3b414..0865ba0674 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index b3af465ba6..1c4756a3e1 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 2856f569eb..47bea7bd16 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 7667a64776..93266f9a04 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 477bf5d259..64d9803833 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 6114dbc804..9559dcb2e4 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 902aab59b0..6ffb27f8b6 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 42fc3ff209..d5e95e74ad 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.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 9801c4fe61..6da74b2670 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 00eb4d8121..37fd250c33 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index c61078e9d4..951f9df381 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index a014e6d0d1..c30254163e 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index c2bda5ac75..d4e40a70cf 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index a9e6d76f8c..2a0d6240b6 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index d6ed471f09..56fb96db73 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index e02f36d9da..6bcb371a95 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 8583586597..adddd7e99f 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md index 6377b028ca..19b60ae12a 100644 --- a/packages/extension-twitch/CHANGELOG.md +++ b/packages/extension-twitch/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-twitch +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Minor Changes diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json index 788fb26f0c..c8db3713cc 100644 --- a/packages/extension-twitch/package.json +++ b/packages/extension-twitch/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-twitch", "description": "a twitch embed extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index eb93185465..a63cb88966 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index f2f06b53ad..1185bd9d34 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 1687074afe..a2a69a207b 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index ea76b7541d..175edb4727 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index d7d484577f..f91b5625a7 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-unique-id +## 3.15.0 + +### Patch Changes + +- c5cbea6: Fix unique ID assignment when handling empty nodes by checking next node's attribute state in the transaction document before modifying it, preventing incorrect ID assignments. +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 6af893d2c5..55380d0053 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index bbaa7235bd..a11c67e3fd 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 591efa92fb..ba76c4c01a 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 228642102c..26546bcf35 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 847f1e53a6..580bebcdba 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 225bb46e13..a0688490df 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index e597deedf6..ef2d25bb50 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 512220e94c..6ba22ff50b 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 46dc315a0b..0f47256f62 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index ff5b6d4c1b..178c924ddc 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.15.0 + ## 3.14.0 ## 3.13.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index bf56668226..155d0c1ee2 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index da5b1fd9fb..530af979e1 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 940772f8e2..6657a487b7 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 39cd3d9dba..c6565ab22e 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/extension-blockquote@3.15.0 + - @tiptap/extension-bold@3.15.0 + - @tiptap/extension-code@3.15.0 + - @tiptap/extension-code-block@3.15.0 + - @tiptap/extension-document@3.15.0 + - @tiptap/extension-hard-break@3.15.0 + - @tiptap/extension-heading@3.15.0 + - @tiptap/extension-horizontal-rule@3.15.0 + - @tiptap/extension-italic@3.15.0 + - @tiptap/extension-link@3.15.0 + - @tiptap/extension-list@3.15.0 + - @tiptap/extension-paragraph@3.15.0 + - @tiptap/extension-strike@3.15.0 + - @tiptap/extension-text@3.15.0 + - @tiptap/extension-underline@3.15.0 + - @tiptap/extensions@3.15.0 + - @tiptap/extension-list-item@3.15.0 + - @tiptap/extension-list-keymap@3.15.0 + - @tiptap/extension-bullet-list@3.15.0 + - @tiptap/extension-ordered-list@3.15.0 + - @tiptap/extension-dropcursor@3.15.0 + - @tiptap/extension-gapcursor@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 627735ab3d..64a79a0174 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 2383147baa..ee4ce82268 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index e2a2da3259..31d10f7823 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index e308580f61..cd8c198c96 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 29e7ab599c..1a42c125e0 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 1c1ab3adfc..cc66458824 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 28df68a9c4..7cbb2a172a 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 3b2bac7010..cb89473894 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.0 + +### Patch Changes + +- Updated dependencies [ac8361c] + - @tiptap/core@3.15.0 + - @tiptap/pm@3.15.0 + ## 3.14.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index b929612b8e..70db839898 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.14.0", + "version": "3.15.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 5cdcc9e2267dd8e573eadac163a3b8029b7c3043 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 6 Jan 2026 12:04:22 +0100 Subject: [PATCH 558/629] Add shouldShow option for suggestions to control visibility / trigger (#7384) * feat: Add `shouldShow` option to suggestion plugin to control its visibility, accompanied by new tests. * feat: Add `shouldShow` callback to `Suggestion` utility to filter when suggestions are displayed. * fix lint issues * feat: Pass `query`, `text`, and `transaction` directly to the `shouldShow` callback in the suggestion plugin. * docs: Add example for `shouldShow` property in suggestion.ts --- ...uggest-should-show-vibrant-flying-eagle.md | 5 + .../src/__tests__/suggestion.test.ts | 127 ++++++++++++++++++ packages/suggestion/src/suggestion.ts | 33 ++++- 3 files changed, 163 insertions(+), 2 deletions(-) create mode 100644 .changeset/suggest-should-show-vibrant-flying-eagle.md create mode 100644 packages/suggestion/src/__tests__/suggestion.test.ts diff --git a/.changeset/suggest-should-show-vibrant-flying-eagle.md b/.changeset/suggest-should-show-vibrant-flying-eagle.md new file mode 100644 index 0000000000..f0fcb9a45a --- /dev/null +++ b/.changeset/suggest-should-show-vibrant-flying-eagle.md @@ -0,0 +1,5 @@ +--- +"@tiptap/suggestion": patch +--- + +Add a new `shouldShow` callback to the `Suggestion` utility. This allows developers to filter when suggestions are displayed, which is especially useful for collaborative environments to prevent suggestions from popping open for remote users. diff --git a/packages/suggestion/src/__tests__/suggestion.test.ts b/packages/suggestion/src/__tests__/suggestion.test.ts new file mode 100644 index 0000000000..25c71e9cbc --- /dev/null +++ b/packages/suggestion/src/__tests__/suggestion.test.ts @@ -0,0 +1,127 @@ +import { Editor, Extension } from '@tiptap/core' +import StarterKit from '@tiptap/starter-kit' +import { describe, expect, it, vi } from 'vitest' + +import { Suggestion } from '../suggestion.js' + +describe('suggestion integration', () => { + it('should respect shouldShow returning false', async () => { + const shouldShow = vi.fn().mockReturnValue(false) + const items = vi.fn().mockReturnValue([]) + const render = vi.fn() + + const MentionExtension = Extension.create({ + name: 'mention-false', + addProseMirrorPlugins() { + return [ + Suggestion({ + editor: this.editor, + char: '@', + shouldShow, + items, + render: () => ({ + onStart: render, + onUpdate: render, + onExit: render, + }), + }), + ] + }, + }) + + const editor = new Editor({ + extensions: [StarterKit, MentionExtension], + content: '

', + }) + + editor.chain().insertContent('@').run() + + // Flush microtasks because plugin view update is async + await Promise.resolve() + + expect(shouldShow).toHaveBeenCalled() + expect(render).not.toHaveBeenCalled() + + editor.destroy() + }) + + it('should respect shouldShow returning true', async () => { + const shouldShow = vi.fn().mockReturnValue(true) + const render = vi.fn() + const items = vi.fn().mockReturnValue([]) + + const MentionExtension = Extension.create({ + name: 'mention-true', + addProseMirrorPlugins() { + return [ + Suggestion({ + editor: this.editor, + char: '@', + shouldShow, + items, + render: () => ({ + onStart: render, + onUpdate: render, + onExit: render, + }), + }), + ] + }, + }) + + const editor = new Editor({ + extensions: [StarterKit, MentionExtension], + content: '

', + }) + + editor.chain().insertContent('@').run() + + // Flush microtasks because plugin view update is async + await Promise.resolve() + + expect(shouldShow).toHaveBeenCalled() + expect(render).toHaveBeenCalled() + + editor.destroy() + }) + + it('should pass transaction to shouldShow', async () => { + let capturedProps: any = null + const shouldShow = vi.fn(props => { + capturedProps = props + return true + }) + + const MentionExtension = Extension.create({ + name: 'mention-props', + addProseMirrorPlugins() { + return [ + Suggestion({ + editor: this.editor, + char: '@', + shouldShow, + }), + ] + }, + }) + + const editor = new Editor({ + extensions: [StarterKit, MentionExtension], + content: '

', + }) + + editor.chain().insertContent('@').run() + + // Flush microtasks + await Promise.resolve() + + // The transaction is passed as a flat property + expect(capturedProps.transaction).toBeDefined() + expect(capturedProps.query).toBe('') + expect(capturedProps.text).toBe('@') + // Check that we receive the correct editor instance + expect(capturedProps.editor).toBe(editor) + + editor.destroy() + }) +}) diff --git a/packages/suggestion/src/suggestion.ts b/packages/suggestion/src/suggestion.ts index 58e9c4c088..b5bb7efbe7 100644 --- a/packages/suggestion/src/suggestion.ts +++ b/packages/suggestion/src/suggestion.ts @@ -1,5 +1,5 @@ import type { Editor, Range } from '@tiptap/core' -import type { EditorState } from '@tiptap/pm/state' +import type { EditorState, Transaction } from '@tiptap/pm/state' import { Plugin, PluginKey } from '@tiptap/pm/state' import type { EditorView } from '@tiptap/pm/view' import { Decoration, DecorationSet } from '@tiptap/pm/view' @@ -14,6 +14,26 @@ export interface SuggestionOptions { */ pluginKey?: PluginKey + /** + * A function that returns a boolean to indicate if the suggestion should be active. + * This is useful to prevent suggestions from opening for remote users in collaborative environments. + * @param props The props object. + * @param props.editor The editor instance. + * @param props.range The range of the suggestion. + * @param props.query The current suggestion query. + * @param props.text The current suggestion text. + * @param props.transaction The current transaction. + * @returns {boolean} + * @example ({ transaction }) => isChangeOrigin(transaction) + */ + shouldShow?: (props: { + editor: Editor + range: Range + query: string + text: string + transaction: Transaction + }) => boolean + /** * The editor instance. * @default null @@ -201,6 +221,7 @@ export function Suggestion({ render = () => ({}), allow = () => true, findSuggestionMatch = defaultFindSuggestionMatch, + shouldShow, }: SuggestionOptions) { let props: SuggestionProps | undefined const renderer = render?.() @@ -427,7 +448,15 @@ export function Suggestion({ state, range: match.range, isActive: prev.active, - }) + }) && + (!shouldShow || + shouldShow({ + editor, + range: match.range, + query: match.query, + text: match.text, + transaction, + })) ) { next.active = true next.decorationId = prev.decorationId ? prev.decorationId : decorationId From 824e5bdcdb344b5479e15b0936c4830b52aff845 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 6 Jan 2026 12:16:08 +0100 Subject: [PATCH 559/629] chore(release): publish a new release version (#7385) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- ...uggest-should-show-vibrant-flying-eagle.md | 5 ---- CHANGELOG.md | 8 +++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 8 +++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 +++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-twitch/CHANGELOG.md | 6 ++++ packages/extension-twitch/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 7 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 7 +++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 29 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 144 files changed, 571 insertions(+), 76 deletions(-) delete mode 100644 .changeset/suggest-should-show-vibrant-flying-eagle.md diff --git a/.changeset/suggest-should-show-vibrant-flying-eagle.md b/.changeset/suggest-should-show-vibrant-flying-eagle.md deleted file mode 100644 index f0fcb9a45a..0000000000 --- a/.changeset/suggest-should-show-vibrant-flying-eagle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/suggestion": patch ---- - -Add a new `shouldShow` callback to the `Suggestion` utility. This allows developers to filter when suggestions are displayed, which is especially useful for collaborative environments to prevent suggestions from popping open for remote users. diff --git a/CHANGELOG.md b/CHANGELOG.md index 6e59329f64..87696fab50 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Releases +## v3.15.1 + +### @tiptap/suggestion + +#### Patch Changes + +- Add a new `shouldShow` callback to the `Suggestion` utility. This allows developers to filter when suggestions are displayed, which is especially useful for collaborative environments to prevent suggestions from popping open for remote users. + ## v3.15.0 ### @tiptap/core diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 17c8c11499..b0700ae97e 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extensions@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 88ca1809f6..d83700cdb7 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 535aa62d44..3249063ec7 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extensions@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 2fa40a09b7..6317e2ceda 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 71019cf129..50bd780e35 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extensions@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 7ff6303b34..d9775e13a2 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index f5bd419de6..4a6e8166a9 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extensions@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 2ae1d880d7..cdd08a92ff 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 172e58f274..614470512b 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extensions@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index df85f97f17..0037815db2 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 0a664a0a19..14b3cea1ce 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-list@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 3fee726def..72ad96a09f 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 8b2967456d..292b7aa380 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-list@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 815dd0d719..22e09dc415 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index e738cdf7d1..406194511b 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extensions@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 5aa925d554..7468a9c721 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index c6962d83a3..41de666936 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-table@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index fd98f545a2..75a4376609 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 33946b1307..90e7c9c894 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-table@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 6cd1985317..a6d66af28d 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 59cb7dcb9c..877741f112 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-table@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 73ce80f57d..906624af0c 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index c3b0acec0b..9840982162 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-list@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 22536f1441..fed05f27e5 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 7a973000ec..27940f2c7a 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-list@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index a5e506d376..b04484db22 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index b32841d3ab..d4419bbfc6 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 1b3b0cafa6..37c7dac309 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 6bff552a0d..182ea848e2 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 810248c058..57d33efd28 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 95a8335069..bfe2ed59e5 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index a3c8458b9d..5b2f11ddc8 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 3b3de64374..22fde77f4c 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 5132b71071..d200ef16d7 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index e9e1286190..8b2e57d5c9 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-list@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 70d4025c38..9ac697b3df 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 3c1ee5cbe7..29a04fdf60 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/extension-code-block@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index b5795fb187..e58c956244 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 9cc40a4487..8cf8cdbf4d 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 44efd1d01b..451a4e449f 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index d6df32a812..287df846ec 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 506b532e35..5470bf7531 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 824e372419..47f9f1b94d 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index d10c674f72..f150dc80f4 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 13fc1937c0..b79b14ffa7 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index c1b73b863a..2e4865cd3d 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 4c05832f1d..ff827b0a28 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index cd94e99cc6..77c4228640 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 99ff88913b..f7480764af 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/extension-text-style@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index b62fb42037..490cf7702e 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 6e08a05c3f..3a9008b108 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 6c60f287bf..11e43d7437 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 48ff9d8605..74cb315d7c 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.15.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.15.1 +- @tiptap/pm@3.15.1 +- @tiptap/react@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 95bb787bae..15b4a1cc20 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index da87c49020..b35f1175c7 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.15.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.15.1 +- @tiptap/pm@3.15.1 +- @tiptap/vue-2@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index e02a25f24f..9995224c01 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 0a067780ee..f6d0d19aff 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.15.1 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.15.1 +- @tiptap/pm@3.15.1 +- @tiptap/vue-3@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index a1dff512d9..f9969cc3ff 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index da760c6ce3..bee4a40b97 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/extension-collaboration@3.15.1 +- @tiptap/extension-node-range@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 0abb1aeae7..686f88a892 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 583d9e3b68..f4bb44a66b 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.15.1 + +### Patch Changes + +- Updated dependencies [5cdcc9e] + - @tiptap/suggestion@3.15.1 + - @tiptap/core@3.15.1 + - @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 99780fba9e..707e533076 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index f41526f56b..df3a92b29b 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/extension-text-style@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index cf5fb0c893..7052db7c2e 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index ec6df6b6b9..0e992c47ce 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index c0b601eac2..09146e1c82 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index c125b69729..b859dab874 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index a5a521b368..5a5bde1d7b 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 75acf09610..c4703ead66 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index cad3aef3f4..79afdaea06 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index a8896c0653..e86a5ca476 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 58a1878ebd..2e5cecefa7 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index f6c6ef8f28..194968632e 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index e449c34400..f2730b0661 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index c1044bda1b..9fc0bfa553 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 3aea115cb6..c71c438d44 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index e820c089af..bcb7c8cae5 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index ef74de0009..7ec35a0ddc 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 3b70ea5a3a..8c8dbb2155 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/extension-text-style@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index c4df75a9e6..f22b27f99a 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 73dd0a2b1f..1f493e8b78 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 4597f730ad..90b1ffa261 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 5ae6242b8a..2dc1ce395c 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 2bbd52b090..644843b5f4 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 49d5fd5a70..a260e34e77 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index a64511cc34..4c09a6a636 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 7a4cc0dc29..ddeb0206db 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 002e21ec57..d508eceb31 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index b3a67d269a..9a3ff64755 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- Updated dependencies [5cdcc9e] + - @tiptap/suggestion@3.15.1 + - @tiptap/core@3.15.1 + - @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 7dc66779e7..98dc7732bc 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index c1f0e24f25..ffa003a02c 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index a46bd564a8..d2358847ce 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index b50283daaa..72334ecd61 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-list@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 9de78f449a..e616e211d3 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 26a3bb06b9..42ef99a243 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 0865ba0674..4c4ded663c 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 1c4756a3e1..8c1edd7dd0 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 47bea7bd16..c8e4ea051a 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 93266f9a04..6925ea4b25 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 64d9803833..34ea0fa122 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 9559dcb2e4..916ac292c7 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 6ffb27f8b6..d334534683 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index d5e95e74ad..fa96764da6 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 6da74b2670..4121bc4da7 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 37fd250c33..b8a2577aa2 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 951f9df381..0414562c4f 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index c30254163e..b4d466f3c3 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index d4e40a70cf..8b77a2a52a 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 2a0d6240b6..bb6b7425bf 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 56fb96db73..11198ce765 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 6bcb371a95..37ecb6be2b 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index adddd7e99f..c17ee47918 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md index 19b60ae12a..16f54de4a1 100644 --- a/packages/extension-twitch/CHANGELOG.md +++ b/packages/extension-twitch/CHANGELOG.md @@ -1,5 +1,11 @@ # @tiptap/extension-twitch +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json index c8db3713cc..cfd5f8ecbd 100644 --- a/packages/extension-twitch/package.json +++ b/packages/extension-twitch/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-twitch", "description": "a twitch embed extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index a63cb88966..80ba098859 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 1185bd9d34..e32df3db41 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index a2a69a207b..d94cfa8d19 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 175edb4727..c793881b77 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index f91b5625a7..b261c356c9 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 55380d0053..8afb2b81a8 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index a11c67e3fd..4df50836a0 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index ba76c4c01a..6539f43c33 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 26546bcf35..74afd3481b 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 580bebcdba..99943ff074 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index a0688490df..a1878fe837 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index ef2d25bb50..8eb216874a 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 6ba22ff50b..b398d2bd8d 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/markdown +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 0f47256f62..3ca5f11179 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 178c924ddc..0c41d1305b 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.15.1 + ## 3.15.0 ## 3.14.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index 155d0c1ee2..a68c5d3f24 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 530af979e1..dc6ff97a62 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 6657a487b7..9ee29637a0 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index c6565ab22e..34b650a098 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/extension-dropcursor@3.15.1 +- @tiptap/extension-gapcursor@3.15.1 +- @tiptap/extension-list-item@3.15.1 +- @tiptap/extension-list-keymap@3.15.1 +- @tiptap/core@3.15.1 +- @tiptap/extension-blockquote@3.15.1 +- @tiptap/extension-bold@3.15.1 +- @tiptap/extension-bullet-list@3.15.1 +- @tiptap/extension-code@3.15.1 +- @tiptap/extension-code-block@3.15.1 +- @tiptap/extension-document@3.15.1 +- @tiptap/extension-hard-break@3.15.1 +- @tiptap/extension-heading@3.15.1 +- @tiptap/extension-horizontal-rule@3.15.1 +- @tiptap/extension-italic@3.15.1 +- @tiptap/extension-link@3.15.1 +- @tiptap/extension-list@3.15.1 +- @tiptap/extension-ordered-list@3.15.1 +- @tiptap/extension-paragraph@3.15.1 +- @tiptap/extension-strike@3.15.1 +- @tiptap/extension-text@3.15.1 +- @tiptap/extension-underline@3.15.1 +- @tiptap/extensions@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 64a79a0174..e551a060be 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index ee4ce82268..b9e7333bad 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 31d10f7823..d4e35f354d 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index cd8c198c96..15162cfa1a 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- 5cdcc9e: Add a new `shouldShow` callback to the `Suggestion` utility. This allows developers to filter when suggestions are displayed, which is especially useful for collaborative environments to prevent suggestions from popping open for remote users. + - @tiptap/core@3.15.1 + - @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 1a42c125e0..1c0a1d3605 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index cc66458824..ab99ead785 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 7cbb2a172a..0aa35db14f 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index cb89473894..404979b78a 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.15.1 + +### Patch Changes + +- @tiptap/core@3.15.1 +- @tiptap/pm@3.15.1 + ## 3.15.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 70db839898..4852776af9 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.15.0", + "version": "3.15.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From b2d1731ed5116ed5c675c3a2838fe90191778590 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 6 Jan 2026 15:44:56 +0100 Subject: [PATCH 560/629] fix(core): destroy editor instances in can.spec.ts to prevent test errors (#7387) Add afterEach cleanup to properly destroy Editor instances after each test. This prevents ProseMirror's DOMObserver timeout from firing after the test environment is torn down, which was causing 'document is not defined' errors in CI. --- packages/core/__tests__/can.spec.ts | 36 +++++++++++++++++------------ 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/packages/core/__tests__/can.spec.ts b/packages/core/__tests__/can.spec.ts index e7b1e8e9cd..6af59c7a02 100644 --- a/packages/core/__tests__/can.spec.ts +++ b/packages/core/__tests__/can.spec.ts @@ -6,11 +6,17 @@ import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' import { UndoRedo } from '@tiptap/extensions' -import { describe, expect, it } from 'vitest' +import { afterEach, describe, expect, it } from 'vitest' describe('can', () => { + let editor: Editor + + afterEach(() => { + editor?.destroy() + }) + it('not undo', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo], }) @@ -20,7 +26,7 @@ describe('can', () => { }) it('undo', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo], }) @@ -32,7 +38,7 @@ describe('can', () => { }) it('not chain undo', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo], }) @@ -42,7 +48,7 @@ describe('can', () => { }) it('chain undo', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo], }) @@ -54,7 +60,7 @@ describe('can', () => { }) it('returns false for non-applicable marks when cursor is positioned in node that disallows marks', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, CodeBlock, Bold], }) @@ -72,7 +78,7 @@ describe('can', () => { }) it('returns false for non-applicable marks when selection contains node in conflict', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, CodeBlock, Bold], }) @@ -90,7 +96,7 @@ describe('can', () => { }) it('returns false for non-applicable marks when selection contains marks in conflict', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) @@ -102,7 +108,7 @@ describe('can', () => { }) it('returns false for non-applicable marks when stored marks in conflict', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) @@ -114,7 +120,7 @@ describe('can', () => { }) it('returns false for non-applicable marks when selecting multiple nodes in conflict', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) @@ -126,7 +132,7 @@ describe('can', () => { }) it('returns true for applicable marks when selection does not contain nodes in conflict', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, CodeBlock, Bold], }) @@ -145,7 +151,7 @@ describe('can', () => { }) it('returns true for applicable marks when stored marks are not in conflict', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) @@ -157,7 +163,7 @@ describe('can', () => { }) it('returns true for applicable marks when selection does not contain marks in conflict', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) @@ -169,7 +175,7 @@ describe('can', () => { }) it('returns true for applicable marks if at least one node in selection has no marks in conflict', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo, Code, Bold], }) @@ -181,7 +187,7 @@ describe('can', () => { }) it('builds and passes down an undefined dispatch for nested "can" chain', () => { - const editor = new Editor({ + editor = new Editor({ extensions: [Document, Paragraph, Text, UndoRedo], }) From 03998a11195af832add912b6951ead0dad85dc8e Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 7 Jan 2026 00:22:21 +0100 Subject: [PATCH 561/629] Prevent auto-linking bare IP's and hostnames (#7388) * fix(extension-link): prevent auto-linking of bare hostnames and IP addresses The default `shouldAutoLink` function now rejects bare hostnames (like `localhost`) and IP addresses (like `127.0.0.1`) without a protocol prefix. URLs with explicit protocols (like `http://localhost`) and domain names with TLDs (like `example.com`) are still auto-linked. This change also fixes the pasteHandler to use `link.value` (the original text) instead of `link.href` (the auto-generated URL with protocol) for consistency with the autolink plugin. Fixes #7375 * fix(extension-link): handle userinfo in URL parsing Fix hostname extraction to correctly handle URLs with credentials (e.g., user:pass@example.com). The protocol detection now distinguishes between actual protocols (http://) and userinfo patterns. --------- Co-authored-by: Claude --- .changeset/fix-localhost-autolink.md | 5 + .../extension-link/__tests__/link.spec.ts | 96 +++++++++++++++++++ .../src/helpers/pasteHandler.ts | 2 +- packages/extension-link/src/link.ts | 24 ++++- 4 files changed, 125 insertions(+), 2 deletions(-) create mode 100644 .changeset/fix-localhost-autolink.md diff --git a/.changeset/fix-localhost-autolink.md b/.changeset/fix-localhost-autolink.md new file mode 100644 index 0000000000..528a1f7638 --- /dev/null +++ b/.changeset/fix-localhost-autolink.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-link": patch +--- + +Prevent auto-linking of bare hostnames (e.g., `localhost`) and IP addresses without a protocol prefix diff --git a/packages/extension-link/__tests__/link.spec.ts b/packages/extension-link/__tests__/link.spec.ts index ea874789a8..f5a15eeb43 100644 --- a/packages/extension-link/__tests__/link.spec.ts +++ b/packages/extension-link/__tests__/link.spec.ts @@ -256,4 +256,100 @@ describe('extension-link', () => { }) }) }) + + describe('shouldAutoLink', () => { + it('default shouldAutoLink rejects bare hostnames without TLD', () => { + // Test using Link extension's default options + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Link], + }) + + // Access the default shouldAutoLink function through the extension options + const linkExtension = editor.extensionManager.extensions.find(ext => ext.name === 'link') + const shouldAutoLink = linkExtension?.options?.shouldAutoLink + + expect(shouldAutoLink).toBeDefined() + if (shouldAutoLink) { + // Should reject bare hostnames without TLD + expect(shouldAutoLink('localhost')).toBe(false) + expect(shouldAutoLink('myserver')).toBe(false) + expect(shouldAutoLink('intranet')).toBe(false) + + // Should allow URLs with protocols + expect(shouldAutoLink('http://localhost')).toBe(true) + expect(shouldAutoLink('https://localhost')).toBe(true) + expect(shouldAutoLink('http://127.0.0.1')).toBe(true) + expect(shouldAutoLink('ftp://myserver')).toBe(true) + + // Should allow URLs with TLD + expect(shouldAutoLink('example.com')).toBe(true) + expect(shouldAutoLink('test.example.com')).toBe(true) + expect(shouldAutoLink('https://example.com')).toBe(true) + + // Should correctly handle URLs with userinfo (user:pass@host) + expect(shouldAutoLink('user:pass@example.com')).toBe(true) + expect(shouldAutoLink('user@example.com')).toBe(true) + expect(shouldAutoLink('user:pass@localhost')).toBe(false) + } + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('default shouldAutoLink rejects bare IP addresses', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Link], + }) + + const linkExtension = editor.extensionManager.extensions.find(ext => ext.name === 'link') + const shouldAutoLink = linkExtension?.options?.shouldAutoLink + + expect(shouldAutoLink).toBeDefined() + if (shouldAutoLink) { + // Should reject bare IP addresses + expect(shouldAutoLink('127.0.0.1')).toBe(false) + expect(shouldAutoLink('192.168.1.1')).toBe(false) + expect(shouldAutoLink('10.0.0.1')).toBe(false) + expect(shouldAutoLink('0.0.0.0')).toBe(false) + + // Should allow IP addresses with protocols + expect(shouldAutoLink('http://127.0.0.1')).toBe(true) + expect(shouldAutoLink('https://192.168.1.1')).toBe(true) + expect(shouldAutoLink('http://10.0.0.1:8080')).toBe(true) + } + + editor?.destroy() + getEditorEl()?.remove() + }) + + it('allows custom shouldAutoLink to override default behavior', () => { + // Custom shouldAutoLink that allows all URLs (old behavior) + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Link.configure({ + shouldAutoLink: () => true, + }), + ], + }) + + const linkExtension = editor.extensionManager.extensions.find(ext => ext.name === 'link') + const shouldAutoLink = linkExtension?.options?.shouldAutoLink + + expect(shouldAutoLink).toBeDefined() + if (shouldAutoLink) { + // With custom shouldAutoLink, localhost should be allowed + expect(shouldAutoLink('localhost')).toBe(true) + expect(shouldAutoLink('127.0.0.1')).toBe(true) + } + + editor?.destroy() + getEditorEl()?.remove() + }) + }) }) diff --git a/packages/extension-link/src/helpers/pasteHandler.ts b/packages/extension-link/src/helpers/pasteHandler.ts index 6f94ee8f02..53799b08d5 100644 --- a/packages/extension-link/src/helpers/pasteHandler.ts +++ b/packages/extension-link/src/helpers/pasteHandler.ts @@ -36,7 +36,7 @@ export function pasteHandler(options: PasteHandlerOptions): Plugin { item => item.isLink && item.value === textContent, ) - if (!textContent || !link || (shouldAutoLink !== undefined && !shouldAutoLink(link.href))) { + if (!textContent || !link || (shouldAutoLink !== undefined && !shouldAutoLink(link.value))) { return false } diff --git a/packages/extension-link/src/link.ts b/packages/extension-link/src/link.ts index 3354eaec8e..9bbd37cbe5 100644 --- a/packages/extension-link/src/link.ts +++ b/packages/extension-link/src/link.ts @@ -239,7 +239,29 @@ export const Link = Mark.create({ }, isAllowedUri: (url, ctx) => !!isAllowedUri(url, ctx.protocols), validate: url => !!url, - shouldAutoLink: url => !!url, + shouldAutoLink: url => { + // URLs with explicit protocols (e.g., https://) should be auto-linked + // But not if @ appears before :// (that would be userinfo like user:pass@host) + const hasProtocol = /^[a-z][a-z0-9+.-]*:\/\//i.test(url) + const hasMaybeProtocol = /^[a-z][a-z0-9+.-]*:/i.test(url) + + if (hasProtocol || (hasMaybeProtocol && !url.includes('@'))) { + return true + } + // Strip userinfo (user:pass@) if present, then extract hostname + const urlWithoutUserinfo = url.includes('@') ? url.split('@').pop()! : url + const hostname = urlWithoutUserinfo.split(/[/?#:]/)[0] + + // Don't auto-link IP addresses without protocol + if (/^\d{1,3}(\.\d{1,3}){3}$/.test(hostname)) { + return false + } + // Don't auto-link single-word hostnames without TLD (e.g., "localhost") + if (!/\./.test(hostname)) { + return false + } + return true + }, } }, From c1caa7c228d8ea1b6c7db53a0ef6a53a2d216505 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 7 Jan 2026 01:01:51 +0100 Subject: [PATCH 562/629] Fix TaskItem losing HTML attributes (#7389) * fix(extension-list): preserve HTML attributes in TaskItem node view updates The TaskItem node view's update method previously only synced the `checked` attribute, causing custom HTML attributes (like data-uid or other global attributes added via extensions) to be lost on updates. This fix: - Uses getRenderedAttributes to compute all HTML attributes from node attrs - Tracks previously rendered attribute keys to properly remove attributes when they become null/undefined (i.e., when renderHTML returns {}) - Adds unit tests to verify attribute preservation behavior Fixes #7331 * fix(extension-list): preserve static HTMLAttributes when dynamic attrs are removed Address Copilot review feedback: - When removing dynamic attributes, check if the key exists in static `this.options.HTMLAttributes` and restore the static value instead - Add tests for HTMLAttributes from configure() options - Add test for restoring static attributes when dynamic ones are removed This ensures that attributes set via TaskItem.configure({ HTMLAttributes }) are not accidentally removed when dynamic node attributes change. --------- Co-authored-by: Claude --- .changeset/fix-taskitem-html-attributes.md | 5 + .../extension-list/__tests__/taskItem.spec.ts | 298 ++++++++++++++++++ .../extension-list/src/task-item/task-item.ts | 47 ++- 3 files changed, 349 insertions(+), 1 deletion(-) create mode 100644 .changeset/fix-taskitem-html-attributes.md create mode 100644 packages/extension-list/__tests__/taskItem.spec.ts diff --git a/.changeset/fix-taskitem-html-attributes.md b/.changeset/fix-taskitem-html-attributes.md new file mode 100644 index 0000000000..058fb4e4c4 --- /dev/null +++ b/.changeset/fix-taskitem-html-attributes.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-list": patch +--- + +Fix lost HTML attributes in TaskItem node view updates diff --git a/packages/extension-list/__tests__/taskItem.spec.ts b/packages/extension-list/__tests__/taskItem.spec.ts new file mode 100644 index 0000000000..21ec937cef --- /dev/null +++ b/packages/extension-list/__tests__/taskItem.spec.ts @@ -0,0 +1,298 @@ +import { Editor } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { afterEach, describe, expect, it } from 'vitest' + +import { TaskItem, TaskList } from '../src/index.js' + +describe('TaskItem', () => { + let editor: Editor + + afterEach(() => { + editor?.destroy() + }) + + it('preserves custom HTML attributes on node update', () => { + // Extend TaskItem with a custom attribute + const CustomTaskItem = TaskItem.extend({ + addAttributes() { + return { + ...this.parent?.(), + uid: { + default: null, + parseHTML: element => element.getAttribute('data-uid'), + renderHTML: attributes => { + if (!attributes.uid) { + return {} + } + return { 'data-uid': attributes.uid } + }, + }, + } + }, + }) + + editor = new Editor({ + extensions: [Document, Paragraph, Text, TaskList, CustomTaskItem], + content: { + type: 'doc', + content: [ + { + type: 'taskList', + content: [ + { + type: 'taskItem', + attrs: { checked: false, uid: 'test-uid-123' }, + content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Test task' }] }], + }, + ], + }, + ], + }, + }) + + // Verify the initial attribute is present - use data-checked selector as node view sets this + const taskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(taskItemElement).not.toBeNull() + expect(taskItemElement?.getAttribute('data-uid')).toBe('test-uid-123') + expect(taskItemElement?.getAttribute('data-checked')).toBe('false') + + // Update the task item (toggle checked status) + // Position cursor inside the task item first + editor.chain().setTextSelection(4).updateAttributes('taskItem', { checked: true }).run() + + // Verify the custom attribute is still present after update + const updatedTaskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(updatedTaskItemElement).not.toBeNull() + expect(updatedTaskItemElement?.getAttribute('data-uid')).toBe('test-uid-123') + expect(updatedTaskItemElement?.getAttribute('data-checked')).toBe('true') + }) + + it('removes attributes when set to null', () => { + const CustomTaskItem = TaskItem.extend({ + addAttributes() { + return { + ...this.parent?.(), + uid: { + default: null, + parseHTML: element => element.getAttribute('data-uid'), + renderHTML: attributes => { + if (!attributes.uid) { + return {} + } + return { 'data-uid': attributes.uid } + }, + }, + } + }, + }) + + editor = new Editor({ + extensions: [Document, Paragraph, Text, TaskList, CustomTaskItem], + content: { + type: 'doc', + content: [ + { + type: 'taskList', + content: [ + { + type: 'taskItem', + attrs: { checked: false, uid: 'test-uid-456' }, + content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Test task' }] }], + }, + ], + }, + ], + }, + }) + + // Verify the initial attribute is present + const taskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(taskItemElement?.getAttribute('data-uid')).toBe('test-uid-456') + + // Remove the uid attribute + editor.chain().setTextSelection(4).updateAttributes('taskItem', { uid: null }).run() + + // Verify the attribute is removed (empty string or not present depends on renderHTML returning {}) + const updatedTaskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(updatedTaskItemElement?.getAttribute('data-uid')).toBeNull() + }) + + it('updates multiple custom attributes simultaneously', () => { + const CustomTaskItem = TaskItem.extend({ + addAttributes() { + return { + ...this.parent?.(), + uid: { + default: null, + parseHTML: element => element.getAttribute('data-uid'), + renderHTML: attributes => { + if (!attributes.uid) { + return {} + } + return { 'data-uid': attributes.uid } + }, + }, + priority: { + default: null, + parseHTML: element => element.getAttribute('data-priority'), + renderHTML: attributes => { + if (!attributes.priority) { + return {} + } + return { 'data-priority': attributes.priority } + }, + }, + } + }, + }) + + editor = new Editor({ + extensions: [Document, Paragraph, Text, TaskList, CustomTaskItem], + content: { + type: 'doc', + content: [ + { + type: 'taskList', + content: [ + { + type: 'taskItem', + attrs: { checked: false, uid: 'task-1', priority: 'high' }, + content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Test task' }] }], + }, + ], + }, + ], + }, + }) + + const taskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(taskItemElement?.getAttribute('data-uid')).toBe('task-1') + expect(taskItemElement?.getAttribute('data-priority')).toBe('high') + + // Update all attributes + editor + .chain() + .setTextSelection(4) + .updateAttributes('taskItem', { + checked: true, + uid: 'task-updated', + priority: 'low', + }) + .run() + + const updatedTaskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(updatedTaskItemElement?.getAttribute('data-checked')).toBe('true') + expect(updatedTaskItemElement?.getAttribute('data-uid')).toBe('task-updated') + expect(updatedTaskItemElement?.getAttribute('data-priority')).toBe('low') + }) + + it('preserves HTMLAttributes from configure() options during updates', () => { + // Configure TaskItem with static HTMLAttributes + const ConfiguredTaskItem = TaskItem.configure({ + HTMLAttributes: { + class: 'custom-task-item', + 'data-static': 'static-value', + }, + }) + + editor = new Editor({ + extensions: [Document, Paragraph, Text, TaskList, ConfiguredTaskItem], + content: { + type: 'doc', + content: [ + { + type: 'taskList', + content: [ + { + type: 'taskItem', + attrs: { checked: false }, + content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Test task' }] }], + }, + ], + }, + ], + }, + }) + + // Verify the static attributes are present initially + const taskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(taskItemElement?.getAttribute('class')).toBe('custom-task-item') + expect(taskItemElement?.getAttribute('data-static')).toBe('static-value') + expect(taskItemElement?.getAttribute('data-checked')).toBe('false') + + // Update the task item + editor.chain().setTextSelection(4).updateAttributes('taskItem', { checked: true }).run() + + // Verify static attributes are still present after update + const updatedTaskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(updatedTaskItemElement?.getAttribute('class')).toBe('custom-task-item') + expect(updatedTaskItemElement?.getAttribute('data-static')).toBe('static-value') + expect(updatedTaskItemElement?.getAttribute('data-checked')).toBe('true') + }) + + it('restores static HTMLAttributes when dynamic attribute with same key is removed', () => { + // Configure TaskItem with a static attribute that will be overridden by dynamic attribute + const ConfiguredTaskItem = TaskItem.extend({ + addAttributes() { + return { + ...this.parent?.(), + customClass: { + default: null, + renderHTML: attributes => { + if (!attributes.customClass) { + return {} + } + return { class: attributes.customClass } + }, + }, + } + }, + }).configure({ + HTMLAttributes: { + class: 'static-class', + }, + }) + + editor = new Editor({ + extensions: [Document, Paragraph, Text, TaskList, ConfiguredTaskItem], + content: { + type: 'doc', + content: [ + { + type: 'taskList', + content: [ + { + type: 'taskItem', + attrs: { checked: false, customClass: 'dynamic-class' }, + content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Test task' }] }], + }, + ], + }, + ], + }, + }) + + // Dynamic class should override static class initially + const taskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(taskItemElement?.getAttribute('class')).toBe('dynamic-class') + + // Remove the dynamic class attribute + editor.chain().setTextSelection(4).updateAttributes('taskItem', { customClass: null }).run() + + // Static class should be restored + const updatedTaskItemElement = editor.view.dom.querySelector('li[data-checked]') + + expect(updatedTaskItemElement?.getAttribute('class')).toBe('static-class') + }) +}) diff --git a/packages/extension-list/src/task-item/task-item.ts b/packages/extension-list/src/task-item/task-item.ts index dc49a0c30e..6c53975ef3 100644 --- a/packages/extension-list/src/task-item/task-item.ts +++ b/packages/extension-list/src/task-item/task-item.ts @@ -1,5 +1,11 @@ import type { KeyboardShortcutCommand } from '@tiptap/core' -import { mergeAttributes, Node, renderNestedMarkdownContent, wrappingInputRule } from '@tiptap/core' +import { + getRenderedAttributes, + mergeAttributes, + Node, + renderNestedMarkdownContent, + wrappingInputRule, +} from '@tiptap/core' import type { Node as ProseMirrorNode } from '@tiptap/pm/model' export interface TaskItemOptions { @@ -243,6 +249,9 @@ export const TaskItem = Node.create({ listItem.setAttribute(key, value) }) + // Track the keys of previously rendered HTML attributes for proper removal + let prevRenderedAttributeKeys = new Set(Object.keys(HTMLAttributes)) + return { dom: listItem, contentDOM: content, @@ -255,6 +264,42 @@ export const TaskItem = Node.create({ checkbox.checked = updatedNode.attrs.checked updateA11Y(updatedNode) + // Sync all HTML attributes from the updated node + const extensionAttributes = editor.extensionManager.attributes + const newHTMLAttributes = getRenderedAttributes(updatedNode, extensionAttributes) + const newKeys = new Set(Object.keys(newHTMLAttributes)) + + // Remove attributes that were previously rendered but are no longer present + // If the attribute exists in static options, restore it instead of removing + const staticAttrs = this.options.HTMLAttributes + + prevRenderedAttributeKeys.forEach(key => { + if (!newKeys.has(key)) { + if (key in staticAttrs) { + listItem.setAttribute(key, staticAttrs[key]) + } else { + listItem.removeAttribute(key) + } + } + }) + + // Update or add new attributes + Object.entries(newHTMLAttributes).forEach(([key, value]) => { + if (value === null || value === undefined) { + // If the attribute exists in static options, restore it instead of removing + if (key in staticAttrs) { + listItem.setAttribute(key, staticAttrs[key]) + } else { + listItem.removeAttribute(key) + } + } else { + listItem.setAttribute(key, value) + } + }) + + // Update the tracked keys for next update + prevRenderedAttributeKeys = newKeys + return true }, } From 8eca4a90f8dc8b33bca2f581883e39d7d7a914e3 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 7 Jan 2026 01:27:14 +0100 Subject: [PATCH 563/629] fix(core): destroy editor instances in dispatchTransaction.spec.ts to prevent test errors (#7391) Similar to #7387, editor instances must be destroyed at the end of each test to prevent ProseMirror's DOMObserver from trying to flush after the test completes and the DOM environment is no longer available. Co-authored-by: Claude --- packages/core/__tests__/dispatchTransaction.spec.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/core/__tests__/dispatchTransaction.spec.ts b/packages/core/__tests__/dispatchTransaction.spec.ts index 7add660446..22242a6fe2 100644 --- a/packages/core/__tests__/dispatchTransaction.spec.ts +++ b/packages/core/__tests__/dispatchTransaction.spec.ts @@ -19,6 +19,8 @@ describe('dispatchTransaction', () => { editor.commands.insertContent('foo') expect(dispatchTransaction).toHaveBeenCalled() + + editor.destroy() }) it('should call multiple dispatchTransaction hooks in priority order', () => { @@ -47,6 +49,8 @@ describe('dispatchTransaction', () => { editor.commands.insertContent('foo') expect(order).toEqual(['extension2', 'extension1']) + + editor.destroy() }) it('should block transaction if next is not called', () => { @@ -64,6 +68,8 @@ describe('dispatchTransaction', () => { editor.commands.insertContent('foo') expect(editor.getText()).toBe('') + + editor.destroy() }) it('should allow user-provided dispatchTransaction as base', () => { @@ -89,6 +95,8 @@ describe('dispatchTransaction', () => { editor.commands.insertContent('foo') expect(userDispatch).toHaveBeenCalled() + + editor.destroy() }) it('should bypass extensions if enableExtensionDispatchTransaction is false', () => { @@ -106,5 +114,7 @@ describe('dispatchTransaction', () => { editor.commands.insertContent('foo') expect(dispatchTransaction).not.toHaveBeenCalled() + + editor.destroy() }) }) From 8cbf4ae979f1865a227ab7c5ef40886a311e42bb Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 7 Jan 2026 01:40:16 +0100 Subject: [PATCH 564/629] Fix YouTube Embed extension for short URLs (#7390) * fix(extension-youtube): fix YouTube Shorts embed URL query parameter separator YouTube Shorts URLs were generating invalid embed URLs using '&' instead of '?' as the query parameter separator. This fix changes the condition to use '?' for all non-playlist URLs, including Shorts. Fixes #7326 * test(extension-youtube): add playlist URL test to verify & separator Address Copilot review feedback by adding test coverage for playlist URLs to ensure the fix doesn't break existing list= behavior. * test(extension-youtube): improve test naming accuracy Address Copilot review feedback: - Rename "with query parameters" to "with rel parameter" for accuracy - Rename "without www" to "without www prefix" for clarity Note: controls: true is intentionally kept in tests to prevent controls=0 from being added to the URL (falsy values trigger this). --------- Co-authored-by: Claude --- .changeset/fix-youtube-shorts-embed-url.md | 5 ++ .../__tests__/youtube.spec.ts | 70 +++++++++++++++++++ packages/extension-youtube/src/utils.ts | 2 +- 3 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 .changeset/fix-youtube-shorts-embed-url.md diff --git a/.changeset/fix-youtube-shorts-embed-url.md b/.changeset/fix-youtube-shorts-embed-url.md new file mode 100644 index 0000000000..af8e8df832 --- /dev/null +++ b/.changeset/fix-youtube-shorts-embed-url.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-youtube": patch +--- + +Fix YouTube Shorts embed URLs using incorrect query parameter separator diff --git a/packages/extension-youtube/__tests__/youtube.spec.ts b/packages/extension-youtube/__tests__/youtube.spec.ts index 3a90736099..35255ed5e9 100644 --- a/packages/extension-youtube/__tests__/youtube.spec.ts +++ b/packages/extension-youtube/__tests__/youtube.spec.ts @@ -5,6 +5,8 @@ import Text from '@tiptap/extension-text' import Youtube from '@tiptap/extension-youtube' import { describe, expect, it } from 'vitest' +import { getEmbedUrlFromYoutubeUrl } from '../src/utils.ts' + /** * Most youtube tests should actually exist in the demo/ app folder */ @@ -77,4 +79,72 @@ describe('extension-youtube', () => { editor?.destroy() getEditorEl()?.remove() }) + + describe('YouTube Shorts URL handling', () => { + it('generates correct embed URL for YouTube Shorts with rel parameter', () => { + const result = getEmbedUrlFromYoutubeUrl({ + url: 'https://www.youtube.com/shorts/EkRHhOCdZjw', + controls: true, + rel: 1, + }) + + expect(result).toBe('https://www.youtube.com/embed/EkRHhOCdZjw?rel=1') + }) + + it('generates correct embed URL for YouTube Shorts without www prefix', () => { + const result = getEmbedUrlFromYoutubeUrl({ + url: 'https://youtube.com/shorts/EkRHhOCdZjw', + controls: true, + autoplay: true, + }) + + expect(result).toBe('https://www.youtube.com/embed/EkRHhOCdZjw?autoplay=1') + }) + + it('generates correct embed URL for YouTube Shorts with multiple parameters', () => { + const result = getEmbedUrlFromYoutubeUrl({ + url: 'https://www.youtube.com/shorts/EkRHhOCdZjw', + autoplay: true, + controls: false, + rel: 0, + }) + + expect(result).toBe('https://www.youtube.com/embed/EkRHhOCdZjw?autoplay=1&controls=0&rel=0') + }) + + it('generates correct embed URL for YouTube Shorts with nocookie option', () => { + const result = getEmbedUrlFromYoutubeUrl({ + url: 'https://www.youtube.com/shorts/EkRHhOCdZjw', + nocookie: true, + controls: true, + rel: 1, + }) + + expect(result).toBe('https://www.youtube-nocookie.com/embed/EkRHhOCdZjw?rel=1') + }) + + it('generates correct embed URL for YouTube Shorts without extra parameters', () => { + const result = getEmbedUrlFromYoutubeUrl({ + url: 'https://www.youtube.com/shorts/EkRHhOCdZjw', + controls: true, + }) + + expect(result).toBe('https://www.youtube.com/embed/EkRHhOCdZjw') + }) + }) + + describe('YouTube Playlist URL handling', () => { + it('generates correct embed URL for playlist with additional parameters using & separator', () => { + const result = getEmbedUrlFromYoutubeUrl({ + url: 'https://www.youtube.com/playlist?list=PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf', + controls: true, + autoplay: true, + }) + + // Playlist URLs use ?list= in base URL, so additional params should use & + expect(result).toBe( + 'https://www.youtube-nocookie.com/embed/videoseries?list=PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf&autoplay=1', + ) + }) + }) }) diff --git a/packages/extension-youtube/src/utils.ts b/packages/extension-youtube/src/utils.ts index b412da6c00..1657b98fc6 100644 --- a/packages/extension-youtube/src/utils.ts +++ b/packages/extension-youtube/src/utils.ts @@ -158,7 +158,7 @@ export const getEmbedUrlFromYoutubeUrl = (options: GetEmbedUrlOptions) => { } if (params.length) { - outputUrl += `${matches[1] === 'v' ? '?' : '&'}${params.join('&')}` + outputUrl += `${matches[1] === 'list' ? '&' : '?'}${params.join('&')}` } return outputUrl From 7d5ce72870282a2e6f389dade5a9114270b29a00 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 7 Jan 2026 12:58:56 +0100 Subject: [PATCH 565/629] fix(vue): accept Function type for appendTo prop in Menus (#7394) * fix(vue): accept Function type for appendTo prop in BubbleMenu and FloatingMenu The appendTo prop in the Vue menu components was defined with only `type: Object`, but the actual TypeScript type accepts both HTMLElement and `() => HTMLElement`. This caused Vue's runtime prop validator to emit a warning when users passed a function. Updated all 4 affected components to use `type: [Object, Function]`. * chore: add changeset for appendTo prop fix --------- Co-authored-by: Claude --- .changeset/fix-vue-menu-appendto-prop-type.md | 6 ++++++ packages/vue-2/src/menus/BubbleMenu.ts | 2 +- packages/vue-2/src/menus/FloatingMenu.ts | 2 +- packages/vue-3/src/menus/BubbleMenu.ts | 2 +- packages/vue-3/src/menus/FloatingMenu.ts | 2 +- 5 files changed, 10 insertions(+), 4 deletions(-) create mode 100644 .changeset/fix-vue-menu-appendto-prop-type.md diff --git a/.changeset/fix-vue-menu-appendto-prop-type.md b/.changeset/fix-vue-menu-appendto-prop-type.md new file mode 100644 index 0000000000..37f231cc22 --- /dev/null +++ b/.changeset/fix-vue-menu-appendto-prop-type.md @@ -0,0 +1,6 @@ +--- +"@tiptap/vue-2": patch +"@tiptap/vue-3": patch +--- + +Fix Vue prop validation warning for `appendTo` prop in BubbleMenu and FloatingMenu diff --git a/packages/vue-2/src/menus/BubbleMenu.ts b/packages/vue-2/src/menus/BubbleMenu.ts index de2df0f612..bb72e0e01b 100644 --- a/packages/vue-2/src/menus/BubbleMenu.ts +++ b/packages/vue-2/src/menus/BubbleMenu.ts @@ -44,7 +44,7 @@ export const BubbleMenu: Component = { }, appendTo: { - type: Object as PropType, + type: [Object, Function] as PropType, default: undefined, }, diff --git a/packages/vue-2/src/menus/FloatingMenu.ts b/packages/vue-2/src/menus/FloatingMenu.ts index c4a2531c5d..4a0393b53c 100644 --- a/packages/vue-2/src/menus/FloatingMenu.ts +++ b/packages/vue-2/src/menus/FloatingMenu.ts @@ -31,7 +31,7 @@ export const FloatingMenu: Component = { }, appendTo: { - type: Object as PropType, + type: [Object, Function] as PropType, default: undefined, }, diff --git a/packages/vue-3/src/menus/BubbleMenu.ts b/packages/vue-3/src/menus/BubbleMenu.ts index 293d64eb55..56cda8c80c 100644 --- a/packages/vue-3/src/menus/BubbleMenu.ts +++ b/packages/vue-3/src/menus/BubbleMenu.ts @@ -35,7 +35,7 @@ export const BubbleMenu = defineComponent({ }, appendTo: { - type: Object as PropType, + type: [Object, Function] as PropType, default: undefined, }, diff --git a/packages/vue-3/src/menus/FloatingMenu.ts b/packages/vue-3/src/menus/FloatingMenu.ts index b763c3c1e8..714ce88844 100644 --- a/packages/vue-3/src/menus/FloatingMenu.ts +++ b/packages/vue-3/src/menus/FloatingMenu.ts @@ -27,7 +27,7 @@ export const FloatingMenu = defineComponent({ }, appendTo: { - type: Object as PropType, + type: [Object, Function] as PropType, default: undefined, }, From d8ca9bfab74f5062a8a3a92c482d4cda69f6c28c Mon Sep 17 00:00:00 2001 From: Yousef Date: Wed, 7 Jan 2026 13:23:43 +0100 Subject: [PATCH 566/629] fix: race condition in ReactRenderer (#7362) * fix: race condition in ReactRenderer * address PR feedback * Fix race conditions in ReactRenderer in Strict Mode --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/thick-months-train.md | 5 +++++ packages/react/src/ReactRenderer.tsx | 17 +++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 .changeset/thick-months-train.md diff --git a/.changeset/thick-months-train.md b/.changeset/thick-months-train.md new file mode 100644 index 0000000000..c6b3c4b61e --- /dev/null +++ b/.changeset/thick-months-train.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': patch +--- + +Fix race conditions in ReactRenderer causing destroyed renderers to be re-added in Strict Mode diff --git a/packages/react/src/ReactRenderer.tsx b/packages/react/src/ReactRenderer.tsx index cd6747160b..7471a22847 100644 --- a/packages/react/src/ReactRenderer.tsx +++ b/packages/react/src/ReactRenderer.tsx @@ -159,6 +159,11 @@ export class ReactRenderer = object> ref: R | null = null + /** + * Flag to track if the renderer has been destroyed, preventing queued or asynchronous renders from executing after teardown. + */ + destroyed = false + /** * Immediately creates element and renders the provided React component. */ @@ -186,6 +191,9 @@ export class ReactRenderer = object> }) } else { queueMicrotask(() => { + if (this.destroyed) { + return + } this.render() }) } @@ -195,6 +203,10 @@ export class ReactRenderer = object> * Render the React component. */ render(): void { + if (this.destroyed) { + return + } + const Component = this.component const props = this.props const editor = this.editor as EditorWithContentComponent @@ -227,6 +239,10 @@ export class ReactRenderer = object> * Re-renders the React component with new props. */ updateProps(props: Record = {}): void { + if (this.destroyed) { + return + } + this.props = { ...this.props, ...props, @@ -239,6 +255,7 @@ export class ReactRenderer = object> * Destroy the React component. */ destroy(): void { + this.destroyed = true const editor = this.editor as EditorWithContentComponent editor?.contentComponent?.removeRenderer(this.id) From 99a3a9eb12601f1e10d3d3ed1db1e6fc03ef6e00 Mon Sep 17 00:00:00 2001 From: Aliansyah Firdaus Date: Wed, 7 Jan 2026 19:26:28 +0700 Subject: [PATCH 567/629] fix(demo): Make table header column toggle label readable (#7255) --- demos/src/Examples/Tables/React/index.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demos/src/Examples/Tables/React/index.jsx b/demos/src/Examples/Tables/React/index.jsx index 38cfd6c146..39754db508 100644 --- a/demos/src/Examples/Tables/React/index.jsx +++ b/demos/src/Examples/Tables/React/index.jsx @@ -111,7 +111,7 @@ const MenuBar = ({ editor }) => { onClick={() => editor.chain().focus().toggleHeaderColumn().run()} disabled={!editor.can().toggleHeaderColumn()} > - ToggleHeaderColumn + Toggle header column + + + + ) +} diff --git a/demos/src/Nodes/Audio/React/styles.scss b/demos/src/Nodes/Audio/React/styles.scss new file mode 100644 index 0000000000..aac1389e4a --- /dev/null +++ b/demos/src/Nodes/Audio/React/styles.scss @@ -0,0 +1,85 @@ +:root { + color-scheme: light; +} + +.control-group { + display: grid; + gap: 0.75rem; + grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); + width: min(100%, 64rem); + margin-bottom: 1rem; +} + +.control { + display: flex; + flex-direction: column; + gap: 0.25rem; + font-size: 0.9rem; +} + +.control input, +.control select { + padding: 0.45rem 0.55rem; + border-radius: 0.45rem; + border: 1px solid #e5e7eb; + background: #fff; + font-size: 0.9rem; +} + +.control label { + color: #4b5563; + font-weight: 600; +} + +.control-group.toggles { + grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); +} + +.control-group.toggles .control { + align-self: center; +} + +.control-group.toggles label { + display: flex; + align-items: center; + gap: 0.35rem; + font-weight: 500; +} + +.insert { + background: #111827; + border: 1px solid #111827; + color: #fff; + border-radius: 0.75rem; + padding: 0.65rem 1rem; + font-weight: 600; + width: min(100%, 64rem); + margin-bottom: 1rem; + cursor: pointer; + display: block; +} + +.insert:disabled { + opacity: 0.6; + cursor: not-allowed; +} + +.tiptap { + background-color: #fff; + border: 1px solid #e5e7eb; + border-radius: 0.75rem; + padding: 1rem; + min-height: 12rem; + width: 100%; +} + +.tiptap p { + margin: 0.5rem 0; +} + +.tiptap audio { + width: 100%; + max-width: 64rem; + display: block; + margin: 0.75rem 0; +} diff --git a/demos/src/Nodes/Audio/Vue/index.html b/demos/src/Nodes/Audio/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Nodes/Audio/Vue/index.vue b/demos/src/Nodes/Audio/Vue/index.vue new file mode 100644 index 0000000000..d0fbbdb7cb --- /dev/null +++ b/demos/src/Nodes/Audio/Vue/index.vue @@ -0,0 +1,237 @@ + + + + + diff --git a/packages/extension-audio/README.md b/packages/extension-audio/README.md new file mode 100644 index 0000000000..c304f4e7bf --- /dev/null +++ b/packages/extension-audio/README.md @@ -0,0 +1,11 @@ +# @tiptap/extension-audio + +A native HTML5 audio node for [tiptap](https://tiptap.dev). + +```js +import Audio from '@tiptap/extension-audio' + +editor = new Editor({ + extensions: [Audio], +}) +``` diff --git a/packages/extension-audio/__tests__/audio.spec.ts b/packages/extension-audio/__tests__/audio.spec.ts new file mode 100644 index 0000000000..f0d8f3e411 --- /dev/null +++ b/packages/extension-audio/__tests__/audio.spec.ts @@ -0,0 +1,287 @@ +import { Editor } from '@tiptap/core' +import Audio from '@tiptap/extension-audio' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' + +describe('extension-audio', () => { + const editorElClass = 'tiptap' + let editor: Editor | null = null + + const createEditorEl = () => { + const editorEl = document.createElement('div') + + editorEl.classList.add(editorElClass) + document.body.appendChild(editorEl) + return editorEl + } + + const getEditorEl = () => document.querySelector(`.${editorElClass}`) + + const destroyEditor = () => { + editor?.destroy() + editor = null + getEditorEl()?.remove() + } + + it('does not output html for javascript schema or invalid links', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Audio], + content: { + type: 'doc', + content: [ + { + type: 'audio', + attrs: { + // We want to ensure script URLs are filtered out + // eslint-disable-next-line no-script-url + src: 'javascript:alert(window.origin)//audio', + }, + }, + ], + }, + }) + + // eslint-disable-next-line no-script-url + expect(editor.getHTML()).not.toContain('javascript:alert') + + destroyEditor() + }) + + it('allows base64 sources only when enabled', () => { + const dataUrl = 'data:audio/mp3;base64,aGVsbG8=' + + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Audio], + content: { + type: 'doc', + content: [ + { + type: 'audio', + attrs: { + src: dataUrl, + }, + }, + ], + }, + }) + + expect(editor.getHTML()).not.toContain(dataUrl) + + destroyEditor() + + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Audio.configure({ allowBase64: true })], + content: { + type: 'doc', + content: [ + { + type: 'audio', + attrs: { + src: dataUrl, + }, + }, + ], + }, + }) + + expect(editor.getHTML()).toContain(dataUrl) + + destroyEditor() + }) + + it('respects audio attributes and options', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [ + Document, + Text, + Paragraph, + Audio.configure({ + autoplay: true, + controls: false, + loop: true, + muted: true, + preload: 'auto', + controlslist: 'nodownload', + crossorigin: 'anonymous', + disableRemotePlayback: true, + }), + ], + content: { + type: 'doc', + content: [ + { + type: 'audio', + attrs: { + src: 'https://assets.tiptap.dev/sounds/loop.mp3', + controls: true, + preload: 'none', + }, + }, + ], + }, + }) + + const html = editor.getHTML() + + expect(html).toContain(' { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Audio], + }) + + const succeeded = editor.commands.setAudio({ + // We want to ensure script URLs are filtered out + // eslint-disable-next-line no-script-url + src: 'javascript:alert(1)', + }) + + expect(succeeded).toBe(false) + // eslint-disable-next-line no-script-url + expect(editor.getHTML()).not.toContain('javascript:alert') + + const validInsert = editor.commands.setAudio({ + src: 'https://assets.tiptap.dev/sounds/loop.mp3', + loop: true, + muted: true, + disableremoteplayback: true, + controls: false, + }) + + expect(validInsert).toBe(true) + + const html = editor.getHTML() + + expect(html).toContain('src="https://assets.tiptap.dev/sounds/loop.mp3"') + expect(html).toContain('loop') + expect(html).toContain('muted') + expect(html).toContain('disableremoteplayback') + expect(html).not.toContain('controls') + + destroyEditor() + }) + + it('creates audio node when pasting a valid audio URL', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Audio], + }) + + const audioUrl = 'https://assets.tiptap.dev/sounds/loop.mp3' + + // Simulate paste by inserting plain text content that matches the paste rule regex + editor.view.pasteText(audioUrl) + + const json = editor.getJSON() + const audioNode = json.content?.find(node => node.type === 'audio') + + expect(audioNode).toBeDefined() + expect(audioNode?.attrs?.src).toBe(audioUrl) + + destroyEditor() + }) + + it('does not create audio node when paste handler is disabled', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Audio.configure({ addPasteHandler: false })], + }) + + const audioUrl = 'https://assets.tiptap.dev/sounds/loop.mp3' + + editor.commands.insertContent(audioUrl) + + const json = editor.getJSON() + const audioNode = json.content?.find(node => node.type === 'audio') + + expect(audioNode).toBeUndefined() + + destroyEditor() + }) + + it('renders audio node as inline when inline option is enabled', () => { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Audio.configure({ inline: true })], + content: { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Audio: ', + }, + { + type: 'audio', + attrs: { + src: 'https://assets.tiptap.dev/sounds/loop.mp3', + }, + }, + ], + }, + ], + }, + }) + + const html = editor.getHTML() + + expect(html).toContain('

Audio: { + editor = new Editor({ + element: createEditorEl(), + extensions: [Document, Text, Paragraph, Audio], + content: { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Some text', + }, + ], + }, + { + type: 'audio', + attrs: { + src: 'https://assets.tiptap.dev/sounds/loop.mp3', + }, + }, + ], + }, + }) + + const html = editor.getHTML() + + expect(html).toContain('

Some text

+ + /** + * Controls if the audio node should be inline or not. + * @default false + * @example true + */ + inline: boolean +} + +/** + * The options for setting an audio element. + */ +type SetAudioOptions = { + src: string + controls?: boolean + autoplay?: boolean + loop?: boolean + muted?: boolean + preload?: 'auto' | 'metadata' | 'none' | null + controlslist?: string + crossorigin?: '' | 'anonymous' | 'use-credentials' + disableremoteplayback?: boolean + HTMLAttributes?: Record +} + +declare module '@tiptap/core' { + interface Commands { + audio: { + /** + * Insert an audio element + * @param options The audio attributes + * @example editor.commands.setAudio({ src: 'https://assets.tiptap.dev/sounds/loop.mp3' }) + */ + setAudio: (options: SetAudioOptions) => ReturnType + } + } +} + +/** + * This extension adds support for native audio elements. + */ +export const Audio = Node.create({ + name: 'audio', + + addOptions() { + return { + addPasteHandler: true, + allowBase64: false, + autoplay: false, + controls: true, + loop: false, + muted: false, + preload: 'metadata', + controlslist: undefined, + crossorigin: undefined, + disableRemotePlayback: false, + HTMLAttributes: {}, + inline: false, + } + }, + + inline() { + return this.options.inline + }, + + group() { + return this.options.inline ? 'inline' : 'block' + }, + + atom: true, + + draggable: true, + + addAttributes() { + return { + src: { + default: null, + }, + controls: { + default: this.options.controls, + }, + autoplay: { + default: this.options.autoplay, + }, + loop: { + default: this.options.loop, + }, + muted: { + default: this.options.muted, + }, + preload: { + default: this.options.preload, + }, + controlslist: { + default: this.options.controlslist, + }, + crossorigin: { + default: this.options.crossorigin, + }, + disableremoteplayback: { + default: this.options.disableRemotePlayback, + }, + } + }, + + parseHTML() { + return [ + { + tag: this.options.allowBase64 ? 'audio[src]' : 'audio[src]:not([src^="data:"])', + }, + ] + }, + + addCommands() { + return { + setAudio: + options => + ({ commands }) => { + if (!isValidAudioUrl(options.src, this.options.allowBase64)) { + return false + } + + return commands.insertContent({ + type: this.name, + attrs: options, + }) + }, + } + }, + + addPasteRules() { + if (!this.options.addPasteHandler) { + return [] + } + + return [ + nodePasteRule({ + find: AUDIO_URL_REGEX_GLOBAL, + type: this.type, + getAttributes: match => { + return { src: match[0] } + }, + }), + ] + }, + + renderHTML({ HTMLAttributes }) { + const sanitizedSrc = sanitizeAudioSrc(HTMLAttributes.src, this.options.allowBase64) + + const mergedAttributes = mergeAttributes( + this.options.HTMLAttributes, + { + controls: this.options.controls, + autoplay: this.options.autoplay, + loop: this.options.loop, + muted: this.options.muted, + preload: this.options.preload, + controlslist: this.options.controlslist, + crossorigin: this.options.crossorigin, + disableremoteplayback: this.options.disableRemotePlayback, + }, + { + ...HTMLAttributes, + src: sanitizedSrc, + }, + ) + + const cleanedAttributes = Object.fromEntries( + Object.entries(mergedAttributes).filter(([, value]) => value !== null && value !== undefined && value !== false), + ) + + return ['audio', cleanedAttributes] + }, + + ...createAtomBlockMarkdownSpec({ + nodeName: 'audio', + allowedAttributes: [ + 'src', + 'controls', + 'autoplay', + 'loop', + 'muted', + 'preload', + 'controlslist', + 'crossorigin', + 'disableremoteplayback', + ], + }), +}) diff --git a/packages/extension-audio/src/index.ts b/packages/extension-audio/src/index.ts new file mode 100644 index 0000000000..60133b9bb4 --- /dev/null +++ b/packages/extension-audio/src/index.ts @@ -0,0 +1,6 @@ +import { Audio } from './audio.js' + +export * from './audio.js' +export * from './utils.js' + +export default Audio diff --git a/packages/extension-audio/src/utils.ts b/packages/extension-audio/src/utils.ts new file mode 100644 index 0000000000..6954c1d42a --- /dev/null +++ b/packages/extension-audio/src/utils.ts @@ -0,0 +1,69 @@ +/** + * Regular expression to match URLs pointing to common audio file formats. + * Matches http/https URLs ending in: mp3, wav, ogg, oga, flac, m4a, aac, opus, weba, webm. + * Supports optional query strings. Case-insensitive, single match. + */ +export const AUDIO_URL_REGEX = /https?:\/\/[^\s]+?\.(?:mp3|wav|ogg|oga|flac|m4a|aac|opus|weba|webm)(?:\?[^\s]*)?/i + +/** + * Global variant of AUDIO_URL_REGEX for matching multiple audio URLs in a string. + * Use this when you need to find all audio URLs in a block of text. + */ +export const AUDIO_URL_REGEX_GLOBAL = + /https?:\/\/[^\s]+?\.(?:mp3|wav|ogg|oga|flac|m4a|aac|opus|weba|webm)(?:\?[^\s]*)?/gi + +/** + * Regular expression to match base64-encoded audio data URLs. + */ +const AUDIO_DATA_URL_REGEX = /^data:audio\/[a-zA-Z0-9.+-]+;base64,/i + +/** + * Validates whether a URL is safe for use in an audio element. + * Allows http, https, protocol-relative, and relative paths by default. + * Data URLs can be enabled via the allowBase64 flag. + * + * @param url - The URL string to validate + * @param allowBase64 - Whether to allow base64 data URLs (default: false) + * @returns True if the URL is valid and safe, false otherwise + */ +export const isValidAudioUrl = (url: string, allowBase64 = false) => { + if (!url) { + return false + } + + if (allowBase64 && AUDIO_DATA_URL_REGEX.test(url)) { + return true + } + + if (url.startsWith('//')) { + return true + } + + if (url.startsWith('/') || url.startsWith('./') || url.startsWith('../')) { + return true + } + + try { + const parsedUrl = new URL(url) + + return parsedUrl.protocol === 'http:' || parsedUrl.protocol === 'https:' + } catch { + return false + } +} + +/** + * Sanitizes an audio source URL by validating it against allowed protocols. + * Returns null for invalid or potentially unsafe URLs. + * + * @param url - The URL string to sanitize (can be null or undefined) + * @param allowBase64 - Whether to allow base64 data URLs (default: false) + * @returns The original URL if valid, or null if invalid/unsafe + */ +export const sanitizeAudioSrc = (url: string | null | undefined, allowBase64 = false) => { + if (!url) { + return null + } + + return isValidAudioUrl(url, allowBase64) ? url : null +} diff --git a/packages/extension-audio/tsup.config.ts b/packages/extension-audio/tsup.config.ts new file mode 100644 index 0000000000..03b7c8d0b6 --- /dev/null +++ b/packages/extension-audio/tsup.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsup' + +export default defineConfig({ + entry: ['src/index.ts'], + tsconfig: '../../tsconfig.build.json', + outDir: 'dist', + dts: true, + clean: true, + sourcemap: true, + format: ['esm', 'cjs'], +}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f7d86851fb..8b572aa4b8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -412,6 +412,12 @@ importers: specifier: workspace:^ version: link:../pm + packages/extension-audio: + devDependencies: + '@tiptap/core': + specifier: workspace:^ + version: link:../core + packages/extension-blockquote: devDependencies: '@tiptap/core': From bb4989f83c381bcbbbd902399ee286bff9da9dc8 Mon Sep 17 00:00:00 2001 From: Lincoln Yan Date: Tue, 20 Jan 2026 22:01:14 +1100 Subject: [PATCH 575/629] [perf] Rewrite the `findDuplicates` function of extension-unique-id to reduce its performance impact (#7407) * chore: rewrite findDuplicates in extension-unique-id for better performance * chore: fix lint with items.forEach * chore: add changeset --- .changeset/swift-sets-flow.md | 5 +++++ .../src/helpers/findDuplicates.ts | 16 +++++++++++----- .../src/helpers/removeDuplicates.ts | 13 ------------- 3 files changed, 16 insertions(+), 18 deletions(-) create mode 100644 .changeset/swift-sets-flow.md delete mode 100644 packages/extension-unique-id/src/helpers/removeDuplicates.ts diff --git a/.changeset/swift-sets-flow.md b/.changeset/swift-sets-flow.md new file mode 100644 index 0000000000..6ec76e220c --- /dev/null +++ b/.changeset/swift-sets-flow.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-unique-id": patch +--- + +Improved `findDuplicates` helper performance from O(n²) to O(n) by using Set-based lookups instead of Array.indexOf diff --git a/packages/extension-unique-id/src/helpers/findDuplicates.ts b/packages/extension-unique-id/src/helpers/findDuplicates.ts index d193e8b3bf..020aa20c9c 100644 --- a/packages/extension-unique-id/src/helpers/findDuplicates.ts +++ b/packages/extension-unique-id/src/helpers/findDuplicates.ts @@ -1,11 +1,17 @@ -import { removeDuplicates } from './removeDuplicates.js' - /** * Returns a list of duplicated items within an array. */ export function findDuplicates(items: any[]): any[] { - const filtered = items.filter((el, index) => items.indexOf(el) !== index) - const duplicates = removeDuplicates(filtered) + const seen = new Set() + const duplicates = new Set() + + items.forEach(item => { + if (seen.has(item)) { + duplicates.add(item) + } else { + seen.add(item) + } + }) - return duplicates + return Array.from(duplicates) } diff --git a/packages/extension-unique-id/src/helpers/removeDuplicates.ts b/packages/extension-unique-id/src/helpers/removeDuplicates.ts deleted file mode 100644 index 7cd79a7db3..0000000000 --- a/packages/extension-unique-id/src/helpers/removeDuplicates.ts +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Removes duplicated values within an array. - * Supports numbers, strings and objects. - */ -export function removeDuplicates(array: T[], by = JSON.stringify): T[] { - const seen: Record = {} - - return array.filter(item => { - const key = by(item) - - return Object.prototype.hasOwnProperty.call(seen, key) ? false : (seen[key] = true) - }) -} From 6b0467e6eb3bea6c24669aefa171126f6cf5a2b0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Jan 2026 12:04:26 +0100 Subject: [PATCH 576/629] chore(deps): bump actions/cache from 4.3.0 to 5.0.2 (#7426) Bumps [actions/cache](https://github.com/actions/cache) from 4.3.0 to 5.0.2. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v4.3.0...v5.0.2) --- updated-dependencies: - dependency-name: actions/cache dependency-version: 5.0.2 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build.yml | 10 +++++----- .github/workflows/publish.yml | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a0f0012c8d..ba9a0eb844 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -46,7 +46,7 @@ jobs: cache: 'pnpm' - name: Load turbo cache - uses: actions/cache@v4.3.0 + uses: actions/cache@v5.0.2 id: turbo-cache with: path: | @@ -92,7 +92,7 @@ jobs: cache: 'pnpm' - name: Load turbo cache - uses: actions/cache@v4.3.0 + uses: actions/cache@v5.0.2 id: turbo-cache with: path: | @@ -139,7 +139,7 @@ jobs: steps: - uses: actions/checkout@v6 - name: Load turbo cache - uses: actions/cache@v4.3.0 + uses: actions/cache@v5.0.2 id: turbo-cache with: path: | @@ -150,7 +150,7 @@ jobs: ${{ runner.os }}-turbo-${{ github.sha }} ${{ runner.os }}-turbo- - name: Load build cache - uses: actions/cache@v4.3.0 + uses: actions/cache@v5.0.2 id: cache with: path: | @@ -232,7 +232,7 @@ jobs: cache: 'pnpm' - name: Load turbo cache - uses: actions/cache@v4.3.0 + uses: actions/cache@v5.0.2 id: turbo-cache with: path: | diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 146f402ace..4bdf4c8459 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -48,7 +48,7 @@ jobs: run: npm install -g npm@11.6.2 - name: Load turbo cache - uses: actions/cache@v4.3.0 + uses: actions/cache@v5.0.2 id: turbo-cache with: path: | From d63518a604acd46cc69c9e0d074b0bb70e9191bf Mon Sep 17 00:00:00 2001 From: Ella <44427128+okorie2@users.noreply.github.com> Date: Tue, 20 Jan 2026 11:24:35 +0000 Subject: [PATCH 577/629] Fix incorrect Markdown serialization for overlapping underline with bold/italic - #7376 (#7381) * feat(tests): add nested marks parsing for markdown manager * fix(markdown): add changeset * fix(tests): remove exclusive focus from nested Marks parsing test * fix(markdown): improve nested marks serialization and add related tests --- .changeset/clever-carpets-argue.md | 5 ++ .changeset/nice-panthers-tan.md | 5 ++ packages/markdown/__tests__/manager.spec.ts | 84 ++++++++++++++++++++- packages/markdown/src/MarkdownManager.ts | 27 +++++-- packages/markdown/src/utils.ts | 9 ++- pnpm-lock.yaml | 1 + 6 files changed, 120 insertions(+), 11 deletions(-) create mode 100644 .changeset/clever-carpets-argue.md create mode 100644 .changeset/nice-panthers-tan.md diff --git a/.changeset/clever-carpets-argue.md b/.changeset/clever-carpets-argue.md new file mode 100644 index 0000000000..674fc8c408 --- /dev/null +++ b/.changeset/clever-carpets-argue.md @@ -0,0 +1,5 @@ +--- +'@tiptap/markdown': patch +--- + +Fix incorrect Markdown output when underline is mixed with bold or italic and their ranges do not fully overlap. diff --git a/.changeset/nice-panthers-tan.md b/.changeset/nice-panthers-tan.md new file mode 100644 index 0000000000..2fa5900d8d --- /dev/null +++ b/.changeset/nice-panthers-tan.md @@ -0,0 +1,5 @@ +--- +'@tiptap/markdown': patch +--- + +Fix overlapping underline/bold/italic serialization and add tests diff --git a/packages/markdown/__tests__/manager.spec.ts b/packages/markdown/__tests__/manager.spec.ts index 9f391f3002..b4cc6d3373 100644 --- a/packages/markdown/__tests__/manager.spec.ts +++ b/packages/markdown/__tests__/manager.spec.ts @@ -7,8 +7,9 @@ import { Link } from '@tiptap/extension-link' import { BulletList, ListItem, OrderedList, TaskItem, TaskList } from '@tiptap/extension-list' import { Mention } from '@tiptap/extension-mention' import { Paragraph } from '@tiptap/extension-paragraph' -import { Strike } from '@tiptap/extension-strike' +import Strike from '@tiptap/extension-strike' import { Text } from '@tiptap/extension-text' +import Underline from '@tiptap/extension-underline' import { Youtube } from '@tiptap/extension-youtube' import { MarkdownManager } from '@tiptap/markdown' import { beforeEach, describe, expect, it } from 'vitest' @@ -74,6 +75,7 @@ describe('MarkdownManager Direct Tests', () => { BulletList, OrderedList, ListItem, + Underline, ] // Extended extensions with custom markdown features @@ -141,7 +143,87 @@ Second paragraph.` expect(doc.content![1].content![0].text).toBe('Second paragraph.') }) }) + describe('simple nested Marks parsing', () => { + beforeEach(() => { + markdownManager = new MarkdownManager() + basicExtensions.forEach(ext => markdownManager.registerExtension(ext)) + }) + const nestedMarkdown = `**...++abc++**` + + const expectedJSON = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: '...', + marks: [{ type: 'bold' }], + }, + { + type: 'text', + text: 'abc', + marks: [{ type: 'underline' }, { type: 'bold' }], + }, + ], + }, + ], + } + it('should convert nested markdown to expected JSON structure', () => { + const json = markdownManager.parse(nestedMarkdown) + expect(json).toEqual(expectedJSON) + }) + + it('should convert nested JSON structure back to expected markdown', () => { + const md = markdownManager.serialize(expectedJSON) + expect(md).toEqual(nestedMarkdown) + }) + }) + describe('complex nested Marks parsing', () => { + beforeEach(() => { + markdownManager = new MarkdownManager() + + basicExtensions.forEach(ext => markdownManager.registerExtension(ext)) + }) + const nestedMarkdown = `**...~~++abc*abc*++~~**` + + const expectedJSON = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: '...', + marks: [{ type: 'bold' }], + }, + { + type: 'text', + text: 'abc', + marks: [{ type: 'underline' }, { type: 'strike' }, { type: 'bold' }], + }, + { + type: 'text', + text: 'abc', + marks: [{ type: 'italic' }, { type: 'underline' }, { type: 'strike' }, { type: 'bold' }], + }, + ], + }, + ], + } + it('should convert nested markdown to expected JSON structure', () => { + const json = markdownManager.parse(nestedMarkdown) + expect(json).toEqual(expectedJSON) + }) + + it('should convert nested JSON structure back to expected markdown', () => { + const md = markdownManager.serialize(expectedJSON) + expect(md).toEqual(nestedMarkdown) + }) + }) describe('Extended Markdown Parsing', () => { beforeEach(() => { markdownManager = new MarkdownManager() diff --git a/packages/markdown/src/MarkdownManager.ts b/packages/markdown/src/MarkdownManager.ts index 66fc1880d3..93e04a2320 100644 --- a/packages/markdown/src/MarkdownManager.ts +++ b/packages/markdown/src/MarkdownManager.ts @@ -863,7 +863,6 @@ export class MarkdownManager { ): string { const result: string[] = [] const activeMarks: Map = new Map() - nodes.forEach((node, i) => { // Lookahead to the next node to determine if marks need to be closed const nextNode = i < nodes.length - 1 ? nodes[i + 1] : null @@ -877,17 +876,30 @@ export class MarkdownManager { const currentMarks = new Map((node.marks || []).map(mark => [mark.type, mark])) // Find marks that need to be closed and opened - const marksToClose = findMarksToClose(activeMarks, currentMarks) const marksToOpen = findMarksToOpen(activeMarks, currentMarks) + const marksToClose = findMarksToClose(currentMarks, nextNode) + + let middleTrailingWhitespace = '' - // Close marks (in reverse order of how they were opened) + if (marksToClose.length > 0) { + // Extract trailing whitespace before closing marks to prevent invalid markdown like "**text **" + const middleTrailingMatch = textContent.match(/(\s+)$/) + if (middleTrailingMatch) { + middleTrailingWhitespace = middleTrailingMatch[1] + textContent = textContent.slice(0, -middleTrailingWhitespace.length) + } + } + // Close marks that are ending here marksToClose.forEach(markType => { - const mark = activeMarks.get(markType) + const mark = currentMarks.get(markType) const closeMarkdown = this.getMarkClosing(markType, mark) if (closeMarkdown) { textContent += closeMarkdown } - activeMarks.delete(markType) + // deleting closed marks from active marks + if (activeMarks.has(markType)) { + activeMarks.delete(markType) + } }) // Open new marks (should be at the beginning) @@ -906,7 +918,9 @@ export class MarkdownManager { if (openMarkdown) { textContent = openMarkdown + textContent } - activeMarks.set(type, mark) + if (!marksToClose.includes(type)) { + activeMarks.set(type, mark) + } }) // Add leading whitespace before the mark opening @@ -941,6 +955,7 @@ export class MarkdownManager { // Add trailing whitespace after the mark closing textContent += trailingWhitespace + textContent += middleTrailingWhitespace result.push(textContent) } else { diff --git a/packages/markdown/src/utils.ts b/packages/markdown/src/utils.ts index 8d370d23f6..7815096948 100644 --- a/packages/markdown/src/utils.ts +++ b/packages/markdown/src/utils.ts @@ -25,12 +25,13 @@ export function wrapInMarkdownBlock(prefix: string, content: string) { } /** - * Identifies marks that need to be closed (active but not in current node). + * Identifies marks that need to be closed, based on the marks in the next node. */ -export function findMarksToClose(activeMarks: Map, currentMarks: Map): string[] { +export function findMarksToClose(currentMarks: Map, nextNode: any): string[] { const marksToClose: string[] = [] - Array.from(activeMarks.keys()).forEach(markType => { - if (!currentMarks.has(markType)) { + + Array.from(currentMarks.keys()).forEach(markType => { + if (!nextNode || !nextNode.marks || !nextNode.marks.map((mark: any) => mark.type).includes(markType)) { marksToClose.push(markType) } }) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8b572aa4b8..71bfc5b931 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7054,6 +7054,7 @@ packages: whatwg-encoding@2.0.0: resolution: {integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==} engines: {node: '>=12'} + deprecated: Use @exodus/bytes instead for a more spec-conformant and faster implementation whatwg-mimetype@3.0.0: resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==} From 332dfba7bd027f8f3f38b5a854fa6848ac37d1a7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 20 Jan 2026 12:59:26 +0100 Subject: [PATCH 578/629] chore(release): publish a new release version (#7413) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/add-audio-extension.md | 5 -- .changeset/clever-carpets-argue.md | 5 -- .changeset/fast-moons-chew.md | 5 -- .changeset/floating-menu-update-event.md | 8 --- .changeset/nice-panthers-tan.md | 5 -- .changeset/swift-sets-flow.md | 5 -- CHANGELOG.md | 51 +++++++++++++++++++ .../extension-character-count/CHANGELOG.md | 6 +++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 +++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 +++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 +++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 +++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 +++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 +++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 +++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 +++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 +++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 +++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 +++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 +++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 +++ packages/core/package.json | 2 +- packages/extension-audio/CHANGELOG.md | 11 ++++ packages/extension-audio/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 +++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 +++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 +++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 +++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 +++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 +++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 ++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 ++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 ++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 11 ++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 +++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 +++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 +++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 +++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 +++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 +++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 +++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 +++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 +++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 +++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 +++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 +++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 +++ packages/extension-text/package.json | 2 +- packages/extension-twitch/CHANGELOG.md | 6 +++ packages/extension-twitch/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 +++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 +++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 +++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 +++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 9 ++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 11 ++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 11 ++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 11 ++++ packages/vue-3/package.json | 2 +- 151 files changed, 647 insertions(+), 105 deletions(-) delete mode 100644 .changeset/add-audio-extension.md delete mode 100644 .changeset/clever-carpets-argue.md delete mode 100644 .changeset/fast-moons-chew.md delete mode 100644 .changeset/floating-menu-update-event.md delete mode 100644 .changeset/nice-panthers-tan.md delete mode 100644 .changeset/swift-sets-flow.md create mode 100644 packages/extension-audio/CHANGELOG.md diff --git a/.changeset/add-audio-extension.md b/.changeset/add-audio-extension.md deleted file mode 100644 index 7dd459d2c9..0000000000 --- a/.changeset/add-audio-extension.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-audio': minor ---- - -Add a native audio extension with demos and tests. diff --git a/.changeset/clever-carpets-argue.md b/.changeset/clever-carpets-argue.md deleted file mode 100644 index 674fc8c408..0000000000 --- a/.changeset/clever-carpets-argue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/markdown': patch ---- - -Fix incorrect Markdown output when underline is mixed with bold or italic and their ranges do not fully overlap. diff --git a/.changeset/fast-moons-chew.md b/.changeset/fast-moons-chew.md deleted file mode 100644 index 74697fd36c..0000000000 --- a/.changeset/fast-moons-chew.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/extension-link': patch ---- - -Fixed an issue where clicking on non-link elements (like images) required multiple clicks to select them. The link click handler now properly returns early when the clicked element is not a link, allowing other node handlers to process the click event. diff --git a/.changeset/floating-menu-update-event.md b/.changeset/floating-menu-update-event.md deleted file mode 100644 index 9cacef7c3c..0000000000 --- a/.changeset/floating-menu-update-event.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -"@tiptap/extension-floating-menu": minor -"@tiptap/react": minor -"@tiptap/vue-2": minor -"@tiptap/vue-3": minor ---- - -Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` diff --git a/.changeset/nice-panthers-tan.md b/.changeset/nice-panthers-tan.md deleted file mode 100644 index 2fa5900d8d..0000000000 --- a/.changeset/nice-panthers-tan.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/markdown': patch ---- - -Fix overlapping underline/bold/italic serialization and add tests diff --git a/.changeset/swift-sets-flow.md b/.changeset/swift-sets-flow.md deleted file mode 100644 index 6ec76e220c..0000000000 --- a/.changeset/swift-sets-flow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-unique-id": patch ---- - -Improved `findDuplicates` helper performance from O(n²) to O(n) by using Set-based lookups instead of Array.indexOf diff --git a/CHANGELOG.md b/CHANGELOG.md index 8a5e9d4221..0e8e0b7daa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,56 @@ # Releases +## v3.16.0 + +### @tiptap/extension-audio + +#### Minor Changes + +- Add a native audio extension with demos and tests. + +### @tiptap/markdown + +#### Patch Changes + +- Fix incorrect Markdown output when underline is mixed with bold or italic and their ranges do not fully overlap. +- Fix overlapping underline/bold/italic serialization and add tests + +### @tiptap/extension-link + +#### Patch Changes + +- Fixed an issue where clicking on non-link elements (like images) required multiple clicks to select them. The link click handler now properly returns early when the clicked element is not a link, allowing other node handlers to process the click event. + +### @tiptap/extension-floating-menu + +#### Minor Changes + +- Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` + +### @tiptap/react + +#### Minor Changes + +- Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` + +### @tiptap/vue-2 + +#### Minor Changes + +- Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` + +### @tiptap/vue-3 + +#### Minor Changes + +- Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` + +### @tiptap/extension-unique-id + +#### Patch Changes + +- Improved `findDuplicates` helper performance from O(n²) to O(n) by using Set-based lookups instead of Array.indexOf + ## v3.15.3 ### @tiptap/core diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index a6ffea636b..c90ed8e939 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extensions@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 236ae2b3df..9b912c0a6c 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 7b509029aa..7244f20efd 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extensions@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index a76bcd6de0..2a5fdfd3eb 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 0f38197ade..ce739e75df 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extensions@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index d60a3b4a90..efc84cd792 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 678cd73df1..6e97268ce4 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extensions@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 46e8e59977..1b542fd03d 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 63fb573fe5..2cc0c9d639 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extensions@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 860a667f6d..15b88c3089 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 5e66127930..27470995ec 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-list@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 8e6735ca8d..a41658fcf2 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 243e7fe47a..9b289519f1 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-list@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 42f46667b8..b2cc74af92 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index d15046b307..7b1bb6d692 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extensions@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index f919929838..50a702c298 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index 36d62f7f22..a304337f03 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-table@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 759c2c1800..5e05c77541 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 5f0443e51f..eba3b9e839 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-table@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index c55fe334ec..1c2177c19f 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 33da40c700..1d65a7a345 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-table@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 2e712c9ba5..a97ed1ab60 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 35a4b27194..38390b1b23 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-list@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index b378eea007..08a49ee697 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 2c69494a56..25f5e4c588 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-list@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 86267889b0..f0c1b9cef0 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index ab44526b01..f09b90273e 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index c096f70a1e..6803726f88 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-audio/CHANGELOG.md b/packages/extension-audio/CHANGELOG.md new file mode 100644 index 0000000000..47e3cc11df --- /dev/null +++ b/packages/extension-audio/CHANGELOG.md @@ -0,0 +1,11 @@ +# @tiptap/extension-audio + +## 3.16.0 + +### Minor Changes + +- b3a9fab: Add a native audio extension with demos and tests. + +### Patch Changes + +- @tiptap/core@3.16.0 diff --git a/packages/extension-audio/package.json b/packages/extension-audio/package.json index 65a04b4ea0..2c6953e58e 100644 --- a/packages/extension-audio/package.json +++ b/packages/extension-audio/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-audio", "description": "audio extension for tiptap", - "version": "3.14.0", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index a22b849386..f3eaa93d12 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 99b6984c00..9ab8938114 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 07ffc05733..29a50506a4 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 05d82d2132..232a60596e 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 54906507e5..23f43e143e 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 31b12100b4..948594e5aa 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 692faa83a2..937dba6e41 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-list@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index aae4925200..7714cfc50a 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 44740a7372..4317730c64 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/extension-code-block@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 1ffdb6f345..15c35cc273 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index b95038ec25..29836b90f3 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index f4ddd7b8df..9d2bf22494 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 875028401f..ce41feb32d 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 30d3762c5f..6153e2846b 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index d06086857a..e2b841ba1f 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 06f4d4a2dd..3fb9862f61 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index de7347f86c..063476383b 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index dae4f24c35..469f5ded44 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 8663780616..f133011b37 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 9b5edd395f..fd7ac7d162 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 222e67cf12..9917ab8d8c 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/extension-text-style@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 1e58e04290..1bfbf185be 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index ccc090779c..a21d027af6 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index c723c8d408..37dfd92d52 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index e375380a8f..acbe4125df 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.16.0 + +### Patch Changes + +- Updated dependencies [9516ee0] + - @tiptap/react@3.16.0 + - @tiptap/extension-drag-handle@3.16.0 + - @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index d1be7ebe06..8f9ba619a5 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 59837f2191..7f92786b36 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.16.0 + +### Patch Changes + +- Updated dependencies [9516ee0] + - @tiptap/vue-2@3.16.0 + - @tiptap/extension-drag-handle@3.16.0 + - @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index b8c1a7135e..ac146ba295 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index c7867cec69..1aa59e2ae6 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.16.0 + +### Patch Changes + +- Updated dependencies [9516ee0] + - @tiptap/vue-3@3.16.0 + - @tiptap/extension-drag-handle@3.16.0 + - @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index ef57db9966..3a8d4e740c 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index 79f86f6615..e0fce27255 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/extension-collaboration@3.16.0 +- @tiptap/extension-node-range@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 143f5b03eb..2a92243e18 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 2819341744..d3a4f1f3fc 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 +- @tiptap/suggestion@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 7015199113..6d2b9f7f85 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index d3b8e8c446..cb094bc128 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/extension-text-style@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 3aef3bbfeb..d81182587a 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 8bc7e6d2bc..d024bfea47 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.16.0 + +### Minor Changes + +- 9516ee0: Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 061bcdfbba..31d84b4006 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 58de0eccd4..106bc4a0e3 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index c15228a091..e00d4359df 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 4e28c47c2e..ed1db135ed 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 06c29678d3..86cd76b67f 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index aa48127396..60d39e21e0 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 8460336a87..2b1a04c534 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 89bc624549..f1d51e1035 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 5bf851b9b6..a993f1f182 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 56c27ada41..08de64d869 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index c64cbfec6b..fd9b1f75d6 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 3ffbb0fa42..109350c537 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 14379fa2cd..205b12164a 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 1ff0e73484..5f3d2115b6 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/extension-text-style@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index fe58f5963d..2f27f58043 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index bfbdcc6aea..1a1f1d78ae 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 9628456b41..ed92c9d9ed 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 94550eb4c5..cfa19e2341 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- 5f568dc: Fixed an issue where clicking on non-link elements (like images) required multiple clicks to select them. The link click handler now properly returns early when the clicked element is not a link, allowing other node handlers to process the click event. + - @tiptap/core@3.16.0 + - @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index c6ad1419b0..44284f869c 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 8eb486dca6..10013b8c54 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 9b5b8d36a4..f4ee4b5e63 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index f214604d94..62f8a08204 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 3fdd2b2c63..2f2e03657c 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 7cd983d4ab..07e564a94b 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 +- @tiptap/suggestion@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index b923035339..446f25463e 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index e1df532cf0..1a4d0b87ba 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 1264b43f61..5b3341bcfc 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 6df450cb1e..adc22a0885 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/extension-list@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index ad4e185370..79118e3d11 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 0a7a8a92dc..3e89eab456 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index b2f3c1fa85..9d5a1cc9b6 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 1d3b5a003d..a8ba2fc75f 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 9245e3a974..486c52c2bf 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index e7da0f8077..430d7f021c 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 60456df3d9..7333442a02 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 885b2d3d8a..0331feb292 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index a416f84d0b..6724539cfa 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 50afd55a41..c8f8fc339b 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index a990a760b5..773ad5e3b6 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 0f3d50fc48..db2bd8ea4c 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 301b65217e..b3ac8917a5 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 7108f459e8..fa97e8f6ea 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 04a2631618..9c7f4f45ff 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 3844ce39ce..884dc3e3f7 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 6c9db7bad2..bbf9b09af2 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 61b01e2bbb..1dedfdb522 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index c7002f3f31..d08fbd76ea 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md index dd3393aaae..55ff285599 100644 --- a/packages/extension-twitch/CHANGELOG.md +++ b/packages/extension-twitch/CHANGELOG.md @@ -1,5 +1,11 @@ # @tiptap/extension-twitch +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json index 2fd659f031..96b65b7219 100644 --- a/packages/extension-twitch/package.json +++ b/packages/extension-twitch/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-twitch", "description": "a twitch embed extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 6aa09dfdc3..34c82a0b49 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 9f0cc440ac..e6dd72e0d0 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index be50e56378..56a6fba178 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 273e8ea3d0..d9c1bb8bcc 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index d8b70fca6d..c6fad20f69 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.16.0 + +### Patch Changes + +- bb4989f: Improved `findDuplicates` helper performance from O(n²) to O(n) by using Set-based lookups instead of Array.indexOf + - @tiptap/core@3.16.0 + - @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 22c90ea55a..3fbbb5a4d2 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index eb63895c98..30e993ed60 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 52eb8f47e5..33fefaed79 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index b0e23fef4c..079a3f8731 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index ed6775a28c..29c8fa8e26 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 3d2497ea13..82bc6ed2ea 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 701eac7cf7..2effb2318c 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 1f5f7dd73f..5a32230990 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/markdown +## 3.16.0 + +### Patch Changes + +- d63518a: Fix incorrect Markdown output when underline is mixed with bold or italic and their ranges do not fully overlap. +- d63518a: Fix overlapping underline/bold/italic serialization and add tests + - @tiptap/core@3.16.0 + - @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 59b3a15c78..97385f989d 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 1a8dee2e05..d60ed0fbd8 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.16.0 + ## 3.15.3 ## 3.15.2 diff --git a/packages/pm/package.json b/packages/pm/package.json index 621766f774..901ebda461 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 67613cc620..9b063e7bda 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.16.0 + +### Minor Changes + +- 9516ee0: Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 3983ca5efb..dec8c9cb9f 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 3a565fa528..487c064e48 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- Updated dependencies [5f568dc] + - @tiptap/extension-link@3.16.0 + - @tiptap/extension-dropcursor@3.16.0 + - @tiptap/extension-gapcursor@3.16.0 + - @tiptap/extension-list-item@3.16.0 + - @tiptap/extension-list-keymap@3.16.0 + - @tiptap/core@3.16.0 + - @tiptap/extension-blockquote@3.16.0 + - @tiptap/extension-bold@3.16.0 + - @tiptap/extension-bullet-list@3.16.0 + - @tiptap/extension-code@3.16.0 + - @tiptap/extension-code-block@3.16.0 + - @tiptap/extension-document@3.16.0 + - @tiptap/extension-hard-break@3.16.0 + - @tiptap/extension-heading@3.16.0 + - @tiptap/extension-horizontal-rule@3.16.0 + - @tiptap/extension-italic@3.16.0 + - @tiptap/extension-list@3.16.0 + - @tiptap/extension-ordered-list@3.16.0 + - @tiptap/extension-paragraph@3.16.0 + - @tiptap/extension-strike@3.16.0 + - @tiptap/extension-text@3.16.0 + - @tiptap/extension-underline@3.16.0 + - @tiptap/extensions@3.16.0 + - @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index c84a0f9028..cb20cdd6f4 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 420c3b11a5..98396abaab 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index ebfe7f951b..cc0bce55cf 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 00d15ef07a..41f0df42f0 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.16.0 + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index c7521130bc..c94fe612c8 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 3219f9b565..999d6929e4 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.16.0 + +### Minor Changes + +- 9516ee0: Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index cf4c9bfc2f..ce52d4608f 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 3f69d90287..106d7ae4c6 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.16.0 + +### Minor Changes + +- 9516ee0: Add updateEvent support for FloatingMenu to allow programmatic position updates via `setMeta('floatingMenu', 'updatePosition')` + +### Patch Changes + +- @tiptap/core@3.16.0 +- @tiptap/pm@3.16.0 + ## 3.15.3 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 65665df4c8..56fd158d63 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.15.3", + "version": "3.16.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 3294f68d62f7fc338f73bc54f3aa5995b685bfba Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 20 Jan 2026 17:03:35 +0100 Subject: [PATCH 579/629] Document initial publish steps for new packages (#7432) --- CONTRIBUTING.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8c79662051..a87a14cada 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -73,6 +73,17 @@ To make it easier to add new demos to the demos app we provide a small helper sc - If your demo changes package behaviour or exposes user-facing changes, follow the normal rule and add a changeset and tests as needed. - If you don't want your demo to be included in the Git repository, use the `Dev` category. Demos in this category are ignored by git via `.gitignore`. +## Publishing New Packages + +When adding a new package to the repository that does not yet exist on NPM, additional setup is required before the automated publish CI can release it: + +1. **Manual initial publish** - The package must be published manually to NPM for the first time using normal user authentication. This is required because trusted publishing can only be configured for packages that already exist on the registry. + - For a single package, run `pnpm run build && pnpm publish` from the package directory (e.g., `packages/extension-audio/`). + - Alternatively, run `pnpm run publish` from the root directory to publish all packages. +2. **Configure trusted publishing** - After the initial publish, set up [NPM trusted publishing](https://docs.npmjs.com/trusted-publishers) (also known as provenance) for the package on NPM. This allows the GitHub Actions workflow to publish subsequent versions automatically. + +Without this setup, the publish CI will fail when attempting to release a new package. + ## Requirements If the project maintainer has any additional requirements, you will find them listed here. From eecf1c9676db1fb5e41eaba86e721139066bbba0 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 23 Jan 2026 12:10:14 +0100 Subject: [PATCH 580/629] Fix/firefox drag handle caret visibility (#7439) * Document initial publish steps for new packages (#7432) * Add isFirefox utility to core * Fix Firefox caret disappearing after drag and drop Workaround Firefox bug by toggling contentEditable on drop to force caret re-render. Add document drop listener and remove it on unbind. * Fix Firefox caret disappearing after drag and drop Workaround Firefox bug by toggling contentEditable on drop to force caret re-render. Add document drop listener and remove it on unbind. --- .changeset/fix-firefox-drag-handle-caret.md | 5 ++++ .changeset/is-firefox-util.md | 5 ++++ CONTRIBUTING.md | 11 ++++++++ packages/core/src/utilities/index.ts | 1 + packages/core/src/utilities/isFirefox.ts | 11 ++++++++ .../src/drag-handle-plugin.ts | 25 ++++++++++++++++++- 6 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 .changeset/fix-firefox-drag-handle-caret.md create mode 100644 .changeset/is-firefox-util.md create mode 100644 packages/core/src/utilities/isFirefox.ts diff --git a/.changeset/fix-firefox-drag-handle-caret.md b/.changeset/fix-firefox-drag-handle-caret.md new file mode 100644 index 0000000000..0a4aae7ced --- /dev/null +++ b/.changeset/fix-firefox-drag-handle-caret.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-drag-handle": patch +--- + +Fixed Firefox bug where the text caret becomes invisible after drag and drop. diff --git a/.changeset/is-firefox-util.md b/.changeset/is-firefox-util.md new file mode 100644 index 0000000000..ccaf2cc362 --- /dev/null +++ b/.changeset/is-firefox-util.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": patch +--- + +Added `isFirefox` utility to core diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8c79662051..a87a14cada 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -73,6 +73,17 @@ To make it easier to add new demos to the demos app we provide a small helper sc - If your demo changes package behaviour or exposes user-facing changes, follow the normal rule and add a changeset and tests as needed. - If you don't want your demo to be included in the Git repository, use the `Dev` category. Demos in this category are ignored by git via `.gitignore`. +## Publishing New Packages + +When adding a new package to the repository that does not yet exist on NPM, additional setup is required before the automated publish CI can release it: + +1. **Manual initial publish** - The package must be published manually to NPM for the first time using normal user authentication. This is required because trusted publishing can only be configured for packages that already exist on the registry. + - For a single package, run `pnpm run build && pnpm publish` from the package directory (e.g., `packages/extension-audio/`). + - Alternatively, run `pnpm run publish` from the root directory to publish all packages. +2. **Configure trusted publishing** - After the initial publish, set up [NPM trusted publishing](https://docs.npmjs.com/trusted-publishers) (also known as provenance) for the package on NPM. This allows the GitHub Actions workflow to publish subsequent versions automatically. + +Without this setup, the publish CI will fail when attempting to release a new package. + ## Requirements If the project maintainer has any additional requirements, you will find them listed here. diff --git a/packages/core/src/utilities/index.ts b/packages/core/src/utilities/index.ts index 8bc8b21577..0f624f829f 100644 --- a/packages/core/src/utilities/index.ts +++ b/packages/core/src/utilities/index.ts @@ -8,6 +8,7 @@ export * from './findDuplicates.js' export * from './fromString.js' export * from './isAndroid.js' export * from './isEmptyObject.js' +export * from './isFirefox.js' export * from './isFunction.js' export * from './isiOS.js' export * from './isMacOS.js' diff --git a/packages/core/src/utilities/isFirefox.ts b/packages/core/src/utilities/isFirefox.ts new file mode 100644 index 0000000000..60e121cce2 --- /dev/null +++ b/packages/core/src/utilities/isFirefox.ts @@ -0,0 +1,11 @@ +/** + * Detects if the current browser is Firefox. + * @returns `true` if the browser is Firefox, `false` otherwise. + * @example + * if (isFirefox()) { + * // Firefox-specific handling + * } + */ +export function isFirefox(): boolean { + return typeof navigator !== 'undefined' ? /Firefox/.test(navigator.userAgent) : false +} diff --git a/packages/extension-drag-handle/src/drag-handle-plugin.ts b/packages/extension-drag-handle/src/drag-handle-plugin.ts index 2b8b4bdf7a..92a5c508cb 100644 --- a/packages/extension-drag-handle/src/drag-handle-plugin.ts +++ b/packages/extension-drag-handle/src/drag-handle-plugin.ts @@ -1,5 +1,5 @@ import { type ComputePositionConfig, type VirtualElement, computePosition } from '@floating-ui/dom' -import type { Editor } from '@tiptap/core' +import { type Editor, isFirefox } from '@tiptap/core' import { isChangeOrigin } from '@tiptap/extension-collaboration' import type { Node } from '@tiptap/pm/model' import { type EditorState, type Transaction, Plugin, PluginKey } from '@tiptap/pm/state' @@ -151,8 +151,26 @@ export const DragHandlePlugin = ({ } } + function onDrop() { + // Firefox has a bug where the caret becomes invisible after drag and drop. + // This workaround forces Firefox to re-render the caret by toggling contentEditable. + // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1327834 + if (isFirefox()) { + const editorElement = editor.view.dom + + // Use requestAnimationFrame to ensure the drop operation has completed + requestAnimationFrame(() => { + if (editorElement.isContentEditable) { + editorElement.contentEditable = 'false' + editorElement.contentEditable = 'true' + } + }) + } + } + element.addEventListener('dragstart', onDragStart) element.addEventListener('dragend', onDragEnd) + document.addEventListener('drop', onDrop) wrapper.appendChild(element) @@ -160,6 +178,7 @@ export const DragHandlePlugin = ({ unbind() { element.removeEventListener('dragstart', onDragStart) element.removeEventListener('dragend', onDragEnd) + document.removeEventListener('drop', onDrop) if (rafId) { cancelAnimationFrame(rafId) rafId = null @@ -299,6 +318,10 @@ export const DragHandlePlugin = ({ // TODO: Kills even on hot reload destroy() { + element.removeEventListener('dragstart', onDragStart) + element.removeEventListener('dragend', onDragEnd) + document.removeEventListener('drop', onDrop) + if (rafId) { cancelAnimationFrame(rafId) rafId = null From 7a9b61767ba332629953abe6eb65f3a6bcd03773 Mon Sep 17 00:00:00 2001 From: Stanislav Volar Date: Fri, 23 Jan 2026 12:57:15 +0100 Subject: [PATCH 581/629] fix: bubble menu TypeError: Cannot read properties of null (reading 'domFromPos') (#7433) * Enhance virtualElement getter with additional safe guard checks Add null checks for view and parentNode in virtualElement getter * Fix formatting of virtualElement getter * fix lint error * Update packages/extension-bubble-menu/src/bubble-menu-plugin.ts Co-authored-by: EriksonBahr * Fix bubble menu TypeError on editor destruction Added a safeguard to avoid TypeError when the editor is destroyed. --------- Co-authored-by: EriksonBahr Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/curly-lizards-hang.md | 5 +++++ packages/extension-bubble-menu/src/bubble-menu-plugin.ts | 4 ++++ 2 files changed, 9 insertions(+) create mode 100644 .changeset/curly-lizards-hang.md diff --git a/.changeset/curly-lizards-hang.md b/.changeset/curly-lizards-hang.md new file mode 100644 index 0000000000..5d49c16e6d --- /dev/null +++ b/.changeset/curly-lizards-hang.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-bubble-menu": patch +--- + +Added a safeguard to avoid `TypeError: Cannot read properties of null (reading 'domFromPos')` being thrown when the editor was being destroyed diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index 23e307e919..dc1f6f6a61 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -269,6 +269,10 @@ export class BubbleMenuView implements PluginView { return referencedVirtualElement } + if (!this.view?.dom?.parentNode) { + return + } + const domRect = posToDOMRect(this.view, selection.from, selection.to) let virtualElement = { getBoundingClientRect: () => domRect, From a7ab5df9e77cba3cbd03160a4538b840ff3dd580 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 23 Jan 2026 13:01:07 +0100 Subject: [PATCH 582/629] feat: nested drag handling (#7434) * feat: nested drag handling * Add unit tests for extension-drag-handle * Fix import spacing for NodeSelection * Add nested drag handle support Bump minor versions to add configurable edge detection and custom rules. Updated packages: - @tiptap/extension-drag-handle - @tiptap/extension-drag-handle-react - @tiptap/extension-drag-handle-vue-3 * Return -1 for nonpositive scores Adjust DragHandleProps to omit nestedOptions from the optional type. Use JSON.stringify(nested) as the useMemo dependency to avoid stale normalization (eslint rule disabled). Update tests to expect -1 when calculateScore yields a nonpositive value. * Enable nested drag handles in Vue 2 DragHandle Add nested prop and NestedOptions types, import normalizeNestedOptions, pass normalized nestedOptions to the plugin, and update the changeset to include the vue-2 package * Add bottom padding to .tiptap * Deprioritize list wrappers for drag handles Add listWrapperDeprioritize rule that returns priority 900 when a node's first child is a listItem or taskItem. This makes it easier to target individual list items while still allowing targeting the wrapper at the edge * Raise list wrapper priority to 1000 * Add tests for listWrapperDeprioritize rule --- .../nested-drag-handle-sunny-river-dance.md | 8 + demos/setup/style.scss | 1 + .../src/Extensions/DragHandle/React/index.jsx | 85 ++++- .../Extensions/DragHandle/React/styles.scss | 93 +++--- demos/src/Extensions/DragHandle/Vue/index.vue | 82 ++++- .../src/DragHandle.tsx | 65 +++- .../src/DragHandle.ts | 24 +- .../src/DragHandle.ts | 55 +++- .../__tests__/defaultRules.spec.ts | 300 ++++++++++++++++++ .../__tests__/edgeDetection.spec.ts | 297 +++++++++++++++++ .../__tests__/normalizeOptions.spec.ts | 146 +++++++++ .../__tests__/scoring.spec.ts | 258 +++++++++++++++ .../src/drag-handle-plugin.ts | 44 ++- .../extension-drag-handle/src/drag-handle.ts | 56 ++++ .../src/helpers/defaultRules.ts | 71 +++++ .../src/helpers/dragHandler.ts | 81 +++-- .../src/helpers/edgeDetection.ts | 109 +++++++ .../src/helpers/findBestDragTarget.ts | 140 ++++++++ .../src/helpers/findNextElementFromCursor.ts | 68 +++- .../src/helpers/normalizeOptions.ts | 48 +++ .../src/helpers/scoring.ts | 56 ++++ packages/extension-drag-handle/src/index.ts | 9 + .../src/types/options.ts | 117 +++++++ .../extension-drag-handle/src/types/rules.ts | 84 +++++ 24 files changed, 2170 insertions(+), 127 deletions(-) create mode 100644 .changeset/nested-drag-handle-sunny-river-dance.md create mode 100644 packages/extension-drag-handle/__tests__/defaultRules.spec.ts create mode 100644 packages/extension-drag-handle/__tests__/edgeDetection.spec.ts create mode 100644 packages/extension-drag-handle/__tests__/normalizeOptions.spec.ts create mode 100644 packages/extension-drag-handle/__tests__/scoring.spec.ts create mode 100644 packages/extension-drag-handle/src/helpers/defaultRules.ts create mode 100644 packages/extension-drag-handle/src/helpers/edgeDetection.ts create mode 100644 packages/extension-drag-handle/src/helpers/findBestDragTarget.ts create mode 100644 packages/extension-drag-handle/src/helpers/normalizeOptions.ts create mode 100644 packages/extension-drag-handle/src/helpers/scoring.ts create mode 100644 packages/extension-drag-handle/src/types/options.ts create mode 100644 packages/extension-drag-handle/src/types/rules.ts diff --git a/.changeset/nested-drag-handle-sunny-river-dance.md b/.changeset/nested-drag-handle-sunny-river-dance.md new file mode 100644 index 0000000000..5781c9b09d --- /dev/null +++ b/.changeset/nested-drag-handle-sunny-river-dance.md @@ -0,0 +1,8 @@ +--- +'@tiptap/extension-drag-handle': minor +'@tiptap/extension-drag-handle-react': minor +'@tiptap/extension-drag-handle-vue-2': minor +'@tiptap/extension-drag-handle-vue-3': minor +--- + +Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. diff --git a/demos/setup/style.scss b/demos/setup/style.scss index 9ca9bede9c..e212c2dc2a 100644 --- a/demos/setup/style.scss +++ b/demos/setup/style.scss @@ -60,6 +60,7 @@ body { .tiptap { caret-color: var(--purple); margin: 1.5rem; + padding-bottom: 2rem; &:focus { outline: none; diff --git a/demos/src/Extensions/DragHandle/React/index.jsx b/demos/src/Extensions/DragHandle/React/index.jsx index 7e889a6dad..93391d99b3 100644 --- a/demos/src/Extensions/DragHandle/React/index.jsx +++ b/demos/src/Extensions/DragHandle/React/index.jsx @@ -3,21 +3,75 @@ import './styles.scss' import DragHandle from '@tiptap/extension-drag-handle-react' import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' -import React from 'react' +import { useState } from 'react' + +const NESTED_CONFIG = { edgeDetection: { threshold: -16 } } export default () => { + const [nested, setNested] = useState(true) + const editor = useEditor({ extensions: [StarterKit], content: ` -

- This is a very unique heading. -

-

- This is a unique paragraph. It’s so unique, it even has an ID attached to it. -

-

- And this one, too. -

+

The Complete Guide to Modern Web Development

+

Web development has evolved significantly over the past decade. What once required multiple tools and complex setups can now be accomplished with modern frameworks and libraries that prioritize developer experience.

+ +

Getting Started

+

Before diving into the technical details, it's important to understand the foundational concepts that make modern web development possible.

+ +
+

"The best code is no code at all. Every new line of code you willingly bring into the world is code that has to be debugged, code that has to be read and understood." - Jeff Atwood

+
+ +

This philosophy guides much of modern development practices, emphasizing simplicity and maintainability over complexity.

+ +
+ +

Key Technologies

+

Here are the essential technologies every web developer should be familiar with:

+ +
    +
  • HTML5 and semantic markup
  • +
  • CSS3 with modern layout techniques +
      +
    • Flexbox for one-dimensional layouts
    • +
    • Grid for two-dimensional layouts
    • +
    • Custom properties (CSS variables)
    • +
    +
  • +
  • JavaScript (ES6+)
  • +
  • TypeScript for type safety
  • +
+ +

Framework Comparison

+

Choosing the right framework depends on your project requirements:

+ +
    +
  1. React - Component-based UI library
  2. +
  3. Vue - Progressive framework
  4. +
  5. Angular - Full-featured platform
  6. +
  7. Svelte - Compile-time framework
  8. +
+ +
+ +

Best Practices

+

Following established best practices ensures your code remains maintainable and scalable.

+ +
+

Always write code as if the person who ends up maintaining it is a violent psychopath who knows where you live.

+
+ +

Code Organization

+

A well-organized codebase is crucial for long-term project success. Consider these principles:

+ +
    +
  • Separation of concerns
  • +
  • DRY (Don't Repeat Yourself)
  • +
  • KISS (Keep It Simple, Stupid)
  • +
+ +

By following these guidelines, you'll create applications that are easier to maintain, test, and extend over time.

`, }) @@ -26,15 +80,18 @@ export default () => { editor.view.dispatch(editor.view.state.tr) } + const toggleNested = () => { + setNested(!nested) + } + return ( <>
+
- - - - + +
diff --git a/demos/src/Extensions/DragHandle/React/styles.scss b/demos/src/Extensions/DragHandle/React/styles.scss index a4ed3dd97c..4c8b810856 100644 --- a/demos/src/Extensions/DragHandle/React/styles.scss +++ b/demos/src/Extensions/DragHandle/React/styles.scss @@ -1,47 +1,68 @@ +::selection { + background-color: #70cff850; +} + .ProseMirror { - padding-inline: 4rem; + padding: 1rem 1rem 1rem 0; - > * + * { + * { margin-top: 0.75em; } - [data-id] { - border: 3px solid #0d0d0d; - border-radius: 0.5rem; - margin: 1rem 0; - position: relative; - margin-top: 1.5rem; - padding: 2rem 1rem 1rem; - - &::before { - content: attr(data-id); - background-color: #0d0d0d; - font-size: 0.6rem; - letter-spacing: 1px; - font-weight: bold; - text-transform: uppercase; - color: #fff; - position: absolute; - top: 0; - padding: 0.25rem 0.75rem; - border-radius: 0 0 0.5rem 0.5rem; - } + > * { + margin-left: 3rem; + } + + .ProseMirror-widget * { + margin-top: auto; + } + + ul, + ol { + padding: 0 1rem; + } +} + +.ProseMirror-noderangeselection { + *::selection { + background: transparent; + } + + * { + caret-color: transparent; + } +} + +.ProseMirror-selectednode, +.ProseMirror-selectednoderange { + position: relative; + + &::before { + position: absolute; + pointer-events: none; + z-index: -1; + content: ''; + top: -0.25rem; + left: -0.25rem; + right: -0.25rem; + bottom: -0.25rem; + background-color: #70cff850; + border-radius: 0.2rem; } } -.drag-handle { - align-items: center; - background: #f0f0f0; - border-radius: 0.25rem; - border: 1px solid rgba(0, 0, 0, 0.1); - cursor: grab; - display: flex; - height: 1.5rem; - justify-content: center; - width: 1.5rem; - - svg { - width: 1.25rem; +.custom-drag-handle { + &::after { + display: flex; + align-items: center; + justify-content: center; + width: 1rem; height: 1.25rem; + content: '⠿'; + font-weight: 700; + cursor: grab; + background: #0d0d0d10; + color: #0d0d0d50; + border-radius: 0.25rem; } } diff --git a/demos/src/Extensions/DragHandle/Vue/index.vue b/demos/src/Extensions/DragHandle/Vue/index.vue index 9a5b45cb0d..df6d57a03c 100644 --- a/demos/src/Extensions/DragHandle/Vue/index.vue +++ b/demos/src/Extensions/DragHandle/Vue/index.vue @@ -13,7 +13,8 @@ - + +
@@ -27,6 +28,8 @@ import NodeRange from '@tiptap/extension-node-range' import StarterKit from '@tiptap/starter-kit' import { Editor, EditorContent } from '@tiptap/vue-3' +const NESTED_CONFIG = { edgeDetection: { threshold: -16 } } + export default { components: { EditorContent, @@ -35,8 +38,14 @@ export default { data() { return { editor: null, + nested: true, } }, + computed: { + nestedOptions() { + return this.nested ? NESTED_CONFIG : false + }, + }, mounted() { this.editor = new Editor({ extensions: [ @@ -48,22 +57,65 @@ export default { }), ], content: ` -

This is a demo file for our Drag Handle extension experiement.

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ipsum suspendisse ultrices gravida dictum fusce ut placerat. Viverra mauris in aliquam sem fringilla. Sit amet commodo nulla facilisi nullam. Viverra orci sagittis eu volutpat odio facilisis mauris sit. In hendrerit gravida rutrum quisque non tellus orci ac. Pellentesque adipiscing commodo elit at imperdiet. Pulvinar sapien et ligula ullamcorper malesuada proin. Odio pellentesque diam volutpat commodo. Pharetra diam sit amet nisl suscipit adipiscing bibendum est ultricies.

-

Odio eu feugiat pretium nibh ipsum consequat nisl. Velit euismod in pellentesque massa placerat. Vel quam elementum pulvinar etiam non quam. Sit amet purus gravida quis. Tincidunt eget nullam non nisi est sit. Eget nulla facilisi etiam dignissim diam. Magnis dis parturient montes nascetur ridiculus mus mauris vitae. Vitae congue eu consequat ac felis donec et odio pellentesque. Sit amet porttitor eget dolor morbi non arcu risus quis. Suspendisse ultrices gravida dictum fusce ut. Tortor vitae purus faucibus ornare. Faucibus ornare suspendisse sed nisi lacus sed. Tristique senectus et netus et.

-

Cursus euismod quis viverra nibh cras pulvinar mattis nunc. Sem viverra aliquet eget sit amet tellus. Nec ullamcorper sit amet risus nullam. Facilisis gravida neque convallis a cras semper auctor. Habitant morbi tristique senectus et netus et malesuada fames ac. Dui vivamus arcu felis bibendum. Velit laoreet id donec ultrices. Enim diam vulputate ut pharetra sit. Aenean pharetra magna ac placerat vestibulum lectus mauris. Mi eget mauris pharetra et ultrices. Lacus viverra vitae congue eu consequat ac felis donec.

-

-

Odio eu feugiat pretium nibh ipsum consequat nisl. Velit euismod in pellentesque massa placerat. Vel quam elementum pulvinar etiam non quam. Sit amet purus gravida quis. Tincidunt eget nullam non nisi est sit. Eget nulla facilisi etiam dignissim diam. Magnis dis parturient montes nascetur ridiculus mus mauris vitae. Vitae congue eu consequat ac felis donec et odio pellentesque. Sit amet porttitor eget dolor morbi non arcu risus quis. Suspendisse ultrices gravida dictum fusce ut. Tortor vitae purus faucibus ornare. Faucibus ornare suspendisse sed nisi lacus sed. Tristique senectus et netus et.

-

Cursus euismod quis viverra nibh cras pulvinar mattis nunc. Sem viverra aliquet eget sit amet tellus. Nec ullamcorper sit amet risus nullam. Facilisis gravida neque convallis a cras semper auctor. Habitant morbi tristique senectus et netus et malesuada fames ac. Dui vivamus arcu felis bibendum. Velit laoreet id donec ultrices. Enim diam vulputate ut pharetra sit. Aenean pharetra magna ac placerat vestibulum lectus mauris. Mi eget mauris pharetra et ultrices. Lacus viverra vitae congue eu consequat ac felis donec.

+

The Complete Guide to Modern Web Development

+

Web development has evolved significantly over the past decade. What once required multiple tools and complex setups can now be accomplished with modern frameworks and libraries that prioritize developer experience.

+ +

Getting Started

+

Before diving into the technical details, it's important to understand the foundational concepts that make modern web development possible.

+ +
+

"The best code is no code at all. Every new line of code you willingly bring into the world is code that has to be debugged, code that has to be read and understood." - Jeff Atwood

+
+ +

This philosophy guides much of modern development practices, emphasizing simplicity and maintainability over complexity.

+ +
+ +

Key Technologies

+

Here are the essential technologies every web developer should be familiar with:

+ +
    +
  • HTML5 and semantic markup
  • +
  • CSS3 with modern layout techniques +
      +
    • Flexbox for one-dimensional layouts
    • +
    • Grid for two-dimensional layouts
    • +
    • Custom properties (CSS variables)
    • +
    +
  • +
  • JavaScript (ES6+)
  • +
  • TypeScript for type safety
  • +
+ +

Framework Comparison

+

Choosing the right framework depends on your project requirements:

+ +
    +
  1. React - Component-based UI library
  2. +
  3. Vue - Progressive framework
  4. +
  5. Angular - Full-featured platform
  6. +
  7. Svelte - Compile-time framework
  8. +
+ +
+ +

Best Practices

+

Following established best practices ensures your code remains maintainable and scalable.

+ +
+

Always write code as if the person who ends up maintaining it is a violent psychopath who knows where you live.

+
+ +

Code Organization

+

A well-organized codebase is crucial for long-term project success. Consider these principles:

+
    -
  • Bullet Item 1
  • -
  • Bullet Item 2
  • -
  • Bullet Item 3
  • +
  • Separation of concerns
  • +
  • DRY (Don't Repeat Yourself)
  • +
  • KISS (Keep It Simple, Stupid)
-

Lorem Ipsum

-

Tincidunt ornare massa eget egestas. Neque convallis a cras semper auctor neque. Eget nulla facilisi etiam dignissim diam quis enim. Phasellus vestibulum lorem sed risus ultricies tristique nulla aliquet enim. At tempor commodo ullamcorper a lacus vestibulum sed arcu. Sed vulputate mi sit amet mauris commodo quis imperdiet. Eget gravida cum sociis natoque. Lacinia quis vel eros donec ac odio tempor orci dapibus. Integer vitae justo eget magna fermentum iaculis eu non. Sed odio morbi quis commodo. Neque sodales ut etiam sit amet. Ipsum nunc aliquet bibendum enim facilisis gravida neque convallis a. Tempus quam pellentesque nec nam aliquam sem et tortor consequat. Urna nec tincidunt praesent semper feugiat nibh sed pulvinar proin. Lacus sed turpis tincidunt id aliquet risus feugiat in. Et leo duis ut diam quam nulla. Ultrices eros in cursus turpis. Adipiscing elit ut aliquam purus sit amet luctus venenatis.

-

Lorem Ipsum

-

Sapien eget mi proin sed libero enim sed faucibus. Aliquam id diam maecenas ultricies mi eget mauris. Amet mattis vulputate enim nulla aliquet porttitor lacus. Pulvinar elementum integer enim neque volutpat ac. Libero volutpat sed cras ornare arcu dui vivamus arcu felis. Urna nunc id cursus metus aliquam eleifend mi in nulla. Justo laoreet sit amet cursus sit. In massa tempor nec feugiat nisl pretium fusce. Vel quam elementum pulvinar etiam non. Nisl nisi scelerisque eu ultrices vitae. Odio ut enim blandit volutpat maecenas volutpat blandit aliquam.

+ +

By following these guidelines, you'll create applications that are easier to maintain, test, and extend over time.

`, }) }, diff --git a/packages/extension-drag-handle-react/src/DragHandle.tsx b/packages/extension-drag-handle-react/src/DragHandle.tsx index 4254f7eed5..c77972774a 100644 --- a/packages/extension-drag-handle-react/src/DragHandle.tsx +++ b/packages/extension-drag-handle-react/src/DragHandle.tsx @@ -1,20 +1,65 @@ import { type DragHandlePluginProps, + type NestedOptions, defaultComputePositionConfig, DragHandlePlugin, dragHandlePluginDefaultKey, + normalizeNestedOptions, } from '@tiptap/extension-drag-handle' import type { Node } from '@tiptap/pm/model' import type { Plugin } from '@tiptap/pm/state' import type { Editor } from '@tiptap/react' -import { type ReactNode, useEffect, useRef, useState } from 'react' +import { type ReactNode, useEffect, useMemo, useRef, useState } from 'react' type Optional = Pick, K> & Omit -export type DragHandleProps = Omit, 'element'> & { +export type DragHandleProps = Omit, 'element' | 'nestedOptions'> & { className?: string onNodeChange?: (data: { node: Node | null; editor: Editor; pos: number }) => void children: ReactNode + + /** + * Enable drag handles for nested content (list items, blockquotes, etc.). + * + * When enabled, the drag handle will appear for nested blocks, not just + * top-level blocks. A rule-based scoring system determines which node + * to target based on cursor position and configured rules. + * + * @default false + * + * @example + * // Simple enable with sensible defaults + * + * + * + * + * @example + * // With custom configuration + * + * + * + * + * @example + * // With custom rules + * node.type.name === 'codeBlock' ? 1000 : 0, + * }], + * }} + * > + * + * + */ + nested?: boolean | NestedOptions } export const DragHandle = (props: DragHandleProps) => { @@ -27,10 +72,14 @@ export const DragHandle = (props: DragHandleProps) => { onElementDragStart, onElementDragEnd, computePositionConfig = defaultComputePositionConfig, + nested = false, } = props const [element, setElement] = useState(null) const plugin = useRef(null) + // eslint-disable-next-line react-hooks/exhaustive-deps + const nestedOptions = useMemo(() => normalizeNestedOptions(nested), [JSON.stringify(nested)]) + useEffect(() => { let initPlugin: { plugin: Plugin @@ -61,6 +110,7 @@ export const DragHandle = (props: DragHandleProps) => { onElementDragStart, onElementDragEnd, onNodeChange, + nestedOptions, }) plugin.current = initPlugin.plugin @@ -75,7 +125,16 @@ export const DragHandle = (props: DragHandleProps) => { initPlugin = null } } - }, [element, editor, onNodeChange, pluginKey, computePositionConfig, onElementDragStart, onElementDragEnd]) + }, [ + element, + editor, + onNodeChange, + pluginKey, + computePositionConfig, + onElementDragStart, + onElementDragEnd, + nestedOptions, + ]) return (
= Pick, K> & Omit -export type DragHandleProps = Omit, 'element'> & { +export type DragHandleProps = Omit, 'element' | 'nestedOptions'> & { class?: string onNodeChange?: (data: { node: Node | null; editor: Editor; pos: number }) => void + /** + * Enable drag handles for nested content (list items, blockquotes, etc.). + * + * When enabled, the drag handle will appear for nested blocks, not just + * top-level blocks. A rule-based scoring system determines which node + * to target based on cursor position and configured rules. + * + * @default false + */ + nested?: boolean | NestedOptions } export const DragHandle = Vue.extend({ @@ -54,10 +66,17 @@ export const DragHandle = Vue.extend({ type: String as PropType, default: 'drag-handle', }, + + nested: { + type: [Boolean, Object] as PropType, + default: false, + }, }, mounted() { - const { editor, pluginKey, onNodeChange, onElementDragStart, onElementDragEnd } = this.$props + const { editor, pluginKey, onNodeChange, onElementDragStart, onElementDragEnd, nested } = this.$props + + const nestedOptions = normalizeNestedOptions(nested) editor.registerPlugin( DragHandlePlugin({ @@ -68,6 +87,7 @@ export const DragHandle = Vue.extend({ onNodeChange, onElementDragStart, onElementDragEnd, + nestedOptions, }).plugin, ) }, diff --git a/packages/extension-drag-handle-vue-3/src/DragHandle.ts b/packages/extension-drag-handle-vue-3/src/DragHandle.ts index b2969ec856..91a5bc2cc3 100644 --- a/packages/extension-drag-handle-vue-3/src/DragHandle.ts +++ b/packages/extension-drag-handle-vue-3/src/DragHandle.ts @@ -1,20 +1,31 @@ -import type { DragHandlePluginProps } from '@tiptap/extension-drag-handle' +import type { DragHandlePluginProps, NestedOptions } from '@tiptap/extension-drag-handle' import { defaultComputePositionConfig, DragHandlePlugin, dragHandlePluginDefaultKey, + normalizeNestedOptions, } from '@tiptap/extension-drag-handle' import type { Node } from '@tiptap/pm/model' import type { Plugin, PluginKey } from '@tiptap/pm/state' import type { Editor } from '@tiptap/vue-3' import type { PropType } from 'vue' -import { defineComponent, h, nextTick, onBeforeUnmount, onMounted, ref, shallowRef } from 'vue' +import { defineComponent, h, nextTick, onBeforeUnmount, onMounted, ref, shallowRef, watch } from 'vue' type Optional = Pick, K> & Omit -export type DragHandleProps = Omit, 'element'> & { +export type DragHandleProps = Omit, 'element'> & { class?: string onNodeChange?: (data: { node: Node | null; editor: Editor; pos: number }) => void + /** + * Enable drag handles for nested content (list items, blockquotes, etc.). + * + * When enabled, the drag handle will appear for nested blocks, not just + * top-level blocks. A rule-based scoring system determines which node + * to target based on cursor position and configured rules. + * + * @default false + */ + nested?: boolean | NestedOptions } export const DragHandle = defineComponent({ @@ -55,16 +66,20 @@ export const DragHandle = defineComponent({ type: String as PropType, default: 'drag-handle', }, + + nested: { + type: [Boolean, Object] as PropType, + default: false, + }, }, setup(props, { slots }) { const root = ref(null) const pluginHandle = shallowRef<{ plugin: Plugin; unbind: () => void } | null>(null) - onMounted(async () => { - await nextTick() - - const { editor, pluginKey, onNodeChange, onElementDragEnd, onElementDragStart, computePositionConfig } = props + const initPlugin = () => { + const { editor, pluginKey, onNodeChange, onElementDragEnd, onElementDragStart, computePositionConfig, nested } = + props if (!root.value) { return @@ -73,6 +88,8 @@ export const DragHandle = defineComponent({ return } + const nestedOptions = normalizeNestedOptions(nested) + const init = DragHandlePlugin({ editor, element: root.value, @@ -81,13 +98,14 @@ export const DragHandle = defineComponent({ onNodeChange, onElementDragStart, onElementDragEnd, + nestedOptions, }) pluginHandle.value = init props.editor.registerPlugin(init.plugin) - }) + } - onBeforeUnmount(() => { + const destroyPlugin = () => { if (!pluginHandle.value) { return } @@ -98,6 +116,25 @@ export const DragHandle = defineComponent({ pluginHandle.value.unbind?.() pluginHandle.value = null + } + + onMounted(async () => { + await nextTick() + initPlugin() + }) + + // Reinitialize plugin when nested option changes + watch( + () => props.nested, + () => { + destroyPlugin() + initPlugin() + }, + { deep: true }, + ) + + onBeforeUnmount(() => { + destroyPlugin() }) return () => diff --git a/packages/extension-drag-handle/__tests__/defaultRules.spec.ts b/packages/extension-drag-handle/__tests__/defaultRules.spec.ts new file mode 100644 index 0000000000..0cf20e5ddc --- /dev/null +++ b/packages/extension-drag-handle/__tests__/defaultRules.spec.ts @@ -0,0 +1,300 @@ +import type { Node, ResolvedPos } from '@tiptap/pm/model' +import type { EditorView } from '@tiptap/pm/view' +import { describe, expect, it } from 'vitest' + +import { + defaultRules, + inlineContent, + listItemFirstChild, + listWrapperDeprioritize, +} from '../src/helpers/defaultRules.js' +import type { RuleContext } from '../src/types/rules.js' + +/** + * Creates a mock RuleContext for testing. + */ +function createMockContext(overrides: Partial = {}): RuleContext { + const mockNode = { + type: { name: 'paragraph' }, + isInline: false, + isText: false, + } as unknown as Node + + return { + node: mockNode, + pos: 0, + depth: 1, + parent: null, + index: 0, + isFirst: true, + isLast: true, + $pos: {} as ResolvedPos, + view: {} as EditorView, + ...overrides, + } +} + +describe('listItemFirstChild', () => { + it('should have correct id', () => { + expect(listItemFirstChild.id).toBe('listItemFirstChild') + }) + + describe('inside listItem', () => { + it('should exclude first child of listItem', () => { + const parent = { type: { name: 'listItem' } } as unknown as Node + const context = createMockContext({ + parent, + isFirst: true, + index: 0, + }) + + const result = listItemFirstChild.evaluate(context) + + expect(result).toBe(1000) + }) + + it('should not exclude non-first child of listItem', () => { + const parent = { type: { name: 'listItem' } } as unknown as Node + const context = createMockContext({ + parent, + isFirst: false, + index: 1, + }) + + const result = listItemFirstChild.evaluate(context) + + expect(result).toBe(0) + }) + }) + + describe('inside taskItem', () => { + it('should exclude first child of taskItem', () => { + const parent = { type: { name: 'taskItem' } } as unknown as Node + const context = createMockContext({ + parent, + isFirst: true, + index: 0, + }) + + const result = listItemFirstChild.evaluate(context) + + expect(result).toBe(1000) + }) + + it('should not exclude non-first child of taskItem', () => { + const parent = { type: { name: 'taskItem' } } as unknown as Node + const context = createMockContext({ + parent, + isFirst: false, + index: 1, + }) + + const result = listItemFirstChild.evaluate(context) + + expect(result).toBe(0) + }) + }) + + describe('outside list items', () => { + it('should not exclude first child of other containers', () => { + const parent = { type: { name: 'blockquote' } } as unknown as Node + const context = createMockContext({ + parent, + isFirst: true, + index: 0, + }) + + const result = listItemFirstChild.evaluate(context) + + expect(result).toBe(0) + }) + + it('should not exclude when parent is null', () => { + const context = createMockContext({ + parent: null, + isFirst: true, + index: 0, + }) + + const result = listItemFirstChild.evaluate(context) + + expect(result).toBe(0) + }) + + it('should not affect nodes in bulletList directly', () => { + const parent = { type: { name: 'bulletList' } } as unknown as Node + const context = createMockContext({ + parent, + isFirst: true, + index: 0, + }) + + const result = listItemFirstChild.evaluate(context) + + expect(result).toBe(0) + }) + }) +}) + +describe('inlineContent', () => { + it('should have correct id', () => { + expect(inlineContent.id).toBe('inlineContent') + }) + + it('should exclude inline nodes', () => { + const node = { + type: { name: 'text' }, + isInline: true, + isText: false, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = inlineContent.evaluate(context) + + expect(result).toBe(1000) + }) + + it('should exclude text nodes', () => { + const node = { + type: { name: 'text' }, + isInline: false, + isText: true, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = inlineContent.evaluate(context) + + expect(result).toBe(1000) + }) + + it('should not exclude block nodes', () => { + const node = { + type: { name: 'paragraph' }, + isInline: false, + isText: false, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = inlineContent.evaluate(context) + + expect(result).toBe(0) + }) + + it('should not exclude heading nodes', () => { + const node = { + type: { name: 'heading' }, + isInline: false, + isText: false, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = inlineContent.evaluate(context) + + expect(result).toBe(0) + }) + + it('should not exclude listItem nodes', () => { + const node = { + type: { name: 'listItem' }, + isInline: false, + isText: false, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = inlineContent.evaluate(context) + + expect(result).toBe(0) + }) +}) + +describe('listWrapperDeprioritize', () => { + it('should have correct id', () => { + expect(listWrapperDeprioritize.id).toBe('listWrapperDeprioritize') + }) + + it('should exclude nodes with listItem as first child', () => { + const firstChild = { type: { name: 'listItem' } } as unknown as Node + const node = { + type: { name: 'bulletList' }, + isInline: false, + isText: false, + firstChild, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = listWrapperDeprioritize.evaluate(context) + + expect(result).toBe(1000) + }) + + it('should exclude nodes with taskItem as first child', () => { + const firstChild = { type: { name: 'taskItem' } } as unknown as Node + const node = { + type: { name: 'taskList' }, + isInline: false, + isText: false, + firstChild, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = listWrapperDeprioritize.evaluate(context) + + expect(result).toBe(1000) + }) + + it('should not affect nodes with other first children', () => { + const firstChild = { type: { name: 'paragraph' } } as unknown as Node + const node = { + type: { name: 'blockquote' }, + isInline: false, + isText: false, + firstChild, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = listWrapperDeprioritize.evaluate(context) + + expect(result).toBe(0) + }) + + it('should not affect nodes with no children', () => { + const node = { + type: { name: 'horizontalRule' }, + isInline: false, + isText: false, + firstChild: null, + } as unknown as Node + + const context = createMockContext({ node }) + + const result = listWrapperDeprioritize.evaluate(context) + + expect(result).toBe(0) + }) +}) + +describe('defaultRules', () => { + it('should contain listItemFirstChild rule', () => { + expect(defaultRules).toContain(listItemFirstChild) + }) + + it('should contain listWrapperDeprioritize rule', () => { + expect(defaultRules).toContain(listWrapperDeprioritize) + }) + + it('should contain inlineContent rule', () => { + expect(defaultRules).toContain(inlineContent) + }) + + it('should have exactly 3 rules', () => { + expect(defaultRules).toHaveLength(3) + }) +}) diff --git a/packages/extension-drag-handle/__tests__/edgeDetection.spec.ts b/packages/extension-drag-handle/__tests__/edgeDetection.spec.ts new file mode 100644 index 0000000000..1c311df28d --- /dev/null +++ b/packages/extension-drag-handle/__tests__/edgeDetection.spec.ts @@ -0,0 +1,297 @@ +import { describe, expect, it } from 'vitest' + +import { calculateEdgeDeduction, isNearEdge, normalizeEdgeDetection } from '../src/helpers/edgeDetection.js' + +describe('normalizeEdgeDetection', () => { + describe('presets', () => { + it('should return default config for undefined', () => { + const result = normalizeEdgeDetection(undefined) + + expect(result).toEqual({ + edges: ['left', 'top'], + threshold: 12, + strength: 500, + }) + }) + + it('should return left preset config', () => { + const result = normalizeEdgeDetection('left') + + expect(result).toEqual({ + edges: ['left', 'top'], + threshold: 12, + strength: 500, + }) + }) + + it('should return right preset config', () => { + const result = normalizeEdgeDetection('right') + + expect(result).toEqual({ + edges: ['right', 'top'], + threshold: 12, + strength: 500, + }) + }) + + it('should return both preset config', () => { + const result = normalizeEdgeDetection('both') + + expect(result).toEqual({ + edges: ['left', 'right', 'top'], + threshold: 12, + strength: 500, + }) + }) + + it('should return none preset config', () => { + const result = normalizeEdgeDetection('none') + + expect(result).toEqual({ + edges: [], + threshold: 0, + strength: 0, + }) + }) + }) + + describe('custom config', () => { + it('should merge partial config with defaults', () => { + const result = normalizeEdgeDetection({ threshold: 20 }) + + expect(result).toEqual({ + edges: ['left', 'top'], + threshold: 20, + strength: 500, + }) + }) + + it('should merge partial config with custom edges', () => { + const result = normalizeEdgeDetection({ edges: ['bottom'] }) + + expect(result).toEqual({ + edges: ['bottom'], + threshold: 12, + strength: 500, + }) + }) + + it('should merge partial config with custom strength', () => { + const result = normalizeEdgeDetection({ strength: 250 }) + + expect(result).toEqual({ + edges: ['left', 'top'], + threshold: 12, + strength: 250, + }) + }) + + it('should accept full custom config', () => { + const result = normalizeEdgeDetection({ + edges: ['right', 'bottom'], + threshold: 30, + strength: 1000, + }) + + expect(result).toEqual({ + edges: ['right', 'bottom'], + threshold: 30, + strength: 1000, + }) + }) + + it('should handle negative threshold values', () => { + const result = normalizeEdgeDetection({ threshold: -16 }) + + expect(result).toEqual({ + edges: ['left', 'top'], + threshold: -16, + strength: 500, + }) + }) + }) +}) + +describe('isNearEdge', () => { + const mockElement = { + getBoundingClientRect: () => ({ + left: 100, + right: 300, + top: 50, + bottom: 150, + width: 200, + height: 100, + x: 100, + y: 50, + toJSON: () => ({}), + }), + } as HTMLElement + + describe('left edge', () => { + const config = { edges: ['left' as const], threshold: 12, strength: 500 } + + it('should return true when cursor is near left edge', () => { + const result = isNearEdge({ x: 105, y: 100 }, mockElement, config) + + expect(result).toBe(true) + }) + + it('should return false when cursor is far from left edge', () => { + const result = isNearEdge({ x: 150, y: 100 }, mockElement, config) + + expect(result).toBe(false) + }) + + it('should return true when cursor is exactly at threshold', () => { + const result = isNearEdge({ x: 111, y: 100 }, mockElement, config) + + expect(result).toBe(true) + }) + + it('should return false when cursor is just beyond threshold', () => { + const result = isNearEdge({ x: 113, y: 100 }, mockElement, config) + + expect(result).toBe(false) + }) + }) + + describe('right edge', () => { + const config = { edges: ['right' as const], threshold: 12, strength: 500 } + + it('should return true when cursor is near right edge', () => { + const result = isNearEdge({ x: 295, y: 100 }, mockElement, config) + + expect(result).toBe(true) + }) + + it('should return false when cursor is far from right edge', () => { + const result = isNearEdge({ x: 200, y: 100 }, mockElement, config) + + expect(result).toBe(false) + }) + }) + + describe('top edge', () => { + const config = { edges: ['top' as const], threshold: 12, strength: 500 } + + it('should return true when cursor is near top edge', () => { + const result = isNearEdge({ x: 200, y: 55 }, mockElement, config) + + expect(result).toBe(true) + }) + + it('should return false when cursor is far from top edge', () => { + const result = isNearEdge({ x: 200, y: 100 }, mockElement, config) + + expect(result).toBe(false) + }) + }) + + describe('bottom edge', () => { + const config = { edges: ['bottom' as const], threshold: 12, strength: 500 } + + it('should return true when cursor is near bottom edge', () => { + const result = isNearEdge({ x: 200, y: 145 }, mockElement, config) + + expect(result).toBe(true) + }) + + it('should return false when cursor is far from bottom edge', () => { + const result = isNearEdge({ x: 200, y: 100 }, mockElement, config) + + expect(result).toBe(false) + }) + }) + + describe('multiple edges', () => { + const config = { edges: ['left' as const, 'top' as const], threshold: 12, strength: 500 } + + it('should return true when near any configured edge', () => { + expect(isNearEdge({ x: 105, y: 100 }, mockElement, config)).toBe(true) + expect(isNearEdge({ x: 200, y: 55 }, mockElement, config)).toBe(true) + }) + + it('should return false when not near any configured edge', () => { + const result = isNearEdge({ x: 200, y: 100 }, mockElement, config) + + expect(result).toBe(false) + }) + }) + + describe('empty edges', () => { + const config = { edges: [] as const[], threshold: 12, strength: 500 } + + it('should return false when edges array is empty', () => { + const result = isNearEdge({ x: 100, y: 50 }, mockElement, config) + + expect(result).toBe(false) + }) + }) + + describe('negative threshold', () => { + const config = { edges: ['left' as const], threshold: -10, strength: 500 } + + it('should require cursor to be further inside with negative threshold', () => { + // At left edge (100), with -10 threshold, cursor at 105 is not "near" + // because 105 - 100 = 5, which is not < -10 + expect(isNearEdge({ x: 105, y: 100 }, mockElement, config)).toBe(false) + expect(isNearEdge({ x: 85, y: 100 }, mockElement, config)).toBe(true) + }) + }) +}) + +describe('calculateEdgeDeduction', () => { + const mockElement = { + getBoundingClientRect: () => ({ + left: 100, + right: 300, + top: 50, + bottom: 150, + width: 200, + height: 100, + x: 100, + y: 50, + toJSON: () => ({}), + }), + } as HTMLElement + + const config = { edges: ['left' as const], threshold: 12, strength: 500 } + + it('should return 0 when element is null', () => { + const result = calculateEdgeDeduction({ x: 105, y: 100 }, null, config, 2) + + expect(result).toBe(0) + }) + + it('should return 0 when edges array is empty', () => { + const emptyConfig = { edges: [] as const[], threshold: 12, strength: 500 } + const result = calculateEdgeDeduction({ x: 105, y: 100 }, mockElement, emptyConfig, 2) + + expect(result).toBe(0) + }) + + it('should return 0 when cursor is not near edge', () => { + const result = calculateEdgeDeduction({ x: 200, y: 100 }, mockElement, config, 2) + + expect(result).toBe(0) + }) + + it('should return strength * depth when cursor is near edge', () => { + const result = calculateEdgeDeduction({ x: 105, y: 100 }, mockElement, config, 2) + + expect(result).toBe(1000) // 500 * 2 + }) + + it('should scale deduction with depth', () => { + expect(calculateEdgeDeduction({ x: 105, y: 100 }, mockElement, config, 1)).toBe(500) + expect(calculateEdgeDeduction({ x: 105, y: 100 }, mockElement, config, 2)).toBe(1000) + expect(calculateEdgeDeduction({ x: 105, y: 100 }, mockElement, config, 3)).toBe(1500) + }) + + it('should use custom strength value', () => { + const customConfig = { edges: ['left' as const], threshold: 12, strength: 250 } + const result = calculateEdgeDeduction({ x: 105, y: 100 }, mockElement, customConfig, 2) + + expect(result).toBe(500) // 250 * 2 + }) +}) diff --git a/packages/extension-drag-handle/__tests__/normalizeOptions.spec.ts b/packages/extension-drag-handle/__tests__/normalizeOptions.spec.ts new file mode 100644 index 0000000000..32490af48f --- /dev/null +++ b/packages/extension-drag-handle/__tests__/normalizeOptions.spec.ts @@ -0,0 +1,146 @@ +import { describe, expect, it } from 'vitest' + +import { normalizeNestedOptions } from '../src/helpers/normalizeOptions.js' +import type { DragHandleRule } from '../src/types/rules.js' + +describe('normalizeNestedOptions', () => { + describe('disabled states', () => { + it('should return disabled config for undefined', () => { + const result = normalizeNestedOptions(undefined) + + expect(result.enabled).toBe(false) + expect(result.rules).toEqual([]) + expect(result.defaultRules).toBe(true) + expect(result.allowedContainers).toBeUndefined() + expect(result.edgeDetection.edges).toEqual([]) + }) + + it('should return disabled config for false', () => { + const result = normalizeNestedOptions(false) + + expect(result.enabled).toBe(false) + expect(result.rules).toEqual([]) + expect(result.defaultRules).toBe(true) + expect(result.allowedContainers).toBeUndefined() + expect(result.edgeDetection.edges).toEqual([]) + }) + }) + + describe('simple enable', () => { + it('should return enabled config with defaults for true', () => { + const result = normalizeNestedOptions(true) + + expect(result.enabled).toBe(true) + expect(result.rules).toEqual([]) + expect(result.defaultRules).toBe(true) + expect(result.allowedContainers).toBeUndefined() + expect(result.edgeDetection).toEqual({ + edges: ['left', 'top'], + threshold: 12, + strength: 500, + }) + }) + }) + + describe('custom config', () => { + it('should accept custom rules', () => { + const customRule: DragHandleRule = { + id: 'customRule', + evaluate: () => 0, + } + + const result = normalizeNestedOptions({ rules: [customRule] }) + + expect(result.enabled).toBe(true) + expect(result.rules).toHaveLength(1) + expect(result.rules[0].id).toBe('customRule') + }) + + it('should accept defaultRules: false', () => { + const result = normalizeNestedOptions({ defaultRules: false }) + + expect(result.enabled).toBe(true) + expect(result.defaultRules).toBe(false) + }) + + it('should default defaultRules to true when not specified', () => { + const result = normalizeNestedOptions({}) + + expect(result.defaultRules).toBe(true) + }) + + it('should accept allowedContainers', () => { + const result = normalizeNestedOptions({ + allowedContainers: ['bulletList', 'orderedList'], + }) + + expect(result.enabled).toBe(true) + expect(result.allowedContainers).toEqual(['bulletList', 'orderedList']) + }) + + it('should accept edge detection preset', () => { + const result = normalizeNestedOptions({ edgeDetection: 'right' }) + + expect(result.enabled).toBe(true) + expect(result.edgeDetection).toEqual({ + edges: ['right', 'top'], + threshold: 12, + strength: 500, + }) + }) + + it('should accept edge detection config object', () => { + const result = normalizeNestedOptions({ + edgeDetection: { threshold: 20, strength: 250 }, + }) + + expect(result.enabled).toBe(true) + expect(result.edgeDetection).toEqual({ + edges: ['left', 'top'], + threshold: 20, + strength: 250, + }) + }) + + it('should accept edge detection "none"', () => { + const result = normalizeNestedOptions({ edgeDetection: 'none' }) + + expect(result.enabled).toBe(true) + expect(result.edgeDetection).toEqual({ + edges: [], + threshold: 0, + strength: 0, + }) + }) + + it('should handle full custom config', () => { + const customRule: DragHandleRule = { + id: 'myRule', + evaluate: () => 100, + } + + const result = normalizeNestedOptions({ + rules: [customRule], + defaultRules: false, + allowedContainers: ['taskList'], + edgeDetection: { edges: ['bottom'], threshold: 50, strength: 1000 }, + }) + + expect(result.enabled).toBe(true) + expect(result.rules).toEqual([customRule]) + expect(result.defaultRules).toBe(false) + expect(result.allowedContainers).toEqual(['taskList']) + expect(result.edgeDetection).toEqual({ + edges: ['bottom'], + threshold: 50, + strength: 1000, + }) + }) + + it('should default rules to empty array when not specified', () => { + const result = normalizeNestedOptions({ edgeDetection: 'both' }) + + expect(result.rules).toEqual([]) + }) + }) +}) diff --git a/packages/extension-drag-handle/__tests__/scoring.spec.ts b/packages/extension-drag-handle/__tests__/scoring.spec.ts new file mode 100644 index 0000000000..98726786b5 --- /dev/null +++ b/packages/extension-drag-handle/__tests__/scoring.spec.ts @@ -0,0 +1,258 @@ +import type { Node, ResolvedPos } from '@tiptap/pm/model' +import type { EditorView } from '@tiptap/pm/view' +import { describe, expect, it, vi } from 'vitest' + +import { BASE_SCORE, calculateScore } from '../src/helpers/scoring.js' +import type { EdgeDetectionConfig } from '../src/types/options.js' +import type { DragHandleRule, RuleContext } from '../src/types/rules.js' + +/** + * Creates a mock RuleContext for testing. + */ +function createMockContext(overrides: Partial = {}): RuleContext { + const mockNode = { + type: { name: 'paragraph' }, + isInline: false, + isText: false, + } as unknown as Node + + const mockView = { + nodeDOM: vi.fn(() => null), + } as unknown as EditorView + + return { + node: mockNode, + pos: 0, + depth: 1, + parent: null, + index: 0, + isFirst: true, + isLast: true, + $pos: {} as ResolvedPos, + view: mockView, + ...overrides, + } +} + +describe('BASE_SCORE', () => { + it('should be 1000', () => { + expect(BASE_SCORE).toBe(1000) + }) +}) + +describe('calculateScore', () => { + const defaultEdgeConfig: EdgeDetectionConfig = { + edges: [], + threshold: 0, + strength: 0, + } + + const defaultCoords = { x: 100, y: 100 } + + describe('without rules', () => { + it('should return base score when no rules are applied', () => { + const context = createMockContext() + const result = calculateScore(context, [], defaultEdgeConfig, defaultCoords) + + expect(result).toBe(BASE_SCORE) + }) + }) + + describe('with rules', () => { + it('should apply single rule deduction', () => { + const context = createMockContext() + const rules: DragHandleRule[] = [{ id: 'test', evaluate: () => 100 }] + + const result = calculateScore(context, rules, defaultEdgeConfig, defaultCoords) + + expect(result).toBe(900) // 1000 - 100 + }) + + it('should apply multiple rule deductions', () => { + const context = createMockContext() + const rules: DragHandleRule[] = [ + { id: 'rule1', evaluate: () => 100 }, + { id: 'rule2', evaluate: () => 200 }, + ] + + const result = calculateScore(context, rules, defaultEdgeConfig, defaultCoords) + + expect(result).toBe(700) // 1000 - 100 - 200 + }) + + it('should return -1 when score drops to 0 or below', () => { + const context = createMockContext() + const rules: DragHandleRule[] = [{ id: 'exclude', evaluate: () => 1000 }] + + const result = calculateScore(context, rules, defaultEdgeConfig, defaultCoords) + + expect(result).toBe(-1) + }) + + it('should return -1 when score goes negative', () => { + const context = createMockContext() + const rules: DragHandleRule[] = [{ id: 'exclude', evaluate: () => 1500 }] + + const result = calculateScore(context, rules, defaultEdgeConfig, defaultCoords) + + expect(result).toBe(-1) + }) + + it('should stop evaluating rules after exclusion', () => { + const context = createMockContext() + const secondRuleEvaluate = vi.fn(() => 100) + const rules: DragHandleRule[] = [ + { id: 'exclude', evaluate: () => 1000 }, + { id: 'second', evaluate: secondRuleEvaluate }, + ] + + calculateScore(context, rules, defaultEdgeConfig, defaultCoords) + + expect(secondRuleEvaluate).not.toHaveBeenCalled() + }) + + it('should support negative deductions (score boosts)', () => { + const context = createMockContext() + const rules: DragHandleRule[] = [{ id: 'boost', evaluate: () => -200 }] + + const result = calculateScore(context, rules, defaultEdgeConfig, defaultCoords) + + expect(result).toBe(1200) // 1000 - (-200) = 1200 + }) + + it('should pass context to rule evaluate function', () => { + const mockNode = { + type: { name: 'heading' }, + isInline: false, + isText: false, + } as unknown as Node + + const context = createMockContext({ + node: mockNode, + depth: 2, + isFirst: false, + }) + + const evaluateFn = vi.fn(() => 0) + const rules: DragHandleRule[] = [{ id: 'test', evaluate: evaluateFn }] + + calculateScore(context, rules, defaultEdgeConfig, defaultCoords) + + expect(evaluateFn).toHaveBeenCalledWith(context) + }) + }) + + describe('with edge detection', () => { + it('should apply edge deduction when near edge', () => { + const mockElement = { + getBoundingClientRect: () => ({ + left: 50, + right: 250, + top: 50, + bottom: 150, + width: 200, + height: 100, + x: 50, + y: 50, + toJSON: () => ({}), + }), + } + + const mockView = { + nodeDOM: vi.fn(() => mockElement), + } as unknown as EditorView + + const context = createMockContext({ + view: mockView, + depth: 2, + }) + + const edgeConfig: EdgeDetectionConfig = { + edges: ['left'], + threshold: 100, // Large threshold to ensure we're "near" the edge + strength: 500, + } + + // Cursor at x=100, element left at 50, so distance is 50 which is < 100 threshold + const result = calculateScore(context, [], edgeConfig, { x: 100, y: 100 }) + + // Should deduct strength * depth = 500 * 2 = 1000, resulting in score 0 + // Score <= 0 returns -1 for consistency with rule-based exclusion + expect(result).toBe(-1) + }) + + it('should not apply edge deduction when not near edge', () => { + const mockElement = { + getBoundingClientRect: () => ({ + left: 50, + right: 250, + top: 50, + bottom: 150, + width: 200, + height: 100, + x: 50, + y: 50, + toJSON: () => ({}), + }), + } + + const mockView = { + nodeDOM: vi.fn(() => mockElement), + } as unknown as EditorView + + const context = createMockContext({ + view: mockView, + depth: 2, + }) + + const edgeConfig: EdgeDetectionConfig = { + edges: ['left'], + threshold: 10, // Small threshold + strength: 500, + } + + // Cursor at x=150, element left at 50, distance is 100 which is > 10 threshold + const result = calculateScore(context, [], edgeConfig, { x: 150, y: 100 }) + + expect(result).toBe(BASE_SCORE) // No deduction + }) + + it('should combine rule deductions with edge deductions', () => { + const mockElement = { + getBoundingClientRect: () => ({ + left: 50, + right: 250, + top: 50, + bottom: 150, + width: 200, + height: 100, + x: 50, + y: 50, + toJSON: () => ({}), + }), + } + + const mockView = { + nodeDOM: vi.fn(() => mockElement), + } as unknown as EditorView + + const context = createMockContext({ + view: mockView, + depth: 1, + }) + + const rules: DragHandleRule[] = [{ id: 'test', evaluate: () => 100 }] + + const edgeConfig: EdgeDetectionConfig = { + edges: ['left'], + threshold: 100, + strength: 200, + } + + const result = calculateScore(context, rules, edgeConfig, { x: 100, y: 100 }) + + // 1000 - 100 (rule) - 200 (edge: 200 * 1) = 700 + expect(result).toBe(700) + }) + }) +}) diff --git a/packages/extension-drag-handle/src/drag-handle-plugin.ts b/packages/extension-drag-handle/src/drag-handle-plugin.ts index 2b8b4bdf7a..145644e0aa 100644 --- a/packages/extension-drag-handle/src/drag-handle-plugin.ts +++ b/packages/extension-drag-handle/src/drag-handle-plugin.ts @@ -14,6 +14,7 @@ import { dragHandler } from './helpers/dragHandler.js' import { findElementNextToCoords } from './helpers/findNextElementFromCursor.js' import { getOuterNode, getOuterNodePos } from './helpers/getOuterNode.js' import { removeNode } from './helpers/removeNode.js' +import type { NormalizedNestedOptions } from './types/options.js' type PluginState = { locked: boolean @@ -64,6 +65,7 @@ export interface DragHandlePluginProps { onElementDragEnd?: (e: DragEvent) => void computePositionConfig?: ComputePositionConfig getReferencedVirtualElement?: () => VirtualElement | null + nestedOptions: NormalizedNestedOptions } export const dragHandlePluginDefaultKey = new PluginKey('dragHandle') @@ -77,6 +79,7 @@ export const DragHandlePlugin = ({ onNodeChange, onElementDragStart, onElementDragEnd, + nestedOptions, }: DragHandlePluginProps) => { const wrapper = document.createElement('div') let locked = false @@ -128,8 +131,8 @@ export const DragHandlePlugin = ({ onElementDragStart?.(e) // Push this to the end of the event cue // Fixes bug where incorrect drag pos is returned if drag handle has position: absolute - // @ts-ignore - dragHandler(e, editor) + // Pass the current node context to avoid recalculation issues during drag start + dragHandler(e, editor, nestedOptions, { node: currentNode, pos: currentNodePos }) if (element) { element.dataset.dragging = 'true' @@ -378,6 +381,7 @@ export const DragHandlePlugin = ({ y, direction: 'right', editor, + nestedOptions, }) // Skip if there is no node next to coords @@ -386,27 +390,33 @@ export const DragHandlePlugin = ({ } let domNode = nodeData.resultElement as HTMLElement + let targetNode = nodeData.resultNode + let targetPos = nodeData.pos - domNode = getOuterDomNode(view, domNode) + // In nested mode, the node data already contains the correct target + // In non-nested mode, traverse to the top-level block + if (!nestedOptions?.enabled) { + domNode = getOuterDomNode(view, domNode) - // Skip if domNode is editor dom. - if (domNode === view.dom) { - return - } + // Skip if domNode is editor dom. + if (domNode === view.dom) { + return + } - // We only want `Element`. - if (domNode?.nodeType !== 1) { - return - } + // We only want `Element`. + if (domNode?.nodeType !== 1) { + return + } - const domNodePos = view.posAtDOM(domNode, 0) - const outerNode = getOuterNode(editor.state.doc, domNodePos) + const domNodePos = view.posAtDOM(domNode, 0) - if (outerNode !== currentNode) { - const outerNodePos = getOuterNodePos(editor.state.doc, domNodePos) + targetNode = getOuterNode(editor.state.doc, domNodePos) + targetPos = getOuterNodePos(editor.state.doc, domNodePos) + } - currentNode = outerNode - currentNodePos = outerNodePos + if (targetNode !== currentNode) { + currentNode = targetNode + currentNodePos = targetPos ?? -1 // Memorize relative position to retrieve absolute position in case of collaboration currentNodeRelPos = getRelativePos(view.state, currentNodePos) diff --git a/packages/extension-drag-handle/src/drag-handle.ts b/packages/extension-drag-handle/src/drag-handle.ts index d7c3960310..504402c403 100644 --- a/packages/extension-drag-handle/src/drag-handle.ts +++ b/packages/extension-drag-handle/src/drag-handle.ts @@ -3,6 +3,8 @@ import { type Editor, Extension } from '@tiptap/core' import type { Node } from '@tiptap/pm/model' import { DragHandlePlugin } from './drag-handle-plugin.js' +import { normalizeNestedOptions } from './helpers/normalizeOptions.js' +import type { NestedOptions } from './types/options.js' export const defaultComputePositionConfig: ComputePositionConfig = { placement: 'left-start', @@ -40,6 +42,57 @@ export interface DragHandleOptions { * The callback function that will be called when drag end. */ onElementDragEnd?: (e: DragEvent) => void + /** + * Enable drag handles for nested content (list items, blockquotes, etc.). + * + * When enabled, the drag handle will appear for nested blocks, not just + * top-level blocks. A rule-based scoring system determines which node + * to target based on cursor position and configured rules. + * + * **Values:** + * - `false` (default): Only root-level blocks show drag handles + * - `true`: Enable with sensible defaults (left edge detection, default rules) + * - `NestedOptions`: Enable with custom configuration + * + * **Configuration options:** + * - `rules`: Custom rules to determine which nodes are draggable + * - `defaultRules`: Whether to include default rules (default: true) + * - `allowedContainers`: Restrict nested dragging to specific container types + * - `edgeDetection`: Control when to prefer parent over nested node + * - `'left'` (default): Prefer parent near left/top edges + * - `'right'`: Prefer parent near right/top edges (for RTL) + * - `'both'`: Prefer parent near any horizontal edge + * - `'none'`: Disable edge detection + * + * @default false + * + * @example + * // Simple enable with sensible defaults + * DragHandle.configure({ + * nested: true, + * }) + * + * @example + * // Restrict to specific containers + * DragHandle.configure({ + * nested: { + * allowedContainers: ['bulletList', 'orderedList'], + * }, + * }) + * + * @example + * // With custom rules + * DragHandle.configure({ + * nested: { + * rules: [{ + * id: 'excludeCodeBlocks', + * evaluate: ({ node }) => node.type.name === 'codeBlock' ? 1000 : 0, + * }], + * edgeDetection: 'none', + * }, + * }) + */ + nested?: boolean | NestedOptions } declare module '@tiptap/core' { @@ -80,6 +133,7 @@ export const DragHandle = Extension.create({ }, onElementDragStart: undefined, onElementDragEnd: undefined, + nested: false, } }, @@ -108,6 +162,7 @@ export const DragHandle = Extension.create({ addProseMirrorPlugins() { const element = this.options.render() + const nestedOptions = normalizeNestedOptions(this.options.nested) return [ DragHandlePlugin({ @@ -118,6 +173,7 @@ export const DragHandle = Extension.create({ onNodeChange: this.options.onNodeChange, onElementDragStart: this.options.onElementDragStart, onElementDragEnd: this.options.onElementDragEnd, + nestedOptions, }).plugin, ] }, diff --git a/packages/extension-drag-handle/src/helpers/defaultRules.ts b/packages/extension-drag-handle/src/helpers/defaultRules.ts new file mode 100644 index 0000000000..192a83733d --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/defaultRules.ts @@ -0,0 +1,71 @@ +import type { DragHandleRule } from '../types/rules.js' + +/** + * The first child inside a list item is the list item's content. + * It cannot be dragged separately - you drag the list item instead. + * + * Example: In `
  • Text

  • `, the paragraph is excluded, + * but the listItem is draggable. + */ +export const listItemFirstChild: DragHandleRule = { + id: 'listItemFirstChild', + evaluate: ({ parent, isFirst }) => { + if (!isFirst) { + return 0 + } + + const listItemTypes = ['listItem', 'taskItem'] + + if (parent && listItemTypes.includes(parent.type.name)) { + return 1000 + } + + return 0 + }, +} + +/** + * Nodes that contain list items (listItem/taskItem) as direct children + * are deprioritized. This makes it easier to target individual list items + * rather than the entire list wrapper. + * + * This rule detects list wrappers dynamically by checking if the first child + * is a list item, rather than hardcoding wrapper type names. + * + * Users can still target the list wrapper by moving to the very edge + * where edge detection kicks in. + */ +export const listWrapperDeprioritize: DragHandleRule = { + id: 'listWrapperDeprioritize', + evaluate: ({ node }) => { + const listItemTypes = ['listItem', 'taskItem'] + + const firstChild = node.firstChild + + if (firstChild && listItemTypes.includes(firstChild.type.name)) { + return 1000 + } + + return 0 + }, +} + +/** + * Inline nodes (text, marks, inline atoms) should never be drag targets. + */ +export const inlineContent: DragHandleRule = { + id: 'inlineContent', + evaluate: ({ node }) => { + if (node.isInline || node.isText) { + return 1000 + } + + return 0 + }, +} + +/** + * All default rules. + * Users can extend these or replace them entirely. + */ +export const defaultRules: DragHandleRule[] = [listItemFirstChild, listWrapperDeprioritize, inlineContent] diff --git a/packages/extension-drag-handle/src/helpers/dragHandler.ts b/packages/extension-drag-handle/src/helpers/dragHandler.ts index 2e116af229..a519fbd9d8 100644 --- a/packages/extension-drag-handle/src/helpers/dragHandler.ts +++ b/packages/extension-drag-handle/src/helpers/dragHandler.ts @@ -1,50 +1,66 @@ import type { Editor } from '@tiptap/core' import { getSelectionRanges, NodeRangeSelection } from '@tiptap/extension-node-range' -import type { SelectionRange } from '@tiptap/pm/state' +import type { Node } from '@tiptap/pm/model' +import { type SelectionRange, NodeSelection } from '@tiptap/pm/state' +import type { NormalizedNestedOptions } from '../types/options.js' import { cloneElement } from './cloneElement.js' import { findElementNextToCoords } from './findNextElementFromCursor.js' -import { getInnerCoords } from './getInnerCoords.js' import { removeNode } from './removeNode.js' -function getDragHandleRanges(event: DragEvent, editor: Editor): SelectionRange[] { +export interface DragContext { + node: Node | null + pos: number +} + +function getDragHandleRanges( + event: DragEvent, + editor: Editor, + nestedOptions?: NormalizedNestedOptions, + dragContext?: DragContext, +): SelectionRange[] { const { doc } = editor.view.state + // In nested mode with known context, use the pre-calculated position + // This prevents recalculation issues when mouse position shifts during drag start + if (nestedOptions?.enabled && dragContext?.node && dragContext.pos >= 0) { + const nodeStart = dragContext.pos + const nodeEnd = dragContext.pos + dragContext.node.nodeSize + + return [ + { + $from: doc.resolve(nodeStart), + $to: doc.resolve(nodeEnd), + }, + ] + } + + // Fallback: recalculate from mouse position (used in non-nested mode) const result = findElementNextToCoords({ editor, x: event.clientX, y: event.clientY, direction: 'right', + nestedOptions, }) if (!result.resultNode || result.pos === null) { return [] } - const x = event.clientX - - // @ts-ignore - const coords = getInnerCoords(editor.view, x, event.clientY) - const posAtCoords = editor.view.posAtCoords(coords) - - if (!posAtCoords) { - return [] - } - - const { pos } = posAtCoords - const nodeAt = doc.resolve(pos).parent - - if (!nodeAt) { - return [] - } - + // For non-nested mode, use depth 0 to select the outermost block const $from = doc.resolve(result.pos) - const $to = doc.resolve(result.pos + 1) + const $to = doc.resolve(result.pos + result.resultNode.nodeSize) return getSelectionRanges($from, $to, 0) } -export function dragHandler(event: DragEvent, editor: Editor) { +export function dragHandler( + event: DragEvent, + editor: Editor, + nestedOptions?: NormalizedNestedOptions, + dragContext?: DragContext, +) { const { view } = editor if (!event.dataTransfer) { @@ -53,7 +69,7 @@ export function dragHandler(event: DragEvent, editor: Editor) { const { empty, $from, $to } = view.state.selection - const dragHandleRanges = getDragHandleRanges(event, editor) + const dragHandleRanges = getDragHandleRanges(event, editor, nestedOptions, dragContext) const selectionRanges = getSelectionRanges($from, $to, 0) const isDragHandleWithinSelection = selectionRanges.some(range => { @@ -73,8 +89,23 @@ export function dragHandler(event: DragEvent, editor: Editor) { const from = ranges[0].$from.pos const to = ranges[ranges.length - 1].$to.pos - const selection = NodeRangeSelection.create(view.state.doc, from, to) - const slice = selection.content() + // For nested mode, create slice directly to avoid NodeRangeSelection expanding to parent + const isNestedDrag = nestedOptions?.enabled && dragContext?.node + + let slice + let selection + + if (isNestedDrag) { + // Create slice directly from the exact positions + slice = view.state.doc.slice(from, to) + + // Use NodeSelection for nested mode to select exactly the target node + // NodeRangeSelection would expand to the parent + selection = NodeSelection.create(view.state.doc, from) + } else { + selection = NodeRangeSelection.create(view.state.doc, from, to) + slice = selection.content() + } ranges.forEach(range => { const element = view.nodeDOM(range.$from.pos) as HTMLElement diff --git a/packages/extension-drag-handle/src/helpers/edgeDetection.ts b/packages/extension-drag-handle/src/helpers/edgeDetection.ts new file mode 100644 index 0000000000..48e32c27db --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/edgeDetection.ts @@ -0,0 +1,109 @@ +import type { EdgeDetectionConfig, EdgeDetectionPreset } from '../types/options.js' + +/** + * Default edge detection configuration. + */ +const DEFAULT_EDGE_CONFIG: EdgeDetectionConfig = { + edges: ['left', 'top'], + threshold: 12, + strength: 500, +} + +/** + * Normalizes edge detection presets or custom config into a full config object. + * Partial configs are merged with defaults. + * + * @param input - The preset string or partial/full config + * @returns A complete EdgeDetectionConfig + */ +export function normalizeEdgeDetection( + input: EdgeDetectionPreset | Partial | undefined, +): EdgeDetectionConfig { + if (input === undefined || input === 'left') { + return { ...DEFAULT_EDGE_CONFIG } + } + + if (input === 'right') { + return { edges: ['right', 'top'], threshold: 12, strength: 500 } + } + + if (input === 'both') { + return { edges: ['left', 'right', 'top'], threshold: 12, strength: 500 } + } + + if (input === 'none') { + return { edges: [], threshold: 0, strength: 0 } + } + + // Merge partial config with defaults + return { ...DEFAULT_EDGE_CONFIG, ...input } +} + +/** + * Determines if cursor is near specified edges of an element. + * + * @param coords - The cursor coordinates + * @param element - The element to check against + * @param config - The edge detection configuration + * @returns True if the cursor is near any of the configured edges + */ +export function isNearEdge( + coords: { x: number; y: number }, + element: HTMLElement, + config: EdgeDetectionConfig, +): boolean { + if (config.edges.length === 0) { + return false + } + + const rect = element.getBoundingClientRect() + const { threshold, edges } = config + + return edges.some(edge => { + if (edge === 'left') { + return coords.x - rect.left < threshold + } + + if (edge === 'right') { + return rect.right - coords.x < threshold + } + + if (edge === 'top') { + return coords.y - rect.top < threshold + } + + if (edge === 'bottom') { + return rect.bottom - coords.y < threshold + } + + return false + }) +} + +/** + * Calculates score deduction for edge proximity. + * Deeper nodes get larger deductions when near edges, + * making shallower (parent) nodes win. + * + * @param coords - The cursor coordinates + * @param element - The element to check against (may be null) + * @param config - The edge detection configuration + * @param depth - The depth of the node in the document tree + * @returns The score deduction to apply + */ +export function calculateEdgeDeduction( + coords: { x: number; y: number }, + element: HTMLElement | null, + config: EdgeDetectionConfig, + depth: number, +): number { + if (!element || config.edges.length === 0) { + return 0 + } + + if (isNearEdge(coords, element, config)) { + return config.strength * depth + } + + return 0 +} diff --git a/packages/extension-drag-handle/src/helpers/findBestDragTarget.ts b/packages/extension-drag-handle/src/helpers/findBestDragTarget.ts new file mode 100644 index 0000000000..b6e35e44c0 --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/findBestDragTarget.ts @@ -0,0 +1,140 @@ +import type { Node, ResolvedPos } from '@tiptap/pm/model' +import type { EditorView } from '@tiptap/pm/view' + +import type { NormalizedNestedOptions } from '../types/options.js' +import type { DragHandleRule, RuleContext } from '../types/rules.js' +import { defaultRules } from './defaultRules.js' +import { calculateScore } from './scoring.js' + +/** + * Represents a drag target with its node, position, and DOM element. + */ +export interface DragTarget { + /** The ProseMirror node */ + node: Node + + /** The absolute position in the document */ + pos: number + + /** The corresponding DOM element */ + dom: HTMLElement +} + +/** + * Checks if any ancestor at or above the given depth is in the allowed list. + * + * @param $pos - The resolved position + * @param depth - The current depth being checked + * @param allowedTypes - The list of allowed node type names + * @returns True if any ancestor is in the allowed list + */ +function hasAncestorOfType($pos: ResolvedPos, depth: number, allowedTypes: string[]): boolean { + const ancestorDepths = Array.from({ length: depth }, (_, i) => depth - 1 - i) + + return ancestorDepths.some(d => allowedTypes.includes($pos.node(d).type.name)) +} + +/** + * Finds the best drag target at the given coordinates using the scoring system. + * + * @param view - The editor view + * @param coords - The cursor coordinates + * @param options - The normalized nested options + * @returns The best drag target, or null if none found + */ +export function findBestDragTarget( + view: EditorView, + coords: { x: number; y: number }, + options: NormalizedNestedOptions, +): DragTarget | null { + // Validate coordinates are finite numbers to prevent DOM errors + if (!Number.isFinite(coords.x) || !Number.isFinite(coords.y)) { + return null + } + + // ProseMirror expects { left, top } format for coordinates + const posInfo = view.posAtCoords({ left: coords.x, top: coords.y }) + + if (!posInfo) { + return null + } + + const { doc } = view.state + const $pos = doc.resolve(posInfo.pos) + + const rules: DragHandleRule[] = [] + + if (options.defaultRules) { + rules.push(...defaultRules) + } + + rules.push(...options.rules) + + // Start from depth 1 to exclude the doc node (depth 0) which should never be draggable + const depthLevels = Array.from({ length: $pos.depth }, (_, i) => $pos.depth - i) + + const candidates = depthLevels + .map(depth => { + const node = $pos.node(depth) + const nodePos = $pos.before(depth) + + if (options.allowedContainers && depth > 0) { + const inAllowedContainer = hasAncestorOfType($pos, depth, options.allowedContainers) + + if (!inAllowedContainer) { + return null + } + } + + const parent = depth > 0 ? $pos.node(depth - 1) : null + const index = depth > 0 ? $pos.index(depth - 1) : 0 + const siblingCount = parent ? parent.childCount : 1 + + const context: RuleContext = { + node, + pos: nodePos, + depth, + parent, + index, + isFirst: index === 0, + isLast: index === siblingCount - 1, + $pos, + view, + } + + const score = calculateScore(context, rules, options.edgeDetection, coords) + + if (score < 0) { + return null + } + + const dom = view.nodeDOM(nodePos) as HTMLElement | null + + return { node, pos: nodePos, depth, score, dom } + }) + .filter((candidate): candidate is NonNullable => candidate !== null) + + if (candidates.length === 0) { + return null + } + + candidates.sort((a, b) => { + if (b.score !== a.score) { + return b.score - a.score + } + + return b.depth - a.depth + }) + + const winner = candidates[0] + + if (!winner.dom) { + return null + } + + return { + node: winner.node, + pos: winner.pos, + dom: winner.dom, + } +} diff --git a/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts b/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts index 9009365a21..92c4c72816 100644 --- a/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts +++ b/packages/extension-drag-handle/src/helpers/findNextElementFromCursor.ts @@ -2,11 +2,15 @@ import type { Editor } from '@tiptap/core' import type { Node } from '@tiptap/pm/model' import type { EditorView } from '@tiptap/pm/view' +import type { NormalizedNestedOptions } from '../types/options.js' +import { findBestDragTarget } from './findBestDragTarget.js' + export type FindElementNextToCoords = { x: number y: number direction?: 'left' | 'right' editor: Editor + nestedOptions?: NormalizedNestedOptions } /** @@ -22,22 +26,46 @@ export function findClosestTopLevelBlock(element: Element, view: EditorView): HT return current?.parentElement === view.dom ? (current as HTMLElement) : undefined } +/** + * Checks if a DOMRect has valid, finite dimensions. + */ +function isValidRect(rect: DOMRect): boolean { + return ( + Number.isFinite(rect.top) && + Number.isFinite(rect.bottom) && + Number.isFinite(rect.left) && + Number.isFinite(rect.right) && + rect.width > 0 && + rect.height > 0 + ) +} + /** * Clamps coordinates to content bounds with O(1) layout reads */ -function clampToContent(view: EditorView, x: number, y: number, inset = 5): { x: number; y: number } { +function clampToContent(view: EditorView, x: number, y: number, inset = 5): { x: number; y: number } | null { + // Validate input coordinates are finite numbers + if (!Number.isFinite(x) || !Number.isFinite(y)) { + return null + } + const container = view.dom const firstBlock = container.firstElementChild const lastBlock = container.lastElementChild if (!firstBlock || !lastBlock) { - // this condition will never be met, as the first child element will be treated as last child element too - return { x, y } + return null } // Clamp Y between first and last block const topRect = firstBlock.getBoundingClientRect() const botRect = lastBlock.getBoundingClientRect() + + // Validate bounding rects have finite values + if (!isValidRect(topRect) || !isValidRect(botRect)) { + return null + } + const clampedY = Math.min(Math.max(topRect.top + inset, y), botRect.bottom - inset) const epsilon = 0.5 @@ -55,9 +83,14 @@ function clampToContent(view: EditorView, x: number, y: number, inset = 5): { x: // This case is rare, avoid for now } - // Clamp X to the chosen block’s bounds + // Clamp X to the chosen block's bounds const clampedX = Math.min(Math.max(rowRect.left + inset, x), rowRect.right - inset) + // Final validation of output coordinates + if (!Number.isFinite(clampedX) || !Number.isFinite(clampedY)) { + return null + } + return { x: clampedX, y: clampedY } } @@ -68,11 +101,34 @@ export const findElementNextToCoords = ( resultNode: Node | null pos: number | null } => { - const { x, y, editor } = options + const { x, y, editor, nestedOptions } = options const { view, state } = editor - const { x: clampedX, y: clampedY } = clampToContent(view, x, y, 5) + const clamped = clampToContent(view, x, y, 5) + + // Return early if coordinates could not be clamped to valid bounds + if (!clamped) { + return { resultElement: null, resultNode: null, pos: null } + } + + const { x: clampedX, y: clampedY } = clamped + + // When nested mode is enabled, use the scoring-based detection + if (nestedOptions?.enabled) { + const target = findBestDragTarget(view, { x: clampedX, y: clampedY }, nestedOptions) + + if (!target) { + return { resultElement: null, resultNode: null, pos: null } + } + + return { + resultElement: target.dom, + resultNode: target.node, + pos: target.pos, + } + } + // Original root-level detection for non-nested mode const elements = view.root.elementsFromPoint(clampedX, clampedY) let block: HTMLElement | undefined diff --git a/packages/extension-drag-handle/src/helpers/normalizeOptions.ts b/packages/extension-drag-handle/src/helpers/normalizeOptions.ts new file mode 100644 index 0000000000..0d9b4f4faf --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/normalizeOptions.ts @@ -0,0 +1,48 @@ +import type { NestedOptions, NormalizedNestedOptions } from '../types/options.js' +import { normalizeEdgeDetection } from './edgeDetection.js' + +/** + * Normalizes the nested options input into a complete configuration object. + * + * @param input - The nested option (boolean, object, or undefined) + * @returns A fully normalized options object + * + * @example + * // Simple enable + * normalizeNestedOptions(true) + * // Returns: { enabled: true, rules: [], defaultRules: true, ... } + * + * @example + * // Custom config + * normalizeNestedOptions({ rules: [myRule], edgeDetection: 'none' }) + * // Returns: { enabled: true, rules: [myRule], edgeDetection: { edges: [], ... } } + */ +export function normalizeNestedOptions(input: boolean | NestedOptions | undefined): NormalizedNestedOptions { + if (input === false || input === undefined) { + return { + enabled: false, + rules: [], + defaultRules: true, + allowedContainers: undefined, + edgeDetection: normalizeEdgeDetection('none'), + } + } + + if (input === true) { + return { + enabled: true, + rules: [], + defaultRules: true, + allowedContainers: undefined, + edgeDetection: normalizeEdgeDetection('left'), + } + } + + return { + enabled: true, + rules: input.rules ?? [], + defaultRules: input.defaultRules ?? true, + allowedContainers: input.allowedContainers, + edgeDetection: normalizeEdgeDetection(input.edgeDetection), + } +} diff --git a/packages/extension-drag-handle/src/helpers/scoring.ts b/packages/extension-drag-handle/src/helpers/scoring.ts new file mode 100644 index 0000000000..5c8ea21fea --- /dev/null +++ b/packages/extension-drag-handle/src/helpers/scoring.ts @@ -0,0 +1,56 @@ +import type { EdgeDetectionConfig } from '../types/options.js' +import type { DragHandleRule, RuleContext } from '../types/rules.js' +import { calculateEdgeDeduction } from './edgeDetection.js' + +/** + * Base score for all nodes. Rules deduct from this score. + * A node with score <= 0 is excluded from being a drag target. + */ +export const BASE_SCORE = 1000 + +/** + * Calculates the drag target score for a node. + * Higher score = more likely to be selected. + * + * @param context - The rule context containing node information + * @param rules - The rules to apply + * @param edgeConfig - The edge detection configuration + * @param coords - The cursor coordinates + * @returns The calculated score, or -1 if the node is excluded + */ +export function calculateScore( + context: RuleContext, + rules: DragHandleRule[], + edgeConfig: EdgeDetectionConfig, + coords: { x: number; y: number }, +): number { + let score = BASE_SCORE + let excluded = false + + rules.every(rule => { + const deduction = rule.evaluate(context) + + score -= deduction + + if (score <= 0) { + excluded = true + return false + } + + return true + }) + + if (excluded) { + return -1 + } + + const dom = context.view.nodeDOM(context.pos) as HTMLElement | null + + score -= calculateEdgeDeduction(coords, dom, edgeConfig, context.depth) + + if (score <= 0) { + return -1 + } + + return score +} diff --git a/packages/extension-drag-handle/src/index.ts b/packages/extension-drag-handle/src/index.ts index 2d313e6643..f75c4d6a06 100644 --- a/packages/extension-drag-handle/src/index.ts +++ b/packages/extension-drag-handle/src/index.ts @@ -2,5 +2,14 @@ import { DragHandle } from './drag-handle.js' export * from './drag-handle.js' export * from './drag-handle-plugin.js' +export { defaultRules } from './helpers/defaultRules.js' +export { normalizeNestedOptions } from './helpers/normalizeOptions.js' +export type { + EdgeDetectionConfig, + EdgeDetectionPreset, + NestedOptions, + NormalizedNestedOptions, +} from './types/options.js' +export type { DragHandleRule, RuleContext } from './types/rules.js' export default DragHandle diff --git a/packages/extension-drag-handle/src/types/options.ts b/packages/extension-drag-handle/src/types/options.ts new file mode 100644 index 0000000000..a994defaab --- /dev/null +++ b/packages/extension-drag-handle/src/types/options.ts @@ -0,0 +1,117 @@ +import type { DragHandleRule } from './rules.js' + +/** + * Edge detection presets for common use cases. + */ +export type EdgeDetectionPreset = + | 'left' // Prefer parent when cursor near left edge (default) + | 'right' // Prefer parent when cursor near right edge (RTL support) + | 'both' // Prefer parent when cursor near left OR right edge + | 'none' // Disable edge detection entirely + +/** + * Advanced edge detection configuration. + * Most users should use presets instead. + */ +export interface EdgeDetectionConfig { + /** + * Which edges trigger parent preference. + * @default ['left', 'top'] + */ + edges: Array<'left' | 'right' | 'top' | 'bottom'> + + /** + * Distance in pixels from edge to trigger. + * @default 12 + */ + threshold: number + + /** + * How strongly to prefer parent (higher = stronger preference). + * This is multiplied by depth, so deeper nodes are affected more. + * @default 500 + */ + strength: number +} + +/** + * Configuration for nested drag handle behavior. + */ +export interface NestedOptions { + /** + * Additional rules to determine which nodes are draggable. + * These run AFTER the default rules. + * + * @example + * rules: [ + * { + * id: 'onlyAlternatives', + * evaluate: ({ node, parent }) => { + * if (parent?.type.name === 'question') { + * return node.type.name === 'alternative' ? 0 : 1000 + * } + * return 0 + * }, + * }, + * ] + */ + rules?: DragHandleRule[] + + /** + * Set to `false` to disable default rules and use only your custom rules. + * Default rules handle common cases like list items and inline content. + * + * @default true + */ + defaultRules?: boolean + + /** + * Restrict nested drag handles to specific container types. + * If set, nested dragging only works inside these node types. + * + * @example + * // Only enable nested dragging in lists and custom question blocks + * allowedContainers: ['bulletList', 'orderedList', 'questionBlock'] + */ + allowedContainers?: string[] + + /** + * Edge detection behavior. Controls when to prefer parent over nested node. + * + * Presets: + * - `'left'` (default) - Prefer parent near left/top edges + * - `'right'` - Prefer parent near right/top edges (for RTL) + * - `'both'` - Prefer parent near any horizontal edge + * - `'none'` - Disable edge detection + * + * Or pass a partial/full config object for fine-tuned control. + * Partial configs are merged with defaults. + * + * @default 'left' + * + * @example + * // Only override threshold, keep default edges and strength + * edgeDetection: { threshold: 20 } + */ + edgeDetection?: EdgeDetectionPreset | Partial +} + +/** + * Normalized nested options with all properties resolved. + */ +export interface NormalizedNestedOptions { + /** Whether nested drag handles are enabled */ + enabled: boolean + + /** Custom rules to apply */ + rules: DragHandleRule[] + + /** Whether to include default rules */ + defaultRules: boolean + + /** Allowed container node types (undefined means all) */ + allowedContainers: string[] | undefined + + /** Resolved edge detection configuration */ + edgeDetection: EdgeDetectionConfig +} diff --git a/packages/extension-drag-handle/src/types/rules.ts b/packages/extension-drag-handle/src/types/rules.ts new file mode 100644 index 0000000000..5354f7c2e7 --- /dev/null +++ b/packages/extension-drag-handle/src/types/rules.ts @@ -0,0 +1,84 @@ +import type { Node, ResolvedPos } from '@tiptap/pm/model' +import type { EditorView } from '@tiptap/pm/view' + +/** + * Context provided to each rule for evaluation. + * Contains all information needed to make a decision. + */ +export interface RuleContext { + /** The node being evaluated */ + node: Node + + /** Absolute position of the node in the document */ + pos: number + + /** Depth in the document tree (0 = doc root) */ + depth: number + + /** Parent node (null if this is the doc) */ + parent: Node | null + + /** This node's index among siblings (0-based) */ + index: number + + /** Convenience: true if index === 0 */ + isFirst: boolean + + /** Convenience: true if this is the last child */ + isLast: boolean + + /** The resolved position for advanced queries */ + $pos: ResolvedPos + + /** Editor view for DOM access if needed */ + view: EditorView +} + +/** + * A rule that determines whether a node should be a drag target. + */ +export interface DragHandleRule { + /** + * Unique identifier for debugging and rule management. + */ + id: string + + /** + * Evaluate the node and return a score deduction. + * + * The return value is subtracted from the node's score (which starts at 1000). + * Higher deductions make the node less likely to be selected as the drag target. + * + * @returns A number representing the score deduction: + * - `0` - No deduction, node remains fully eligible + * - `1-999` - Partial deduction, node is less preferred but still eligible + * - `>= 1000` - Node is excluded from being a drag target + * + * @example + * // Exclude first child in list items + * evaluate: ({ parent, isFirst }) => { + * if (isFirst && parent?.type.name === 'listItem') { + * return 1000 // Exclude + * } + * return 0 + * } + * + * @example + * // Prefer shallower nodes with partial deduction + * evaluate: ({ depth }) => { + * // Deeper nodes get small deductions, making shallower nodes win ties + * return depth * 50 + * } + * + * @example + * // Context-based partial deductions + * evaluate: ({ node, parent }) => { + * if (parent?.type.name === 'tableCell') { + * // Inside table cells, slightly prefer the cell over its content + * return node.type.name === 'paragraph' ? 100 : 0 + * } + * return 0 + * } + */ + evaluate: (context: RuleContext) => number +} From 1d3dc49f587219ea8f3370f95f6dbf246d41ed96 Mon Sep 17 00:00:00 2001 From: bdbch Date: Fri, 23 Jan 2026 13:41:58 +0100 Subject: [PATCH 583/629] fix image tests --- demos/src/Examples/Images/React/index.spec.js | 2 +- demos/src/Examples/Images/Vue/index.spec.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/demos/src/Examples/Images/React/index.spec.js b/demos/src/Examples/Images/React/index.spec.js index 17a2d2c918..d7d2db6832 100644 --- a/demos/src/Examples/Images/React/index.spec.js +++ b/demos/src/Examples/Images/React/index.spec.js @@ -9,7 +9,7 @@ context('/src/Examples/Images/React/', () => { it('allows removing images', () => { cy.get('.tiptap img').should('have.length', 2) - cy.get('.tiptap img').first().trigger('mousedown', { which: 1 }) + cy.get('.tiptap img').first().click() cy.get('.tiptap').type('{backspace}') cy.get('.tiptap img').should('have.length', 1) }) diff --git a/demos/src/Examples/Images/Vue/index.spec.js b/demos/src/Examples/Images/Vue/index.spec.js index e4cce4a4ec..b551bb6bda 100644 --- a/demos/src/Examples/Images/Vue/index.spec.js +++ b/demos/src/Examples/Images/Vue/index.spec.js @@ -10,7 +10,7 @@ context('/src/Examples/Images/Vue/', () => { it('allows removing images', () => { cy.get('.tiptap img').should('have.length', 2) - cy.get('.tiptap img').first().trigger('mousedown', { which: 1 }) + cy.get('.tiptap img').first().click() cy.get('.tiptap').type('{backspace}') cy.get('.tiptap img').should('have.length', 1) }) From e8b7f0d4b09f8e6281a333d0dbc78a3111412631 Mon Sep 17 00:00:00 2001 From: bdbch Date: Fri, 23 Jan 2026 13:54:27 +0100 Subject: [PATCH 584/629] Enhance image removal Cypress tests --- demos/src/Examples/Images/React/index.spec.js | 4 +++- demos/src/Examples/Images/Vue/index.spec.js | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/demos/src/Examples/Images/React/index.spec.js b/demos/src/Examples/Images/React/index.spec.js index d7d2db6832..0a8e883ec6 100644 --- a/demos/src/Examples/Images/React/index.spec.js +++ b/demos/src/Examples/Images/React/index.spec.js @@ -8,8 +8,10 @@ context('/src/Examples/Images/React/', () => { }) it('allows removing images', () => { - cy.get('.tiptap img').should('have.length', 2) + cy.get('.tiptap').should('be.visible') + cy.get('.tiptap img').should('have.length', 2).and('be.visible') cy.get('.tiptap img').first().click() + cy.get('.tiptap img.ProseMirror-selectednode').should('exist') cy.get('.tiptap').type('{backspace}') cy.get('.tiptap img').should('have.length', 1) }) diff --git a/demos/src/Examples/Images/Vue/index.spec.js b/demos/src/Examples/Images/Vue/index.spec.js index b551bb6bda..631dd978fd 100644 --- a/demos/src/Examples/Images/Vue/index.spec.js +++ b/demos/src/Examples/Images/Vue/index.spec.js @@ -9,8 +9,10 @@ context('/src/Examples/Images/Vue/', () => { }) it('allows removing images', () => { - cy.get('.tiptap img').should('have.length', 2) + cy.get('.tiptap').should('be.visible') + cy.get('.tiptap img').should('have.length', 2).and('be.visible') cy.get('.tiptap img').first().click() + cy.get('.tiptap img.ProseMirror-selectednode').should('exist') cy.get('.tiptap').type('{backspace}') cy.get('.tiptap img').should('have.length', 1) }) From 408e1e737a0baa959aca21d653e5961a15f1a267 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 23 Jan 2026 14:13:01 +0100 Subject: [PATCH 585/629] chore(release): publish a new release version (#7440) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/curly-lizards-hang.md | 5 --- .changeset/fix-firefox-drag-handle-caret.md | 5 --- .changeset/is-firefox-util.md | 5 --- .../nested-drag-handle-sunny-river-dance.md | 8 ---- CHANGELOG.md | 42 +++++++++++++++++++ .../extension-character-count/CHANGELOG.md | 6 +++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 +++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 +++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 +++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 +++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 +++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 +++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 +++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 +++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 +++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 +++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 +++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 +++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 7 ++++ packages/core/package.json | 2 +- packages/extension-audio/CHANGELOG.md | 7 ++++ packages/extension-audio/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 7 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 7 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 9 ++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 +++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 9 ++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 8 ++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 7 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 8 ++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 8 ++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 +++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 9 ++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 7 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 14 +++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 14 +++++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 14 +++++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 15 +++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 9 ++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 9 ++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 ++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 +++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 7 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 7 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 7 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 8 ++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 7 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 9 ++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 7 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 8 ++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 8 ++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 8 ++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 9 ++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 8 ++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 +++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 7 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 7 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 8 ++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 8 ++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 8 ++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 8 ++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 7 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 7 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 7 ++++ packages/extension-text/package.json | 2 +- packages/extension-twitch/CHANGELOG.md | 7 ++++ packages/extension-twitch/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 7 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 7 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 8 ++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 7 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 ++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 8 ++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 ++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 8 ++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 +++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 8 ++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 8 ++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 8 ++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 ++++ packages/vue-3/package.json | 2 +- 149 files changed, 684 insertions(+), 95 deletions(-) delete mode 100644 .changeset/curly-lizards-hang.md delete mode 100644 .changeset/fix-firefox-drag-handle-caret.md delete mode 100644 .changeset/is-firefox-util.md delete mode 100644 .changeset/nested-drag-handle-sunny-river-dance.md diff --git a/.changeset/curly-lizards-hang.md b/.changeset/curly-lizards-hang.md deleted file mode 100644 index 5d49c16e6d..0000000000 --- a/.changeset/curly-lizards-hang.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-bubble-menu": patch ---- - -Added a safeguard to avoid `TypeError: Cannot read properties of null (reading 'domFromPos')` being thrown when the editor was being destroyed diff --git a/.changeset/fix-firefox-drag-handle-caret.md b/.changeset/fix-firefox-drag-handle-caret.md deleted file mode 100644 index 0a4aae7ced..0000000000 --- a/.changeset/fix-firefox-drag-handle-caret.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-drag-handle": patch ---- - -Fixed Firefox bug where the text caret becomes invisible after drag and drop. diff --git a/.changeset/is-firefox-util.md b/.changeset/is-firefox-util.md deleted file mode 100644 index ccaf2cc362..0000000000 --- a/.changeset/is-firefox-util.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Added `isFirefox` utility to core diff --git a/.changeset/nested-drag-handle-sunny-river-dance.md b/.changeset/nested-drag-handle-sunny-river-dance.md deleted file mode 100644 index 5781c9b09d..0000000000 --- a/.changeset/nested-drag-handle-sunny-river-dance.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -'@tiptap/extension-drag-handle': minor -'@tiptap/extension-drag-handle-react': minor -'@tiptap/extension-drag-handle-vue-2': minor -'@tiptap/extension-drag-handle-vue-3': minor ---- - -Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. diff --git a/CHANGELOG.md b/CHANGELOG.md index 0e8e0b7daa..fd3ee7e4a0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,47 @@ # Releases +## v3.17.0 + +### @tiptap/extension-bubble-menu + +#### Patch Changes + +- Added a safeguard to avoid `TypeError: Cannot read properties of null (reading 'domFromPos')` being thrown when the editor was being destroyed + +### @tiptap/extension-drag-handle + +#### Minor Changes + +- Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. + +#### Patch Changes + +- Fixed Firefox bug where the text caret becomes invisible after drag and drop. + +### @tiptap/core + +#### Patch Changes + +- Added `isFirefox` utility to core + +### @tiptap/extension-drag-handle-react + +#### Minor Changes + +- Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. + +### @tiptap/extension-drag-handle-vue-2 + +#### Minor Changes + +- Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. + +### @tiptap/extension-drag-handle-vue-3 + +#### Minor Changes + +- Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. + ## v3.16.0 ### @tiptap/extension-audio diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index c90ed8e939..13b3f77a35 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extensions@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 9b912c0a6c..4670c10163 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 7244f20efd..c75796fcda 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extensions@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 2a5fdfd3eb..1ce87d1f1d 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index ce739e75df..6508710cdf 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extensions@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index efc84cd792..ba4f992a90 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 6e97268ce4..0bbf78f1c2 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extensions@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 1b542fd03d..19fa8909d8 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 2cc0c9d639..a5c996f997 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extensions@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 15b88c3089..901b5ee984 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 27470995ec..4b3a8ad077 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-list@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index a41658fcf2..dd76b98842 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 9b289519f1..df6b8226a5 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-list@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index b2cc74af92..b7c7ee34a0 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 7b1bb6d692..7ad280a0b6 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extensions@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 50a702c298..d65eec8ce5 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index a304337f03..b059bc6e8e 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-table@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 5e05c77541..e53d11c909 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index eba3b9e839..1feec66965 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-table@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 1c2177c19f..c4015b38b2 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 1d65a7a345..a693ce38b8 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-table@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index a97ed1ab60..90253f46c9 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 38390b1b23..631e27ca22 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-list@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 08a49ee697..5a33c8f2a3 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index 25f5e4c588..dcf344951c 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-list@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index f0c1b9cef0..94c3f0f614 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index f09b90273e..3be27a326f 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- eecf1c9: Added `isFirefox` utility to core + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 6803726f88..a04761c0dc 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-audio/CHANGELOG.md b/packages/extension-audio/CHANGELOG.md index 47e3cc11df..5ab44422b0 100644 --- a/packages/extension-audio/CHANGELOG.md +++ b/packages/extension-audio/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-audio +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Minor Changes diff --git a/packages/extension-audio/package.json b/packages/extension-audio/package.json index 2c6953e58e..b3e604785e 100644 --- a/packages/extension-audio/package.json +++ b/packages/extension-audio/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-audio", "description": "audio extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index f3eaa93d12..69895f3fcb 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 9ab8938114..a9de522793 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 29a50506a4..6471191a3c 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 232a60596e..05e01df8f3 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 23f43e143e..7d1c2a99dd 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- 7a9b617: Added a safeguard to avoid `TypeError: Cannot read properties of null (reading 'domFromPos')` being thrown when the editor was being destroyed +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 948594e5aa..f927bc44c6 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 937dba6e41..305c6e69c3 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-list@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 7714cfc50a..315fb3ad29 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index 4317730c64..c5adebd1fb 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/extension-code-block@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 15c35cc273..90d428b0df 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 29836b90f3..34598832fb 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 9d2bf22494..4dc994c4fb 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index ce41feb32d..970c0f831c 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 6153e2846b..a236ae780b 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index e2b841ba1f..c45a8d4655 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 3fb9862f61..74534b996d 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 063476383b..d3eed77e98 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 469f5ded44..b65c43790b 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index f133011b37..13a7204d08 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index fd7ac7d162..a4bf64dddb 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 9917ab8d8c..dacdcb1625 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-details +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/extension-text-style@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 1bfbf185be..9a1be37e70 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index a21d027af6..7866d5097b 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 37dfd92d52..76b5bb5881 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index acbe4125df..562e4263ac 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,19 @@ # @tiptap/extension-drag-handle-react +## 3.17.0 + +### Minor Changes + +- a7ab5df: Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. + +### Patch Changes + +- Updated dependencies [eecf1c9] +- Updated dependencies [a7ab5df] + - @tiptap/extension-drag-handle@3.17.0 + - @tiptap/react@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 8f9ba619a5..581f52b4e8 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 7f92786b36..7cd27d5da1 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,19 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.17.0 + +### Minor Changes + +- a7ab5df: Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. + +### Patch Changes + +- Updated dependencies [eecf1c9] +- Updated dependencies [a7ab5df] + - @tiptap/extension-drag-handle@3.17.0 + - @tiptap/vue-2@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index ac146ba295..ced344aeb7 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 1aa59e2ae6..414063d3c0 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,19 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.17.0 + +### Minor Changes + +- a7ab5df: Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. + +### Patch Changes + +- Updated dependencies [eecf1c9] +- Updated dependencies [a7ab5df] + - @tiptap/extension-drag-handle@3.17.0 + - @tiptap/vue-3@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 3a8d4e740c..c5337ac9af 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index e0fce27255..cc532adf3e 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,20 @@ # @tiptap/extension-drag-handle +## 3.17.0 + +### Minor Changes + +- a7ab5df: Added nested drag handle support, allowing drag handles to appear for nested content like list items and blockquotes with configurable edge detection and custom rules. + +### Patch Changes + +- eecf1c9: Fixed Firefox bug where the text caret becomes invisible after drag and drop. +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/extension-collaboration@3.17.0 + - @tiptap/extension-node-range@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 2a92243e18..81d5fe5a24 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index d3a4f1f3fc..a68abfcd08 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-emoji +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/suggestion@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 6d2b9f7f85..f543f8909c 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index cb094bc128..e458e72e6f 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-file-handler +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/extension-text-style@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index d81182587a..5478204fdd 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index d024bfea47..0d06e63f00 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Minor Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 31d84b4006..39ba6ae4a1 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 106bc4a0e3..521223d95f 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index e00d4359df..6e1265d391 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index ed1db135ed..0a7f255ca1 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 86cd76b67f..a67bfe1b3f 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 60d39e21e0..43a1decf39 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 2b1a04c534..324e018445 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index f1d51e1035..97ef145807 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index a993f1f182..be4fd5a0cd 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index 08de64d869..afd64b9723 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index fd9b1f75d6..e58e4bf553 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 109350c537..766b98af90 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 205b12164a..91723ab7a1 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 5f3d2115b6..b985785822 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-invisible-characters +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/extension-text-style@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index 2f27f58043..be83701746 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 1a1f1d78ae..ee9cfefca8 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index ed92c9d9ed..3336db52f3 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index cfa19e2341..acfb7a67a0 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 44284f869c..228ef3673d 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 10013b8c54..53bfac68d8 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index f4ee4b5e63..9ec018c4b7 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 62f8a08204..cbd6151fc9 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-mathematics +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 2f2e03657c..eae13ac058 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 07e564a94b..e7728fb3d8 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/suggestion@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 446f25463e..7b2d9ec9b2 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 1a4d0b87ba..9364184ff0 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-node-range +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 5b3341bcfc..70c392b708 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index adc22a0885..45d39de2c6 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- @tiptap/extension-list@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 79118e3d11..cb0a668974 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 3e89eab456..ad7c144b5b 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 9d5a1cc9b6..7d45f2a14f 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index a8ba2fc75f..620b422aea 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 486c52c2bf..c875576248 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 430d7f021c..5eb91a949e 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index 7333442a02..dcf563d314 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 0331feb292..b1af9edd8b 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 6724539cfa..f7bd991e76 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index c8f8fc339b..44d87cf284 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.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 773ad5e3b6..8f713a1958 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index db2bd8ea4c..196fbcbd0d 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index b3ac8917a5..74d9fac086 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index fa97e8f6ea..9113fbfe59 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 9c7f4f45ff..3d3e4cce86 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 884dc3e3f7..11a7162fcd 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index bbf9b09af2..f4635f1470 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 1dedfdb522..4ad3eaadbc 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index d08fbd76ea..99dc1c260e 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md index 55ff285599..762907cad8 100644 --- a/packages/extension-twitch/CHANGELOG.md +++ b/packages/extension-twitch/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-twitch +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json index 96b65b7219..94edf048b6 100644 --- a/packages/extension-twitch/package.json +++ b/packages/extension-twitch/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-twitch", "description": "a twitch embed extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 34c82a0b49..5a61ceb694 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index e6dd72e0d0..3115f76e4f 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 56a6fba178..a426b9b109 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index d9c1bb8bcc..e5b7c8b9ac 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index c6fad20f69..dae36759dc 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-unique-id +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 3fbbb5a4d2..3879307dd7 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 30e993ed60..7e88bcfcd1 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 33fefaed79..864c517d23 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 079a3f8731..38526396b0 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index 29c8fa8e26..ae2ceec070 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 82bc6ed2ea..1aa7ab491e 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 2effb2318c..2647a0db94 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 5a32230990..6aa3648027 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 97385f989d..ff2430ee4c 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index d60ed0fbd8..ab4faa58ee 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.17.0 + ## 3.16.0 ## 3.15.3 diff --git a/packages/pm/package.json b/packages/pm/package.json index 901ebda461..690fadaa80 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 9b063e7bda..88bf216a10 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Minor Changes diff --git a/packages/react/package.json b/packages/react/package.json index dec8c9cb9f..897b15f5cb 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 487c064e48..8c009c3bc9 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/extension-blockquote@3.17.0 + - @tiptap/extension-bold@3.17.0 + - @tiptap/extension-code@3.17.0 + - @tiptap/extension-code-block@3.17.0 + - @tiptap/extension-document@3.17.0 + - @tiptap/extension-hard-break@3.17.0 + - @tiptap/extension-heading@3.17.0 + - @tiptap/extension-horizontal-rule@3.17.0 + - @tiptap/extension-italic@3.17.0 + - @tiptap/extension-link@3.17.0 + - @tiptap/extension-list@3.17.0 + - @tiptap/extension-paragraph@3.17.0 + - @tiptap/extension-strike@3.17.0 + - @tiptap/extension-text@3.17.0 + - @tiptap/extension-underline@3.17.0 + - @tiptap/extensions@3.17.0 + - @tiptap/extension-list-item@3.17.0 + - @tiptap/extension-list-keymap@3.17.0 + - @tiptap/extension-bullet-list@3.17.0 + - @tiptap/extension-ordered-list@3.17.0 + - @tiptap/extension-dropcursor@3.17.0 + - @tiptap/extension-gapcursor@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index cb20cdd6f4..4a22e0c3b5 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 98396abaab..b043b78058 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index cc0bce55cf..9a9ea16063 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 41f0df42f0..1214e0cae7 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index c94fe612c8..96037a652e 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 999d6929e4..2e6847da93 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Minor Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index ce52d4608f..a664a048bb 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 106d7ae4c6..16263706a2 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.0 + +### Patch Changes + +- Updated dependencies [eecf1c9] + - @tiptap/core@3.17.0 + - @tiptap/pm@3.17.0 + ## 3.16.0 ### Minor Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 56fd158d63..11333a5a67 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.16.0", + "version": "3.17.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 52146ad33121571b8b65a6756e59d9a34048b089 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 04:38:43 +0100 Subject: [PATCH 586/629] Fix crash when parsing HTML with resource tags (#7442) * fix(html): disable happy-dom resource loading to prevent crashes with link/script/style tags When parsing HTML containing , + +

    Content after resource tags

    + ` + + // This should not throw "TypeError: Invalid URL (ERR_INVALID_URL)" + const json = generateJSON(html, [Document, Paragraph, Text]) + + expect(json.type).toBe('doc') + expect(json.content).toBeDefined() + // The paragraph content should be parsed correctly + expect(json.content.some((node: any) => node.type === 'paragraph')).toBe(true) + }) }) diff --git a/packages/html/src/server/generateJSON.ts b/packages/html/src/server/generateJSON.ts index aaeb3948bf..863dee0eb3 100644 --- a/packages/html/src/server/generateJSON.ts +++ b/packages/html/src/server/generateJSON.ts @@ -23,7 +23,15 @@ export function generateJSON(html: string, extensions: Extensions, options?: Par ) } - const localWindow = new Window() + const localWindow = new Window({ + settings: { + disableJavaScriptEvaluation: true, + disableJavaScriptFileLoading: true, + disableCSSFileLoading: true, + disableIframePageLoading: true, + disableComputedStyleRendering: true, + }, + }) const localDOMParser = new localWindow.DOMParser() let result: Record diff --git a/packages/html/src/server/getHTMLFromFragment.ts b/packages/html/src/server/getHTMLFromFragment.ts index d59f905622..854861a47e 100644 --- a/packages/html/src/server/getHTMLFromFragment.ts +++ b/packages/html/src/server/getHTMLFromFragment.ts @@ -23,7 +23,15 @@ export function getHTMLFromFragment(doc: Node, schema: Schema, options?: { docum return wrap.innerHTML } - const localWindow = new Window() + const localWindow = new Window({ + settings: { + disableJavaScriptEvaluation: true, + disableJavaScriptFileLoading: true, + disableCSSFileLoading: true, + disableIframePageLoading: true, + disableComputedStyleRendering: true, + }, + }) let result: string try { From 725d182472af902797ef380752e472bc7167235d Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 04:41:50 +0100 Subject: [PATCH 587/629] fix(menus): handle hide middleware data in bubble and floating menus (#7444) * fix(menus): handle hide middleware data in bubble and floating menus The hide middleware from Floating UI returns data indicating whether the reference element is hidden or the floating element has escaped, but this data was not being used. Now the menus properly hide when the reference element is scrolled out of view within a scroll container. Fixes #7422 * chore: add changeset for hide middleware fix --------- Co-authored-by: Claude --- .changeset/fix-hide-middleware-menus.md | 6 ++++++ packages/extension-bubble-menu/src/bubble-menu-plugin.ts | 9 ++++++++- .../extension-floating-menu/src/floating-menu-plugin.ts | 9 ++++++++- 3 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 .changeset/fix-hide-middleware-menus.md diff --git a/.changeset/fix-hide-middleware-menus.md b/.changeset/fix-hide-middleware-menus.md new file mode 100644 index 0000000000..ca04c750d6 --- /dev/null +++ b/.changeset/fix-hide-middleware-menus.md @@ -0,0 +1,6 @@ +--- +"@tiptap/extension-bubble-menu": patch +"@tiptap/extension-floating-menu": patch +--- + +Fixed bubble and floating menus to properly handle hide middleware data, hiding menus when reference element is scrolled out of view diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index dc1f6f6a61..7387a29cd7 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -436,7 +436,14 @@ export class BubbleMenuView implements PluginView { placement: this.floatingUIOptions.placement, strategy: this.floatingUIOptions.strategy, middleware: this.middlewares, - }).then(({ x, y, strategy }) => { + }).then(({ x, y, strategy, middlewareData }) => { + // Handle hide middleware - hide element if reference is hidden or element has escaped + if (middlewareData.hide?.referenceHidden || middlewareData.hide?.escaped) { + this.element.style.visibility = 'hidden' + return + } + + this.element.style.visibility = 'visible' this.element.style.width = 'max-content' this.element.style.position = strategy this.element.style.left = `${x}px` diff --git a/packages/extension-floating-menu/src/floating-menu-plugin.ts b/packages/extension-floating-menu/src/floating-menu-plugin.ts index 4f480227ac..a0ea45d183 100644 --- a/packages/extension-floating-menu/src/floating-menu-plugin.ts +++ b/packages/extension-floating-menu/src/floating-menu-plugin.ts @@ -396,7 +396,14 @@ export class FloatingMenuView { placement: this.floatingUIOptions.placement, strategy: this.floatingUIOptions.strategy, middleware: this.middlewares, - }).then(({ x, y, strategy }) => { + }).then(({ x, y, strategy, middlewareData }) => { + // Handle hide middleware - hide element if reference is hidden or element has escaped + if (middlewareData.hide?.referenceHidden || middlewareData.hide?.escaped) { + this.element.style.visibility = 'hidden' + return + } + + this.element.style.visibility = 'visible' this.element.style.width = 'max-content' this.element.style.position = strategy this.element.style.left = `${x}px` From 3e446fb13b30d17aa74e66b544f0a783f6132dc9 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 05:27:07 +0100 Subject: [PATCH 588/629] Fix BubbleMenu and FloatingMenu not supporting option updates after initialization (#7445) * fix(react): update BubbleMenu props after initialization (#6963) The BubbleMenu component now properly updates when props change after the initial render. Previously, options like scrollTarget were only applied during plugin construction and never updated afterward. Changes: - Add updateOptions method to BubbleMenuView class that handles dynamic option updates including scrollTarget listener management - Extend transaction handler to support 'updateOptions' metadata - Add useEffect in React component to dispatch option updates when props change, avoiding full plugin re-registration This allows users to dynamically pass configuration options retrieved via useEffect (e.g., scrollTarget from a DOM ref) without needing workarounds like conditional rendering. https://claude.ai/code/session_01RbvqtygmL8dKaCCSHPPUdS * chore: add changeset for BubbleMenu props fix https://claude.ai/code/session_01RbvqtygmL8dKaCCSHPPUdS * fix(react): update FloatingMenu props after initialization Apply the same fix from BubbleMenu to FloatingMenu for consistency. Previously, FloatingMenu would re-register the entire plugin when props changed. Now it uses the same updateOptions transaction pattern. https://claude.ai/code/session_01RbvqtygmL8dKaCCSHPPUdS * fix: allow resetting scrollTarget back to window default Address Copilot review feedback: the previous implementation only updated scrollTarget when a new value was explicitly defined, preventing users from resetting it back to the default window behavior. Now when options.scrollTarget is undefined/null, it correctly defaults to window, allowing proper reset of the scroll listener. https://claude.ai/code/session_01RbvqtygmL8dKaCCSHPPUdS --------- Co-authored-by: Claude --- .changeset/fix-bubble-menu-props-update.md | 7 ++ .../src/bubble-menu-plugin.ts | 43 +++++++++ .../src/floating-menu-plugin.ts | 39 ++++++++ packages/react/src/menus/BubbleMenu.tsx | 50 +++++++++- packages/react/src/menus/FloatingMenu.tsx | 96 +++++++++++++++---- 5 files changed, 214 insertions(+), 21 deletions(-) create mode 100644 .changeset/fix-bubble-menu-props-update.md diff --git a/.changeset/fix-bubble-menu-props-update.md b/.changeset/fix-bubble-menu-props-update.md new file mode 100644 index 0000000000..61a7f1bd7b --- /dev/null +++ b/.changeset/fix-bubble-menu-props-update.md @@ -0,0 +1,7 @@ +--- +"@tiptap/extension-bubble-menu": patch +"@tiptap/extension-floating-menu": patch +"@tiptap/react": patch +--- + +Fix BubbleMenu and FloatingMenu props not updating after initialization diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index dc1f6f6a61..b8d39940f5 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -563,6 +563,49 @@ export class BubbleMenuView implements PluginView { const meta = tr.getMeta('bubbleMenu') if (meta === 'updatePosition') { this.updatePosition() + } else if (meta && typeof meta === 'object' && meta.type === 'updateOptions') { + this.updateOptions(meta.options) + } + } + + updateOptions(newProps: Partial>) { + if (newProps.updateDelay !== undefined) { + this.updateDelay = newProps.updateDelay + } + + if (newProps.resizeDelay !== undefined) { + this.resizeDelay = newProps.resizeDelay + } + + if (newProps.appendTo !== undefined) { + this.appendTo = newProps.appendTo + } + + if (newProps.getReferencedVirtualElement !== undefined) { + this.getReferencedVirtualElement = newProps.getReferencedVirtualElement + } + + if (newProps.shouldShow !== undefined) { + if (newProps.shouldShow) { + this.shouldShow = newProps.shouldShow + } + } + + if (newProps.options !== undefined) { + // Handle scrollTarget change - need to remove old listener and add new one + // Use nullish coalescing to default to window when scrollTarget is undefined/null + const newScrollTarget = newProps.options.scrollTarget ?? window + + if (newScrollTarget !== this.scrollTarget) { + this.scrollTarget.removeEventListener('scroll', this.resizeHandler) + this.scrollTarget = newScrollTarget + this.scrollTarget.addEventListener('scroll', this.resizeHandler) + } + + this.floatingUIOptions = { + ...this.floatingUIOptions, + ...newProps.options, + } } } diff --git a/packages/extension-floating-menu/src/floating-menu-plugin.ts b/packages/extension-floating-menu/src/floating-menu-plugin.ts index 4f480227ac..3e76821f11 100644 --- a/packages/extension-floating-menu/src/floating-menu-plugin.ts +++ b/packages/extension-floating-menu/src/floating-menu-plugin.ts @@ -364,6 +364,45 @@ export class FloatingMenuView { const meta = tr.getMeta('floatingMenu') if (meta === 'updatePosition') { this.updatePosition() + } else if (meta && typeof meta === 'object' && meta.type === 'updateOptions') { + this.updateOptions(meta.options) + } + } + + updateOptions(newProps: Partial>) { + if (newProps.updateDelay !== undefined) { + this.updateDelay = newProps.updateDelay + } + + if (newProps.resizeDelay !== undefined) { + this.resizeDelay = newProps.resizeDelay + } + + if (newProps.appendTo !== undefined) { + this.appendTo = newProps.appendTo + } + + if (newProps.shouldShow !== undefined) { + if (newProps.shouldShow) { + this.shouldShow = newProps.shouldShow + } + } + + if (newProps.options !== undefined) { + // Handle scrollTarget change - need to remove old listener and add new one + // Use nullish coalescing to default to window when scrollTarget is undefined/null + const newScrollTarget = newProps.options.scrollTarget ?? window + + if (newScrollTarget !== this.scrollTarget) { + this.scrollTarget.removeEventListener('scroll', this.resizeHandler) + this.scrollTarget = newScrollTarget + this.scrollTarget.addEventListener('scroll', this.resizeHandler) + } + + this.floatingUIOptions = { + ...this.floatingUIOptions, + ...newProps.options, + } } } diff --git a/packages/react/src/menus/BubbleMenu.tsx b/packages/react/src/menus/BubbleMenu.tsx index fa480099e9..c4561c298a 100644 --- a/packages/react/src/menus/BubbleMenu.tsx +++ b/packages/react/src/menus/BubbleMenu.tsx @@ -1,6 +1,6 @@ import { type BubbleMenuPluginProps, BubbleMenuPlugin } from '@tiptap/extension-bubble-menu' import { useCurrentEditor } from '@tiptap/react' -import React, { useEffect, useRef } from 'react' +import React, { useEffect, useRef, useState } from 'react' import { createPortal } from 'react-dom' type Optional = Pick, K> & Omit @@ -58,6 +58,18 @@ export const BubbleMenu = React.forwardRef( const bubbleMenuPluginPropsRef = useRef(bubbleMenuPluginProps) bubbleMenuPluginPropsRef.current = bubbleMenuPluginProps + /** + * Track whether the plugin has been initialized, so we only send updates + * after the initial registration. + */ + const [pluginInitialized, setPluginInitialized] = useState(false) + + /** + * Track whether we need to skip the first options update dispatch. + * This prevents unnecessary updates right after plugin initialization. + */ + const skipFirstUpdateRef = useRef(true) + useEffect(() => { if (pluginEditor?.isDestroyed) { return @@ -82,7 +94,11 @@ export const BubbleMenu = React.forwardRef( const createdPluginKey = bubbleMenuPluginPropsRef.current.pluginKey + skipFirstUpdateRef.current = true + setPluginInitialized(true) + return () => { + setPluginInitialized(false) pluginEditor.unregisterPlugin(createdPluginKey) window.requestAnimationFrame(() => { if (bubbleMenuElement.parentNode) { @@ -92,6 +108,38 @@ export const BubbleMenu = React.forwardRef( } }, [pluginEditor]) + /** + * Update the plugin options when props change after the plugin has been initialized. + * This allows dynamic updates to options like scrollTarget without re-registering the entire plugin. + */ + useEffect(() => { + if (!pluginInitialized || !pluginEditor || pluginEditor.isDestroyed) { + return + } + + // Skip the first update right after initialization since the plugin was just created with these options + if (skipFirstUpdateRef.current) { + skipFirstUpdateRef.current = false + return + } + + pluginEditor.view.dispatch( + pluginEditor.state.tr.setMeta('bubbleMenu', { + type: 'updateOptions', + options: bubbleMenuPluginPropsRef.current, + }), + ) + }, [ + pluginInitialized, + pluginEditor, + updateDelay, + resizeDelay, + shouldShow, + options, + appendTo, + getReferencedVirtualElement, + ]) + return createPortal(
    {children}
    , menuEl.current) }, ) diff --git a/packages/react/src/menus/FloatingMenu.tsx b/packages/react/src/menus/FloatingMenu.tsx index 1e8b2ac927..c19887ffb9 100644 --- a/packages/react/src/menus/FloatingMenu.tsx +++ b/packages/react/src/menus/FloatingMenu.tsx @@ -1,7 +1,7 @@ import type { FloatingMenuPluginProps } from '@tiptap/extension-floating-menu' import { FloatingMenuPlugin } from '@tiptap/extension-floating-menu' import { useCurrentEditor } from '@tiptap/react' -import React, { useEffect, useRef } from 'react' +import React, { useEffect, useRef, useState } from 'react' import { createPortal } from 'react-dom' type Optional = Pick, K> & Omit @@ -36,48 +36,104 @@ export const FloatingMenu = React.forwardRef( const { editor: currentEditor } = useCurrentEditor() - useEffect(() => { - const floatingMenuElement = menuEl.current + /** + * The editor instance where the floating menu plugin will be registered. + */ + const pluginEditor = editor || currentEditor - floatingMenuElement.style.visibility = 'hidden' - floatingMenuElement.style.position = 'absolute' + // Creating a useMemo would be more computationally expensive than just + // re-creating this object on every render. + const floatingMenuPluginProps: Omit = { + updateDelay, + resizeDelay, + appendTo, + pluginKey, + shouldShow, + options, + } + + /** + * The props for the floating menu plugin. They are accessed inside a ref to + * avoid running the useEffect hook and re-registering the plugin when the + * props change. + */ + const floatingMenuPluginPropsRef = useRef(floatingMenuPluginProps) + floatingMenuPluginPropsRef.current = floatingMenuPluginProps + + /** + * Track whether the plugin has been initialized, so we only send updates + * after the initial registration. + */ + const [pluginInitialized, setPluginInitialized] = useState(false) - if (editor?.isDestroyed || (currentEditor as any)?.isDestroyed) { + /** + * Track whether we need to skip the first options update dispatch. + * This prevents unnecessary updates right after plugin initialization. + */ + const skipFirstUpdateRef = useRef(true) + + useEffect(() => { + if (pluginEditor?.isDestroyed) { return } - const attachToEditor = editor || currentEditor - - if (!attachToEditor) { + if (!pluginEditor) { console.warn( 'FloatingMenu component is not rendered inside of an editor component or does not have editor prop.', ) return } + const floatingMenuElement = menuEl.current + floatingMenuElement.style.visibility = 'hidden' + floatingMenuElement.style.position = 'absolute' + const plugin = FloatingMenuPlugin({ - editor: attachToEditor, + ...floatingMenuPluginPropsRef.current, + editor: pluginEditor, element: floatingMenuElement, - pluginKey, - updateDelay, - resizeDelay, - appendTo, - shouldShow, - options, }) - attachToEditor.registerPlugin(plugin) + pluginEditor.registerPlugin(plugin) + + const createdPluginKey = floatingMenuPluginPropsRef.current.pluginKey + + skipFirstUpdateRef.current = true + setPluginInitialized(true) return () => { - attachToEditor.unregisterPlugin(pluginKey) + setPluginInitialized(false) + pluginEditor.unregisterPlugin(createdPluginKey) window.requestAnimationFrame(() => { if (floatingMenuElement.parentNode) { floatingMenuElement.parentNode.removeChild(floatingMenuElement) } }) } - // eslint-disable-next-line react-hooks/exhaustive-deps - }, [editor, currentEditor, appendTo, pluginKey, shouldShow, options, updateDelay, resizeDelay]) + }, [pluginEditor]) + + /** + * Update the plugin options when props change after the plugin has been initialized. + * This allows dynamic updates to options like scrollTarget without re-registering the entire plugin. + */ + useEffect(() => { + if (!pluginInitialized || !pluginEditor || pluginEditor.isDestroyed) { + return + } + + // Skip the first update right after initialization since the plugin was just created with these options + if (skipFirstUpdateRef.current) { + skipFirstUpdateRef.current = false + return + } + + pluginEditor.view.dispatch( + pluginEditor.state.tr.setMeta('floatingMenu', { + type: 'updateOptions', + options: floatingMenuPluginPropsRef.current, + }), + ) + }, [pluginInitialized, pluginEditor, updateDelay, resizeDelay, shouldShow, options, appendTo]) return createPortal(
    {children}
    , menuEl.current) }, From 547cf9eee484b5e9711b2e80f770e1f17142cb9b Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 05:45:36 +0100 Subject: [PATCH 589/629] Fix server exports in jsdom/happy-dom test environments (#7446) * fix(html): use positive Node.js detection for server exports Change the environment detection in @tiptap/html/server exports to use positive Node.js detection (process.versions.node) instead of checking for the absence of window. This fixes #6951 where generateJSON and generateHTML from @tiptap/html failed in Node.js test environments using jsdom or similar DOM implementations that polyfill the window global. Added a regression test that verifies the server exports work correctly when a global window is present (simulating jsdom/happy-dom environments). https://claude.ai/code/session_01QDtS2Pafsm2Pd1Ao83UCGv * chore: add changeset for html server detection fix https://claude.ai/code/session_01QDtS2Pafsm2Pd1Ao83UCGv * fix(html): add @types/node for server exports type declarations The server exports use process.versions.node for Node.js detection, which requires @types/node for TypeScript declaration file generation. https://claude.ai/code/session_01QDtS2Pafsm2Pd1Ao83UCGv * chore: update pnpm-lock.yaml for @types/node https://claude.ai/code/session_01QDtS2Pafsm2Pd1Ao83UCGv --------- Co-authored-by: Claude --- .changeset/fix-jsdom-server-detection.md | 5 ++ .../html/__tests__/server-with-jsdom.spec.ts | 68 +++++++++++++++++++ packages/html/package.json | 1 + packages/html/src/server/generateHTML.ts | 5 +- packages/html/src/server/generateJSON.ts | 5 +- pnpm-lock.yaml | 3 + 6 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 .changeset/fix-jsdom-server-detection.md create mode 100644 packages/html/__tests__/server-with-jsdom.spec.ts diff --git a/.changeset/fix-jsdom-server-detection.md b/.changeset/fix-jsdom-server-detection.md new file mode 100644 index 0000000000..19a201e038 --- /dev/null +++ b/.changeset/fix-jsdom-server-detection.md @@ -0,0 +1,5 @@ +--- +"@tiptap/html": patch +--- + +Fixed server exports failing in Node.js test environments with jsdom/happy-dom diff --git a/packages/html/__tests__/server-with-jsdom.spec.ts b/packages/html/__tests__/server-with-jsdom.spec.ts new file mode 100644 index 0000000000..2fd501d0c2 --- /dev/null +++ b/packages/html/__tests__/server-with-jsdom.spec.ts @@ -0,0 +1,68 @@ +/** + * This test verifies that the server exports work correctly in Node.js + * test environments that use jsdom/happy-dom (which polyfill the global window). + * + * This is a regression test for https://github.com/ueberdosis/tiptap/issues/6951 + */ +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' + +// Import directly from server to bypass vitest aliases +// This simulates what happens when Node.js resolves @tiptap/html via conditional exports +import { generateHTML, generateJSON } from '../src/server/index.js' + +describe('server exports with jsdom/happy-dom environment (issue #6951)', () => { + // Verify we're actually running with a global window (simulating jsdom) + it('should have global window defined (test environment check)', () => { + expect(typeof window).toBe('object') + expect(window).toBeDefined() + }) + + it('generateJSON should work even when global window is defined', () => { + const html = '

    Hello, world!

    ' + const extensions = [Document, Paragraph, Text] + + // This should NOT throw "generateJSON can only be used in a Node environment" + const json = generateJSON(html, extensions) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Hello, world!', + }, + ], + }, + ], + }) + }) + + it('generateHTML should work even when global window is defined', () => { + const json = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'Hello, world!', + }, + ], + }, + ], + } + const extensions = [Document, Paragraph, Text] + + // This should NOT throw "generateHTML can only be used in a Node environment" + const html = generateHTML(json, extensions) + + expect(html).toBe('

    Hello, world!

    ') + }) +}) diff --git a/packages/html/package.json b/packages/html/package.json index 2647a0db94..e78b5dcc74 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -45,6 +45,7 @@ "devDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", + "@types/node": "^22.0.0", "happy-dom": "^20.0.2" }, "peerDependencies": { diff --git a/packages/html/src/server/generateHTML.ts b/packages/html/src/server/generateHTML.ts index 90655ad667..22a383e2af 100644 --- a/packages/html/src/server/generateHTML.ts +++ b/packages/html/src/server/generateHTML.ts @@ -17,7 +17,10 @@ import { getHTMLFromFragment } from './getHTMLFromFragment.js' * ``` */ export function generateHTML(doc: JSONContent, extensions: Extensions): string { - if (typeof window !== 'undefined') { + // Use positive Node.js detection to allow for jsdom/happy-dom environments in tests + const isNode = typeof process !== 'undefined' && process.versions != null && process.versions.node != null + + if (!isNode) { throw new Error( 'generateHTML can only be used in a Node environment\nIf you want to use this in a browser environment, use the `@tiptap/html` import instead.', ) diff --git a/packages/html/src/server/generateJSON.ts b/packages/html/src/server/generateJSON.ts index 863dee0eb3..f2b9d08240 100644 --- a/packages/html/src/server/generateJSON.ts +++ b/packages/html/src/server/generateJSON.ts @@ -17,7 +17,10 @@ import { Window } from 'happy-dom' * console.log(json) // { type: 'doc', content: [{ type: 'paragraph', content: [{ type: 'text', text: 'Hello, world!' }] }] } */ export function generateJSON(html: string, extensions: Extensions, options?: ParseOptions): Record { - if (typeof window !== 'undefined') { + // Use positive Node.js detection to allow for jsdom/happy-dom environments in tests + const isNode = typeof process !== 'undefined' && process.versions != null && process.versions.node != null + + if (!isNode) { throw new Error( 'generateJSON can only be used in a Node environment\nIf you want to use this in a browser environment, use the `@tiptap/html` import instead.', ) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 71bfc5b931..7b2ac2f72f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -921,6 +921,9 @@ importers: '@tiptap/pm': specifier: workspace:^ version: link:../pm + '@types/node': + specifier: ^22.0.0 + version: 22.10.3 happy-dom: specifier: ^20.0.2 version: 20.0.2 From b46e66ad93bcf445db4adbca6e415ed1226761ad Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 06:17:16 +0100 Subject: [PATCH 590/629] fix(core): return null instead of undefined from ResizableNodeView contentDOM (#7447) Fixes type incompatibility where ResizableNodeView's contentDOM getter returned HTMLElement | undefined, but NodeView interface expects HTMLElement | null. This caused TypeScript errors when using ResizableNodeView with addNodeView(). Fixes #7289 Co-authored-by: Claude --- .changeset/fix-resizable-node-view-content-dom-type.md | 5 +++++ packages/core/src/lib/ResizableNodeView.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/fix-resizable-node-view-content-dom-type.md diff --git a/.changeset/fix-resizable-node-view-content-dom-type.md b/.changeset/fix-resizable-node-view-content-dom-type.md new file mode 100644 index 0000000000..f8316cad0c --- /dev/null +++ b/.changeset/fix-resizable-node-view-content-dom-type.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": patch +--- + +Fixed ResizableNodeView contentDOM getter to return null instead of undefined for proper TypeScript compatibility diff --git a/packages/core/src/lib/ResizableNodeView.ts b/packages/core/src/lib/ResizableNodeView.ts index c7fa727449..f13e210b0a 100644 --- a/packages/core/src/lib/ResizableNodeView.ts +++ b/packages/core/src/lib/ResizableNodeView.ts @@ -461,8 +461,8 @@ export class ResizableNodeView { return this.container } - get contentDOM() { - return this.contentElement + get contentDOM(): HTMLElement | null { + return this.contentElement ?? null } private handleEditorUpdate() { From 1a55fd0f85c024e5b777900b0ff239a5604eb4af Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 06:53:22 +0100 Subject: [PATCH 591/629] Fix CollaborationCaret crash with undefined state during initialization (#7449) * fix: prevent CollaborationCaret crash during editor initialization Fixes #6979, #7232 This commit addresses a critical bug where the CollaborationCaret extension would crash with "Cannot read properties of undefined (reading 'doc')" when editors were initialized with HTML content. Changes: - Updated @tiptap/y-tiptap dependency from ^3.0.0 to ^3.0.1 - Created patch for @tiptap/y-tiptap@3.0.1 to add null check in createDecorations - Added comprehensive unit tests for CollaborationCaret with HTML content - Updated test dependencies for extension-collaboration-caret The root cause was in the y-tiptap package's createDecorations function, which attempted to access ystate.doc without first checking if ystate was defined. This could occur during editor initialization when the ySyncPlugin state wasn't yet ready. The patch adds a guard to return an empty DecorationSet when ystate or ystate.doc is undefined, preventing the crash while allowing the editor to initialize properly. * chore: update to @tiptap/y-tiptap@3.0.2 and remove patch Updated all collaboration packages to use the official @tiptap/y-tiptap@3.0.2 release which includes the fix for the createDecorations crash. Changes: - Updated @tiptap/y-tiptap from ^3.0.1 to ^3.0.2 in: - @tiptap/extension-collaboration-caret - @tiptap/extension-collaboration - @tiptap/extension-drag-handle - Removed the y-tiptap patch file (no longer needed) - Updated package.json to remove patch reference - Updated changeset to reflect official release usage The upstream fix in y-tiptap@3.0.2 resolves issues #6979 and #7232. --------- Co-authored-by: Claude --- .changeset/fix-collaboration-caret-crash.md | 7 + .../__tests__/collaboration-caret.spec.ts | 188 ++++++++++++++++++ .../package.json | 13 +- packages/extension-collaboration/package.json | 4 +- packages/extension-drag-handle/package.json | 4 +- pnpm-lock.yaml | 99 +++++++-- 6 files changed, 290 insertions(+), 25 deletions(-) create mode 100644 .changeset/fix-collaboration-caret-crash.md create mode 100644 packages/extension-collaboration-caret/__tests__/collaboration-caret.spec.ts diff --git a/.changeset/fix-collaboration-caret-crash.md b/.changeset/fix-collaboration-caret-crash.md new file mode 100644 index 0000000000..bf5443b6f8 --- /dev/null +++ b/.changeset/fix-collaboration-caret-crash.md @@ -0,0 +1,7 @@ +--- +'@tiptap/extension-collaboration-caret': patch +'@tiptap/extension-collaboration': patch +'@tiptap/extension-drag-handle': patch +--- + +Fixed CollaborationCaret crash with "Cannot read properties of undefined (reading 'doc')" error by updating to @tiptap/y-tiptap@3.0.2, which includes a guard against undefined state during editor initialization. This issue affected editors initialized with HTML content, particularly when using tables. diff --git a/packages/extension-collaboration-caret/__tests__/collaboration-caret.spec.ts b/packages/extension-collaboration-caret/__tests__/collaboration-caret.spec.ts new file mode 100644 index 0000000000..fe6109281e --- /dev/null +++ b/packages/extension-collaboration-caret/__tests__/collaboration-caret.spec.ts @@ -0,0 +1,188 @@ +import { Editor } from '@tiptap/core' +import Collaboration from '@tiptap/extension-collaboration' +import CollaborationCaret from '@tiptap/extension-collaboration-caret' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Table from '@tiptap/extension-table' +import TableCell from '@tiptap/extension-table-cell' +import TableHeader from '@tiptap/extension-table-header' +import TableRow from '@tiptap/extension-table-row' +import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' +import * as Y from 'yjs' + +/** + * Tests for CollaborationCaret extension, especially edge cases + * with initial HTML content and complex structures like tables. + */ +describe('extension-collaboration-caret', () => { + const editorElClass = 'tiptap' + + const createEditorEl = () => { + const editorEl = document.createElement('div') + + editorEl.classList.add(editorElClass) + document.body.appendChild(editorEl) + return editorEl + } + + const getEditorEl = () => document.querySelector(`.${editorElClass}`) + + /** + * Test that the editor can be initialized with HTML content containing tables + * when using Collaboration and CollaborationCaret extensions. + * + * This test reproduces the issue from GitHub #6979 where the editor crashes + * with "Cannot read properties of undefined (reading 'doc')" when initialized + * with HTML content containing tables. + */ + it('should not crash when initialized with HTML content containing tables', () => { + const ydoc = new Y.Doc() + + // Create a mock provider with minimal awareness API + const mockProvider = { + awareness: { + states: new Map(), + setLocalStateField: () => {}, + on: () => {}, + off: () => {}, + getStates: () => new Map(), + }, + } + + const editorEl = createEditorEl() + + // This should not throw an error + expect(() => { + const editor = new Editor({ + element: editorEl, + extensions: [ + Document, + Paragraph, + Text, + Table, + TableRow, + TableHeader, + TableCell, + Collaboration.configure({ + document: ydoc, + }), + CollaborationCaret.configure({ + provider: mockProvider, + user: { + name: 'Test User', + color: '#ff0000', + }, + }), + ], + content: ` + + + + + + + + + +
    Header 1Header 2
    Cell 1Cell 2
    + `, + }) + + editor.destroy() + }).not.toThrow() + + getEditorEl()?.remove() + }) + + /** + * Test that the editor can be initialized with simple HTML content + * when using Collaboration and CollaborationCaret extensions. + */ + it('should not crash when initialized with simple HTML content', () => { + const ydoc = new Y.Doc() + + const mockProvider = { + awareness: { + states: new Map(), + setLocalStateField: () => {}, + on: () => {}, + off: () => {}, + getStates: () => new Map(), + }, + } + + const editorEl = createEditorEl() + + expect(() => { + const editor = new Editor({ + element: editorEl, + extensions: [ + Document, + Paragraph, + Text, + Collaboration.configure({ + document: ydoc, + }), + CollaborationCaret.configure({ + provider: mockProvider, + user: { + name: 'Test User', + color: '#ff0000', + }, + }), + ], + content: '

    Hello world

    ', + }) + + editor.destroy() + }).not.toThrow() + + getEditorEl()?.remove() + }) + + /** + * Test that the editor can be initialized without any content + * when using Collaboration and CollaborationCaret extensions. + */ + it('should work correctly when initialized without content', () => { + const ydoc = new Y.Doc() + + const mockProvider = { + awareness: { + states: new Map(), + setLocalStateField: () => {}, + on: () => {}, + off: () => {}, + getStates: () => new Map(), + }, + } + + const editorEl = createEditorEl() + + expect(() => { + const editor = new Editor({ + element: editorEl, + extensions: [ + Document, + Paragraph, + Text, + Collaboration.configure({ + document: ydoc, + }), + CollaborationCaret.configure({ + provider: mockProvider, + user: { + name: 'Test User', + color: '#ff0000', + }, + }), + ], + }) + + editor.destroy() + }).not.toThrow() + + getEditorEl()?.remove() + }) +}) diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 74534b996d..d13faa1182 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -32,13 +32,22 @@ ], "devDependencies": { "@tiptap/core": "workspace:^", + "@tiptap/extension-collaboration": "workspace:^", + "@tiptap/extension-document": "workspace:^", + "@tiptap/extension-paragraph": "workspace:^", + "@tiptap/extension-table": "workspace:^", + "@tiptap/extension-table-cell": "workspace:^", + "@tiptap/extension-table-header": "workspace:^", + "@tiptap/extension-table-row": "workspace:^", + "@tiptap/extension-text": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0" + "@tiptap/y-tiptap": "^3.0.2", + "yjs": "^13.6.23" }, "peerDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0" + "@tiptap/y-tiptap": "^3.0.2" }, "repository": { "type": "git", diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index b65c43790b..6c11777657 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -33,12 +33,12 @@ "devDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0" + "@tiptap/y-tiptap": "^3.0.2" }, "peerDependencies": { "@tiptap/core": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0", + "@tiptap/y-tiptap": "^3.0.2", "yjs": "^13" }, "repository": { diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 81d5fe5a24..458aa587c1 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -40,7 +40,7 @@ "@tiptap/core": "workspace:^", "@tiptap/extension-collaboration": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0" + "@tiptap/y-tiptap": "^3.0.2" }, "dependencies": { "@floating-ui/dom": "^1.6.13" @@ -51,7 +51,7 @@ "@tiptap/core": "workspace:^", "@tiptap/extension-collaboration": "workspace:^", "@tiptap/pm": "workspace:^", - "@tiptap/y-tiptap": "^3.0.0" + "@tiptap/y-tiptap": "^3.0.2" }, "scripts": { "build": "tsup", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7b2ac2f72f..bcabaa396b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -496,20 +496,47 @@ importers: specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': - specifier: ^3.0.0 - version: 3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.2 + version: 3.0.2(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) packages/extension-collaboration-caret: devDependencies: '@tiptap/core': specifier: workspace:^ version: link:../core + '@tiptap/extension-collaboration': + specifier: workspace:^ + version: link:../extension-collaboration + '@tiptap/extension-document': + specifier: workspace:^ + version: link:../extension-document + '@tiptap/extension-paragraph': + specifier: workspace:^ + version: link:../extension-paragraph + '@tiptap/extension-table': + specifier: workspace:^ + version: link:../extension-table + '@tiptap/extension-table-cell': + specifier: workspace:^ + version: link:../../packages-deprecated/extension-table-cell + '@tiptap/extension-table-header': + specifier: workspace:^ + version: link:../../packages-deprecated/extension-table-header + '@tiptap/extension-table-row': + specifier: workspace:^ + version: link:../../packages-deprecated/extension-table-row + '@tiptap/extension-text': + specifier: workspace:^ + version: link:../extension-text '@tiptap/pm': specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': - specifier: ^3.0.0 - version: 3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.2 + version: 3.0.2(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + yjs: + specifier: ^13.6.23 + version: 13.6.23 packages/extension-color: devDependencies: @@ -554,8 +581,8 @@ importers: specifier: workspace:^ version: link:../pm '@tiptap/y-tiptap': - specifier: ^3.0.0 - version: 3.0.0(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) + specifier: ^3.0.2 + version: 3.0.2(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) packages/extension-drag-handle-react: devDependencies: @@ -1201,8 +1228,8 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/code-frame@7.27.1': - resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + '@babel/code-frame@7.28.6': + resolution: {integrity: sha512-JYgintcMjRiCvS8mMECzaEn+m3PfoQiyqukOMCCVQtoJGYJw8j/8LBJEiqkHLkfwCcs74E3pbAUFNg7d9VNJ+Q==} engines: {node: '>=6.9.0'} '@babel/compat-data@7.26.5': @@ -1288,8 +1315,8 @@ packages: resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.27.1': - resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + '@babel/helper-validator-identifier@7.28.5': + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} engines: {node: '>=6.9.0'} '@babel/helper-validator-option@7.25.9': @@ -1754,6 +1781,10 @@ packages: resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} engines: {node: '>=6.9.0'} + '@babel/runtime@7.28.6': + resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} + engines: {node: '>=6.9.0'} + '@babel/template@7.25.9': resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} @@ -3038,6 +3069,16 @@ packages: y-protocols: ^1.0.1 yjs: ^13.5.38 + '@tiptap/y-tiptap@3.0.2': + resolution: {integrity: sha512-flMn/YW6zTbc6cvDaUPh/NfLRTXDIqgpBUkYzM74KA1snqQwhOMjnRcnpu4hDFrTnPO6QGzr99vRyXEA7M44WA==} + engines: {node: '>=16.0.0', npm: '>=8.0.0'} + peerDependencies: + prosemirror-model: ^1.7.1 + prosemirror-state: ^1.2.3 + prosemirror-view: ^1.9.10 + y-protocols: ^1.0.1 + yjs: ^13.5.38 + '@types/aria-query@5.0.4': resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} @@ -5308,6 +5349,11 @@ packages: engines: {node: '>=16'} hasBin: true + lib0@0.2.117: + resolution: {integrity: sha512-DeXj9X5xDCjgKLU/7RR+/HQEVzuuEUiwldwOGsHK/sfAfELGWEyTcf0x+uOvCvK3O2zPmZePXWL85vtia6GyZw==} + engines: {node: '>=16'} + hasBin: true + lib0@0.2.99: resolution: {integrity: sha512-vwztYuUf1uf/1zQxfzRfO5yzfNKhTtgOByCruuiQQxWQXnPb8Itaube5ylofcV0oM0aKal9Mv+S1s1Ky0UYP1w==} engines: {node: '>=16'} @@ -7220,9 +7266,9 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/code-frame@7.27.1': + '@babel/code-frame@7.28.6': dependencies: - '@babel/helper-validator-identifier': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 js-tokens: 4.0.0 picocolors: 1.1.1 @@ -7357,7 +7403,7 @@ snapshots: '@babel/helper-validator-identifier@7.25.9': {} - '@babel/helper-validator-identifier@7.27.1': {} + '@babel/helper-validator-identifier@7.28.5': {} '@babel/helper-validator-option@7.25.9': {} @@ -7921,6 +7967,8 @@ snapshots: '@babel/runtime@7.28.4': {} + '@babel/runtime@7.28.6': {} + '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 @@ -8588,7 +8636,7 @@ snapshots: '@hocuspocus/common@2.15.0': dependencies: - lib0: 0.2.99 + lib0: 0.2.117 '@hocuspocus/provider@2.15.0(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23)': dependencies: @@ -9131,8 +9179,8 @@ snapshots: '@testing-library/dom@10.4.0': dependencies: - '@babel/code-frame': 7.27.1 - '@babel/runtime': 7.28.4 + '@babel/code-frame': 7.28.6 + '@babel/runtime': 7.28.6 '@types/aria-query': 5.0.4 aria-query: 5.3.0 chalk: 4.1.2 @@ -9289,6 +9337,15 @@ snapshots: y-protocols: 1.0.6(yjs@13.6.23) yjs: 13.6.23 + '@tiptap/y-tiptap@3.0.2(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23)': + dependencies: + lib0: 0.2.117 + prosemirror-model: 1.24.1 + prosemirror-state: 1.4.3 + prosemirror-view: 1.38.1 + y-protocols: 1.0.6(yjs@13.6.23) + yjs: 13.6.23 + '@types/aria-query@5.0.4': {} '@types/chai@5.2.3': @@ -11842,6 +11899,10 @@ snapshots: dependencies: isomorphic.js: 0.2.5 + lib0@0.2.117: + dependencies: + isomorphic.js: 0.2.5 + lib0@0.2.99: dependencies: isomorphic.js: 0.2.5 @@ -13751,7 +13812,7 @@ snapshots: y-prosemirror@1.3.5(prosemirror-model@1.24.1)(prosemirror-state@1.4.3)(prosemirror-view@1.38.1)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23): dependencies: - lib0: 0.2.114 + lib0: 0.2.117 prosemirror-model: 1.24.1 prosemirror-state: 1.4.3 prosemirror-view: 1.38.1 @@ -13760,7 +13821,7 @@ snapshots: y-protocols@1.0.6(yjs@13.6.23): dependencies: - lib0: 0.2.99 + lib0: 0.2.117 yjs: 13.6.23 y-webrtc@10.3.0(yjs@13.6.23): @@ -13803,7 +13864,7 @@ snapshots: yjs@13.6.23: dependencies: - lib0: 0.2.99 + lib0: 0.2.114 yocto-queue@0.1.0: {} From aa9709e822ebb10edf16dada68c03525d1c2304f Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 06:54:11 +0100 Subject: [PATCH 592/629] fix(core): allow $nodes() to return inline nodes (#7448) The `children` getter in `NodePos` was incorrectly filtering out inline nodes (like text, mention, etc.) due to an overly aggressive depth check. This fix: 1. Adds a check for inline nodes to bypass the depth filter 2. Passes the node reference for inline nodes to ensure correct node access 3. Fixes a bug where `childNodePos` was created but then a new instance was pushed to the array, losing the `actualDepth` setting Closes #5279 Co-authored-by: Claude --- .changeset/fix-nodes-inline-nodes.md | 5 + packages/core/__tests__/nodePos.spec.ts | 541 ++++++++++++++++++++++++ packages/core/src/NodePos.ts | 11 +- 3 files changed, 554 insertions(+), 3 deletions(-) create mode 100644 .changeset/fix-nodes-inline-nodes.md create mode 100644 packages/core/__tests__/nodePos.spec.ts diff --git a/.changeset/fix-nodes-inline-nodes.md b/.changeset/fix-nodes-inline-nodes.md new file mode 100644 index 0000000000..dcdf2fdf58 --- /dev/null +++ b/.changeset/fix-nodes-inline-nodes.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": patch +--- + +Fixed `$nodes()` method to correctly return inline nodes (like text, mention, etc.) by fixing the `children` getter in `NodePos` class diff --git a/packages/core/__tests__/nodePos.spec.ts b/packages/core/__tests__/nodePos.spec.ts new file mode 100644 index 0000000000..b1edf5e78f --- /dev/null +++ b/packages/core/__tests__/nodePos.spec.ts @@ -0,0 +1,541 @@ +import { Editor, Node } from '@tiptap/core' +import Blockquote from '@tiptap/extension-blockquote' +import BulletList from '@tiptap/extension-bullet-list' +import Document from '@tiptap/extension-document' +import ListItem from '@tiptap/extension-list-item' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { afterEach, describe, expect, it } from 'vitest' + +// Simple inline node for testing (similar to mention) +const CustomInlineNode = Node.create({ + name: 'customInline', + group: 'inline', + inline: true, + atom: true, + + addAttributes() { + return { + id: { + default: null, + }, + } + }, + + parseHTML() { + return [ + { + tag: 'span[data-type="custom-inline"]', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['span', { 'data-type': 'custom-inline', ...HTMLAttributes }, 0] + }, +}) + +describe('NodePos', () => { + let editor: Editor + + afterEach(() => { + editor?.destroy() + }) + + describe('$nodes', () => { + it('should return text nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    Hello World

    ', + }) + + const textNodes = editor.$nodes('text') + + expect(textNodes).not.toBeNull() + expect(textNodes!.length).toBe(1) + expect(textNodes![0].textContent).toBe('Hello World') + }) + + it('should return multiple text nodes across paragraphs', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    First

    Second

    Third

    ', + }) + + const textNodes = editor.$nodes('text') + + expect(textNodes).not.toBeNull() + expect(textNodes!.length).toBe(3) + expect(textNodes![0].textContent).toBe('First') + expect(textNodes![1].textContent).toBe('Second') + expect(textNodes![2].textContent).toBe('Third') + }) + + it('should return inline atom nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    Hello World

    ', + }) + + const inlineNodes = editor.$nodes('customInline') + + expect(inlineNodes).not.toBeNull() + expect(inlineNodes!.length).toBe(1) + expect(inlineNodes![0].node.type.name).toBe('customInline') + }) + + it('should return multiple inline nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: + '

    Hello and World

    ', + }) + + const inlineNodes = editor.$nodes('customInline') + + expect(inlineNodes).not.toBeNull() + expect(inlineNodes!.length).toBe(2) + }) + + it('should return inline nodes with attribute filtering', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: + '

    Hello and World

    ', + }) + + // Note: HTML attribute parsing converts numeric strings to numbers + const inlineNodes = editor.$nodes('customInline', { id: 1 }) + + expect(inlineNodes).not.toBeNull() + expect(inlineNodes!.length).toBe(1) + expect(inlineNodes![0].node.attrs.id).toBe(1) + }) + + it('should return paragraph nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    First

    Second

    ', + }) + + const paragraphNodes = editor.$nodes('paragraph') + + expect(paragraphNodes).not.toBeNull() + expect(paragraphNodes!.length).toBe(2) + }) + + it('should return inline nodes nested in multiple paragraphs', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: + '

    Para 1

    Para 2

    ', + }) + + const inlineNodes = editor.$nodes('customInline') + + expect(inlineNodes).not.toBeNull() + expect(inlineNodes!.length).toBe(2) + // Note: HTML attribute parsing converts numeric strings to numbers + expect(inlineNodes![0].node.attrs.id).toBe(1) + expect(inlineNodes![1].node.attrs.id).toBe(2) + }) + + it('should find paragraphs inside blockquotes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, Blockquote], + content: '

    Quoted text

    ', + }) + + const paragraphs = editor.$nodes('paragraph') + + expect(paragraphs).not.toBeNull() + expect(paragraphs!.length).toBe(1) + expect(paragraphs![0].textContent).toBe('Quoted text') + }) + + it('should find blockquote nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, Blockquote], + content: '

    First quote

    Normal

    Second quote

    ', + }) + + const blockquotes = editor.$nodes('blockquote') + + expect(blockquotes).not.toBeNull() + expect(blockquotes!.length).toBe(2) + }) + + it('should find text nodes inside nested block structures', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, Blockquote], + content: '

    Quoted

    Normal

    ', + }) + + const textNodes = editor.$nodes('text') + + expect(textNodes).not.toBeNull() + expect(textNodes!.length).toBe(2) + expect(textNodes![0].textContent).toBe('Quoted') + expect(textNodes![1].textContent).toBe('Normal') + }) + + it('should find list items in bullet lists', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, BulletList, ListItem], + content: '
    • Item 1

    • Item 2

    ', + }) + + const listItems = editor.$nodes('listItem') + + expect(listItems).not.toBeNull() + expect(listItems!.length).toBe(2) + }) + + it('should find text nodes inside list items', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, BulletList, ListItem], + content: '
    • Item 1

    • Item 2

    ', + }) + + const textNodes = editor.$nodes('text') + + expect(textNodes).not.toBeNull() + expect(textNodes!.length).toBe(2) + expect(textNodes![0].textContent).toBe('Item 1') + expect(textNodes![1].textContent).toBe('Item 2') + }) + + it('should find inline nodes inside list items', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, BulletList, ListItem, CustomInlineNode], + content: + '
    • Item

    • Item

    ', + }) + + const inlineNodes = editor.$nodes('customInline') + + expect(inlineNodes).not.toBeNull() + expect(inlineNodes!.length).toBe(2) + }) + + it('should handle empty paragraphs', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    Content

    ', + }) + + const paragraphs = editor.$nodes('paragraph') + + expect(paragraphs).not.toBeNull() + expect(paragraphs!.length).toBe(3) + }) + + it('should return empty array for text nodes when paragraph is empty', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    ', + }) + + const textNodes = editor.$nodes('text') + + expect(textNodes).not.toBeNull() + expect(textNodes!.length).toBe(0) + }) + + it('should find all node types in mixed content', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, Blockquote, CustomInlineNode], + content: + '

    Normal

    Quoted

    ', + }) + + const paragraphs = editor.$nodes('paragraph') + const blockquotes = editor.$nodes('blockquote') + const textNodes = editor.$nodes('text') + const inlineNodes = editor.$nodes('customInline') + + expect(paragraphs!.length).toBe(2) + expect(blockquotes!.length).toBe(1) + expect(textNodes!.length).toBe(2) + expect(inlineNodes!.length).toBe(2) + }) + }) + + describe('$node', () => { + it('should find a single text node', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    Hello

    ', + }) + + const textNode = editor.$node('text') + + expect(textNode).not.toBeNull() + expect(textNode!.textContent).toBe('Hello') + }) + + it('should find a single inline node', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    ', + }) + + const inlineNode = editor.$node('customInline') + + expect(inlineNode).not.toBeNull() + expect(inlineNode!.node.attrs.id).toBe('found') + }) + }) + + describe('children', () => { + it('should include text nodes as children of paragraph', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    Hello World

    ', + }) + + const paragraph = editor.$node('paragraph') + + expect(paragraph).not.toBeNull() + + const children = paragraph!.children + + expect(children.length).toBe(1) + expect(children[0].node.type.name).toBe('text') + expect(children[0].textContent).toBe('Hello World') + }) + + it('should include inline atom nodes as children of paragraph', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    Hello World

    ', + }) + + const paragraph = editor.$node('paragraph') + + expect(paragraph).not.toBeNull() + + const children = paragraph!.children + + // Should have: "Hello ", customInline, " World" + expect(children.length).toBe(3) + expect(children[0].node.type.name).toBe('text') + expect(children[0].textContent).toBe('Hello ') + expect(children[1].node.type.name).toBe('customInline') + expect(children[2].node.type.name).toBe('text') + expect(children[2].textContent).toBe(' World') + }) + + it('should return correct node reference for inline nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    ', + }) + + const inlineNodes = editor.$nodes('customInline') + + expect(inlineNodes).not.toBeNull() + expect(inlineNodes!.length).toBe(1) + expect(inlineNodes![0].node.attrs.id).toBe('test-id') + }) + }) + + describe('querySelector', () => { + it('should return first matching node', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    ', + }) + + const paragraph = editor.$node('paragraph') + const firstInline = paragraph!.querySelector('customInline') + + expect(firstInline).not.toBeNull() + expect(firstInline!.node.attrs.id).toBe(1) + }) + + it('should return all matching nodes with querySelectorAll', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    ', + }) + + const paragraph = editor.$node('paragraph') + const allInlines = paragraph!.querySelectorAll('customInline') + + expect(allInlines.length).toBe(2) + }) + + it('should filter correctly with attributes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    ', + }) + + const paragraph = editor.$node('paragraph') + const specific = paragraph!.querySelector('customInline', { id: 2 }) + + expect(specific).not.toBeNull() + expect(specific!.node.attrs.id).toBe(2) + }) + }) + + describe('node position properties', () => { + it('should return correct from/to positions for inline nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    Hi there

    ', + }) + + const inlineNode = editor.$node('customInline') + + expect(inlineNode).not.toBeNull() + expect(inlineNode!.from).toBeLessThan(inlineNode!.to) + expect(inlineNode!.size).toBeGreaterThan(0) + }) + + it('should return correct from/to positions for text nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    Hello

    ', + }) + + const textNode = editor.$node('text') + + expect(textNode).not.toBeNull() + expect(textNode!.from).toBeLessThan(textNode!.to) + expect(textNode!.size).toBe(5) // "Hello" is 5 characters + }) + + it('should return correct range for nodes', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    Hello

    ', + }) + + const paragraph = editor.$node('paragraph') + + expect(paragraph).not.toBeNull() + expect(paragraph!.range.from).toBe(paragraph!.from) + expect(paragraph!.range.to).toBe(paragraph!.to) + }) + }) + + describe('firstChild and lastChild', () => { + it('should return correct firstChild for paragraph with text', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    Hello World

    ', + }) + + const paragraph = editor.$node('paragraph') + const firstChild = paragraph!.firstChild + + expect(firstChild).not.toBeNull() + expect(firstChild!.node.type.name).toBe('text') + expect(firstChild!.textContent).toBe('Hello World') + }) + + it('should return correct lastChild for paragraph with mixed content', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, CustomInlineNode], + content: '

    Hello

    ', + }) + + const paragraph = editor.$node('paragraph') + const lastChild = paragraph!.lastChild + + expect(lastChild).not.toBeNull() + expect(lastChild!.node.type.name).toBe('customInline') + }) + + it('should return null for firstChild/lastChild on empty paragraph', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    ', + }) + + const paragraph = editor.$node('paragraph') + + expect(paragraph!.firstChild).toBeNull() + expect(paragraph!.lastChild).toBeNull() + }) + }) + + describe('parent', () => { + it('should return parent for paragraph node', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    Hello

    ', + }) + + const paragraph = editor.$node('paragraph') + const parent = paragraph!.parent + + expect(parent).not.toBeNull() + expect(parent!.node.type.name).toBe('doc') + }) + + it('should return parent for blockquote node', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, Blockquote], + content: '

    Quoted

    ', + }) + + const blockquote = editor.$node('blockquote') + const parent = blockquote!.parent + + expect(parent).not.toBeNull() + expect(parent!.node.type.name).toBe('doc') + }) + + it('should return parent for nested paragraph in blockquote', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, Blockquote], + content: '

    Quoted

    ', + }) + + const paragraph = editor.$node('paragraph') + const parent = paragraph!.parent + + expect(parent).not.toBeNull() + expect(parent!.node.type.name).toBe('blockquote') + }) + }) + + describe('$doc', () => { + it('should correctly traverse $doc children', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text], + content: '

    First

    Second

    ', + }) + + const doc = editor.$doc + + expect(doc).not.toBeNull() + expect(doc!.children.length).toBe(2) + expect(doc!.children[0].node.type.name).toBe('paragraph') + expect(doc!.children[1].node.type.name).toBe('paragraph') + }) + + it('should handle deeply nested structures', () => { + editor = new Editor({ + extensions: [Document, Paragraph, Text, Blockquote, CustomInlineNode], + content: '

    Quote with

    ', + }) + + const inlineNode = editor.$node('customInline') + + expect(inlineNode).not.toBeNull() + expect(inlineNode!.node.attrs.id).toBe('deep') + + // Verify the structure + const blockquote = editor.$node('blockquote') + const paragraph = editor.$node('paragraph') + + expect(blockquote).not.toBeNull() + expect(paragraph).not.toBeNull() + expect(paragraph!.parent!.node.type.name).toBe('blockquote') + }) + }) +}) diff --git a/packages/core/src/NodePos.ts b/packages/core/src/NodePos.ts index 7f14ab5268..3322312cda 100644 --- a/packages/core/src/NodePos.ts +++ b/packages/core/src/NodePos.ts @@ -134,6 +134,7 @@ export class NodePos { this.node.content.forEach((node, offset) => { const isBlock = node.isBlock && !node.isTextblock const isNonTextAtom = node.isAtom && !node.isText + const isInline = node.isInline const targetPos = this.pos + offset + (isNonTextAtom ? 0 : 1) @@ -144,17 +145,21 @@ export class NodePos { const $pos = this.resolvedPos.doc.resolve(targetPos) - if (!isBlock && $pos.depth <= this.depth) { + // Only apply depth check for non-block, non-inline nodes (i.e., textblocks) + // Inline nodes should always be included as children since we're iterating + // over direct children via this.node.content + if (!isBlock && !isInline && $pos.depth <= this.depth) { return } - const childNodePos = new NodePos($pos, this.editor, isBlock, isBlock ? node : null) + // Pass the node for both block and inline nodes to ensure correct node reference + const childNodePos = new NodePos($pos, this.editor, isBlock, isBlock || isInline ? node : null) if (isBlock) { childNodePos.actualDepth = this.depth + 1 } - children.push(new NodePos($pos, this.editor, isBlock, isBlock ? node : null)) + children.push(childNodePos) }) return children From 4807c55f419401130e622cf1d5cd481f861f0bad Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 07:34:10 +0100 Subject: [PATCH 593/629] Fix IME input in Vue 3 mark views by preventing DOM destruction (#7450) * fix(vue-3): prevent DOM destruction during IME composition Fixes #6982 by adding a destroyed flag to VueRenderer, similar to the React implementation. This prevents race conditions when ProseMirror attempts to access DOM elements during IME composition events (Chinese, Japanese, Korean input). The fix ensures that: - Multiple destroy() calls are idempotent - No rendering operations occur after destroy is called - DOM elements remain accessible during composition events Includes comprehensive unit tests for VueMarkViewRenderer. * Update packages/vue-3/__tests__/VueMarkViewRenderer.spec.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * test: use addMarkView() instead of addNodeView() for marks * refactor(vue-3): improve VueRenderer code quality and test coverage - Remove redundant condition checks in renderComponent() - Add comprehensive unit tests for VueRenderer destroyed flag behavior - Test idempotent destroy, props updates after destroy, and render blocking - Verify all 10 tests pass (7 VueRenderer + 3 VueMarkViewRenderer) --------- Co-authored-by: Claude Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/fix-chinese-input-ime-vue3.md | 5 + .../__tests__/VueMarkViewRenderer.spec.ts | 140 ++++++++++++++ packages/vue-3/__tests__/VueRenderer.spec.ts | 178 ++++++++++++++++++ packages/vue-3/src/VueRenderer.ts | 18 ++ 4 files changed, 341 insertions(+) create mode 100644 .changeset/fix-chinese-input-ime-vue3.md create mode 100644 packages/vue-3/__tests__/VueMarkViewRenderer.spec.ts create mode 100644 packages/vue-3/__tests__/VueRenderer.spec.ts diff --git a/.changeset/fix-chinese-input-ime-vue3.md b/.changeset/fix-chinese-input-ime-vue3.md new file mode 100644 index 0000000000..c1a11bd1ed --- /dev/null +++ b/.changeset/fix-chinese-input-ime-vue3.md @@ -0,0 +1,5 @@ +--- +'@tiptap/vue-3': patch +--- + +Fixed IME input (Chinese, Japanese, Korean) in Vue 3 mark views by preventing DOM element destruction during composition events diff --git a/packages/vue-3/__tests__/VueMarkViewRenderer.spec.ts b/packages/vue-3/__tests__/VueMarkViewRenderer.spec.ts new file mode 100644 index 0000000000..a61331722f --- /dev/null +++ b/packages/vue-3/__tests__/VueMarkViewRenderer.spec.ts @@ -0,0 +1,140 @@ +import { Editor, Mark, mergeAttributes } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { afterEach, beforeEach, describe, expect, it } from 'vitest' +import { defineComponent } from 'vue' + +import { MarkViewContent, markViewProps, VueMarkViewRenderer } from '../src/VueMarkViewRenderer.js' + +// Create a simple Vue component for the mark view +const TestMarkComponent = defineComponent({ + name: 'TestMarkComponent', + props: markViewProps, + setup() { + return {} + }, + template: '', + components: { MarkViewContent }, +}) + +// Create a custom mark that uses VueMarkViewRenderer +const CustomMark = Mark.create({ + name: 'customMark', + + parseHTML() { + return [{ tag: 'mark' }] + }, + + renderHTML({ HTMLAttributes }) { + return ['mark', mergeAttributes(HTMLAttributes), 0] + }, + + addMarkView() { + return VueMarkViewRenderer(TestMarkComponent) + }, +}) + +describe('VueMarkViewRenderer IME composition', () => { + let editor: Editor | null = null + let editorElement: HTMLElement | null = null + + beforeEach(() => { + // Create editor element + editorElement = document.createElement('div') + document.body.appendChild(editorElement) + }) + + afterEach(() => { + // Clean up + if (editor) { + editor.destroy() + editor = null + } + if (editorElement && editorElement.parentNode) { + editorElement.parentNode.removeChild(editorElement) + editorElement = null + } + }) + + it('should handle rapid content changes without errors', async () => { + // Create editor with custom mark + editor = new Editor({ + element: editorElement!, + extensions: [Document, Paragraph, Text, CustomMark], + content: '

    This is marked text here.

    ', + }) + + // Wait for editor to initialize + await new Promise(resolve => { + setTimeout(() => resolve(undefined), 10) + }) + + // Get the mark view element + const markElement = editorElement!.querySelector('mark') + expect(markElement).toBeTruthy() + + // Rapidly change content which could trigger mark view recreation + // This simulates what happens during IME composition + expect(() => { + const { tr } = editor.state + editor.view.dispatch(tr.insertText('a', 15)) + editor.view.dispatch(editor.state.tr.insertText('b', 16)) + editor.view.dispatch(editor.state.tr.insertText('c', 17)) + }).not.toThrow() + + // Mark should still be present + const markAfterChanges = editorElement!.querySelector('mark') + expect(markAfterChanges).toBeTruthy() + }) + + it('should allow multiple destroy calls without errors', async () => { + // Create editor with custom mark + editor = new Editor({ + element: editorElement!, + extensions: [Document, Paragraph, Text, CustomMark], + content: '

    This is marked text here.

    ', + }) + + await new Promise(resolve => { + setTimeout(() => resolve(undefined), 10) + }) + + // Verify mark is rendered + const markElement = editorElement!.querySelector('mark') + expect(markElement).toBeTruthy() + + // Destroy editor (which destroys all mark views) + editor.destroy() + + // Try to destroy again - should not throw + expect(() => { + editor!.destroy() + }).not.toThrow() + }) + + it('should handle content replacement without errors', async () => { + editor = new Editor({ + element: editorElement!, + extensions: [Document, Paragraph, Text, CustomMark], + content: '

    This is marked text here.

    ', + }) + + await new Promise(resolve => { + setTimeout(() => resolve(undefined), 10) + }) + + const markElement = editorElement!.querySelector('mark') + expect(markElement).toBeTruthy() + + // Replace content entirely, which destroys and recreates mark views + expect(() => { + editor.commands.setContent('

    New content with new mark!

    ') + }).not.toThrow() + + // New mark should be present + const newMarkElement = editorElement!.querySelector('mark') + expect(newMarkElement).toBeTruthy() + expect(newMarkElement?.textContent).toBe('new mark') + }) +}) diff --git a/packages/vue-3/__tests__/VueRenderer.spec.ts b/packages/vue-3/__tests__/VueRenderer.spec.ts new file mode 100644 index 0000000000..08b80569e2 --- /dev/null +++ b/packages/vue-3/__tests__/VueRenderer.spec.ts @@ -0,0 +1,178 @@ +import { Editor } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { afterEach, beforeEach, describe, expect, it } from 'vitest' +import { defineComponent } from 'vue' + +import { VueRenderer } from '../src/VueRenderer.js' + +describe('VueRenderer', () => { + let editor: Editor | null = null + let editorElement: HTMLElement | null = null + + beforeEach(() => { + editorElement = document.createElement('div') + document.body.appendChild(editorElement) + + editor = new Editor({ + element: editorElement, + extensions: [Document, Paragraph, Text], + content: '

    Hello World

    ', + }) + }) + + afterEach(() => { + if (editor) { + editor.destroy() + editor = null + } + if (editorElement && editorElement.parentNode) { + editorElement.parentNode.removeChild(editorElement) + editorElement = null + } + }) + + it('should initialize with destroyed flag set to false', () => { + const TestComponent = defineComponent({ + name: 'TestComponent', + template: '
    Test
    ', + }) + + const renderer = new VueRenderer(TestComponent, { + editor: editor!, + props: {}, + }) + + expect(renderer.destroyed).toBe(false) + + renderer.destroy() + }) + + it('should set destroyed flag to true after destroy', () => { + const TestComponent = defineComponent({ + name: 'TestComponent', + template: '
    Test
    ', + }) + + const renderer = new VueRenderer(TestComponent, { + editor: editor!, + props: {}, + }) + + expect(renderer.destroyed).toBe(false) + renderer.destroy() + expect(renderer.destroyed).toBe(true) + }) + + it('should allow multiple destroy calls without errors', () => { + const TestComponent = defineComponent({ + name: 'TestComponent', + template: '
    Test
    ', + }) + + const renderer = new VueRenderer(TestComponent, { + editor: editor!, + props: {}, + }) + + expect(() => { + renderer.destroy() + renderer.destroy() + renderer.destroy() + }).not.toThrow() + + expect(renderer.destroyed).toBe(true) + }) + + it('should not update props when destroyed', () => { + const TestComponent = defineComponent({ + name: 'TestComponent', + props: { + value: { + type: String, + default: '', + }, + }, + template: '
    {{ value }}
    ', + }) + + const renderer = new VueRenderer(TestComponent, { + editor: editor!, + props: { value: 'initial' }, + }) + + expect(renderer.props.value).toBe('initial') + + renderer.destroy() + renderer.updateProps({ value: 'updated' }) + + // Props should not be updated after destroy + expect(renderer.props.value).toBe('initial') + }) + + it('should not render when destroyed', () => { + const TestComponent = defineComponent({ + name: 'TestComponent', + template: '
    Test
    ', + }) + + const renderer = new VueRenderer(TestComponent, { + editor: editor!, + props: {}, + }) + + const originalComponent = renderer.renderedComponent + + renderer.destroy() + const resultAfterDestroy = renderer.renderComponent() + + // Should return the same renderedComponent without re-rendering + expect(resultAfterDestroy).toBe(originalComponent) + }) + + it('should handle props updates before destroy', () => { + const TestComponent = defineComponent({ + name: 'TestComponent', + props: { + count: { + type: Number, + default: 0, + }, + }, + template: '
    {{ count }}
    ', + }) + + const renderer = new VueRenderer(TestComponent, { + editor: editor!, + props: { count: 0 }, + }) + + expect(renderer.props.count).toBe(0) + + renderer.updateProps({ count: 5 }) + expect(renderer.props.count).toBe(5) + + renderer.updateProps({ count: 10 }) + expect(renderer.props.count).toBe(10) + + renderer.destroy() + }) + + it('should create and render element', () => { + const TestComponent = defineComponent({ + name: 'TestComponent', + template: '
    Content
    ', + }) + + const renderer = new VueRenderer(TestComponent, { + editor: editor!, + props: {}, + }) + + expect(renderer.element).toBeTruthy() + expect(renderer.element?.textContent).toBe('Content') + + renderer.destroy() + }) +}) diff --git a/packages/vue-3/src/VueRenderer.ts b/packages/vue-3/src/VueRenderer.ts index 0428ee2567..778fd85e48 100644 --- a/packages/vue-3/src/VueRenderer.ts +++ b/packages/vue-3/src/VueRenderer.ts @@ -31,6 +31,11 @@ export class VueRenderer { props: Record + /** + * Flag to track if the renderer has been destroyed, preventing queued or asynchronous renders from executing after teardown. + */ + destroyed = false + constructor(component: Component, { props = {}, editor }: VueRendererOptions) { this.editor = editor as ExtendedEditor this.component = markRaw(component) @@ -53,6 +58,10 @@ export class VueRenderer { } renderComponent() { + if (this.destroyed) { + return this.renderedComponent + } + let vNode: ExtendedVNode = h(this.component as DefineComponent, this.props) if (this.editor.appContext) { @@ -74,6 +83,10 @@ export class VueRenderer { } updateProps(props: Record = {}): void { + if (this.destroyed) { + return + } + Object.entries(props).forEach(([key, value]) => { this.props[key] = value }) @@ -81,6 +94,11 @@ export class VueRenderer { } destroy(): void { + if (this.destroyed) { + return + } + + this.destroyed = true this.renderedComponent.destroy() } } From 5d267cb22000325675a8f56a731c7f12442a7fc4 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 15:13:13 +0100 Subject: [PATCH 594/629] Fix ordered list numbering with non-default start values (#7453) * Fix ordered list numbering when list has non-default start value This fixes an issue where ordered lists with a non-default start attribute would have incorrect numbering when serialized to markdown. The issue occurred when markdown like: 1. one * inner 2. two was parsed, creating two separate ordered lists (the second with start=2), but serialization ignored the start attribute and always used 1-based numbering. Changes: - Pass parent node attributes through the rendering context - Use parent's start attribute when calculating list item numbers - Add test case for ordered lists with nested bullet lists * Add test for non-indented ordered list separated by bullet list This test covers the exact pattern from issue #7353 where markdown like: 1. one * inner 2. two creates three separate blocks (ol, ul, ol with start=2) and verifies the numbering is preserved as '2. two' not '1. two'. --------- Co-authored-by: Claude --- .../fix-ordered-list-start-attribute.md | 6 ++ packages/extension-list/src/item/list-item.ts | 3 +- .../__tests__/conversion-files/index.ts | 2 + .../ordered-list-separated-by-bullet.ts | 60 +++++++++++++++++++ .../ordered-list-with-bullet-list.ts | 50 ++++++++++++++++ packages/markdown/src/MarkdownManager.ts | 4 +- 6 files changed, 123 insertions(+), 2 deletions(-) create mode 100644 .changeset/fix-ordered-list-start-attribute.md create mode 100644 packages/markdown/__tests__/conversion-files/ordered-list-separated-by-bullet.ts create mode 100644 packages/markdown/__tests__/conversion-files/ordered-list-with-bullet-list.ts diff --git a/.changeset/fix-ordered-list-start-attribute.md b/.changeset/fix-ordered-list-start-attribute.md new file mode 100644 index 0000000000..ccef5dba26 --- /dev/null +++ b/.changeset/fix-ordered-list-start-attribute.md @@ -0,0 +1,6 @@ +--- +'@tiptap/markdown': patch +'@tiptap/extension-list': patch +--- + +Fixed ordered list numbering when list has a non-default start value diff --git a/packages/extension-list/src/item/list-item.ts b/packages/extension-list/src/item/list-item.ts index a22416be52..ad9020b269 100644 --- a/packages/extension-list/src/item/list-item.ts +++ b/packages/extension-list/src/item/list-item.ts @@ -125,7 +125,8 @@ export const ListItem = Node.create({ return '- ' } if (context.parentType === 'orderedList') { - return `${context.index + 1}. ` + const start = context.meta?.parentAttrs?.start || 1 + return `${start + context.index}. ` } // Fallback to bullet list for unknown parent types return '- ' diff --git a/packages/markdown/__tests__/conversion-files/index.ts b/packages/markdown/__tests__/conversion-files/index.ts index f3ec896d4d..9973cd8024 100644 --- a/packages/markdown/__tests__/conversion-files/index.ts +++ b/packages/markdown/__tests__/conversion-files/index.ts @@ -6,6 +6,8 @@ export * as hardBreakMarks from './hard-break-marks.js' export * as mixedListTypes from './mixed-list-types.js' export * as nestedNodes from './nested-nodes.js' export * as orderedList from './ordered-list.js' +export * as orderedListSeparatedByBullet from './ordered-list-separated-by-bullet.js' +export * as orderedListWithBulletList from './ordered-list-with-bullet-list.js' export * as softBreakMarks from './soft-break-marks.js' export * as taskList from './task-list.js' export * as trailingWhitespaceMarks from './trailing-whitespace-marks.js' diff --git a/packages/markdown/__tests__/conversion-files/ordered-list-separated-by-bullet.ts b/packages/markdown/__tests__/conversion-files/ordered-list-separated-by-bullet.ts new file mode 100644 index 0000000000..f489217a7b --- /dev/null +++ b/packages/markdown/__tests__/conversion-files/ordered-list-separated-by-bullet.ts @@ -0,0 +1,60 @@ +export const name = 'Ordered List Separated by Bullet List' + +export const expectedInput = ` +1. one + +- inner + +2. two +`.trim() + +export const expectedOutput = { + type: 'doc', + content: [ + { + type: 'orderedList', + content: [ + { + type: 'listItem', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'one' }], + }, + ], + }, + ], + }, + { + type: 'bulletList', + content: [ + { + type: 'listItem', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'inner' }], + }, + ], + }, + ], + }, + { + type: 'orderedList', + attrs: { + start: 2, + }, + content: [ + { + type: 'listItem', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'two' }], + }, + ], + }, + ], + }, + ], +} diff --git a/packages/markdown/__tests__/conversion-files/ordered-list-with-bullet-list.ts b/packages/markdown/__tests__/conversion-files/ordered-list-with-bullet-list.ts new file mode 100644 index 0000000000..12096044bb --- /dev/null +++ b/packages/markdown/__tests__/conversion-files/ordered-list-with-bullet-list.ts @@ -0,0 +1,50 @@ +export const name = 'Ordered List with Nested Bullet List' + +export const expectedInput = ` +1. one + - inner +2. two +`.trim() + +export const expectedOutput = { + type: 'doc', + content: [ + { + type: 'orderedList', + content: [ + { + type: 'listItem', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'one' }], + }, + { + type: 'bulletList', + content: [ + { + type: 'listItem', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'inner' }], + }, + ], + }, + ], + }, + ], + }, + { + type: 'listItem', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'two' }], + }, + ], + }, + ], + }, + ], +} diff --git a/packages/markdown/src/MarkdownManager.ts b/packages/markdown/src/MarkdownManager.ts index 93e04a2320..35db1840a0 100644 --- a/packages/markdown/src/MarkdownManager.ts +++ b/packages/markdown/src/MarkdownManager.ts @@ -819,7 +819,9 @@ export class MarkdownManager { index, level, parentType: parentNode?.type, - meta: {}, + meta: { + parentAttrs: parentNode?.attrs, + }, } // First render the node itself (this will render children recursively) From 62c6f157c043ba054a7ecfb863be908e2803a92e Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 15:24:06 +0100 Subject: [PATCH 595/629] Preserve multiple empty paragraphs in markdown serialization (#7451) * fix(markdown): preserve multiple empty paragraphs in serialization Fixes #7269 by rendering empty paragraphs with   to prevent them from collapsing in markdown. When parsing,  -only paragraphs are converted back to empty paragraphs, preserving the original structure. Changes: - Empty paragraphs now render as   instead of empty strings - Parser detects  -only content and creates empty paragraphs - Added comprehensive tests for multiple empty paragraph handling - All existing tests continue to pass * chore: update changeset description * chore: improve changeset description * fix: address Copilot review comments - Handle paragraphs without content field (real editor output) - Normalize missing content as empty array before checking length - Add test case for paragraphs without content field - Capitalize changeset message per repository conventions All 90 markdown tests pass. * refactor: extract shared constants and add NBSP test - Extract EMPTY_PARAGRAPH_MARKDOWN and NBSP_CHAR constants - Add clear documentation for why   is used - Reuse constants in both parse and render paths - Add test case for literal NBSP character (\u00A0) - Ensures both   entity and Unicode char are handled This addresses Copilot review comments about: 1. Avoiding duplication between parse/render paths 2. Making intent clearer with named constants 3. Testing coverage for the NBSP_CHAR branch All 91 markdown tests pass. --------- Co-authored-by: Claude --- .changeset/1769236404-fix-empty-paragraphs.md | 6 + packages/extension-paragraph/src/paragraph.ts | 44 +++++- .../markdown/__tests__/conversion.spec.ts | 139 ++++++++++++++++++ 3 files changed, 182 insertions(+), 7 deletions(-) create mode 100644 .changeset/1769236404-fix-empty-paragraphs.md diff --git a/.changeset/1769236404-fix-empty-paragraphs.md b/.changeset/1769236404-fix-empty-paragraphs.md new file mode 100644 index 0000000000..66337e9a0d --- /dev/null +++ b/.changeset/1769236404-fix-empty-paragraphs.md @@ -0,0 +1,6 @@ +--- +'@tiptap/extension-paragraph': patch +'@tiptap/markdown': patch +--- + +Fixed markdown serialization doubling newlines and parsing collapsing multiple blank lines diff --git a/packages/extension-paragraph/src/paragraph.ts b/packages/extension-paragraph/src/paragraph.ts index f8c453e696..7cc10fffc9 100644 --- a/packages/extension-paragraph/src/paragraph.ts +++ b/packages/extension-paragraph/src/paragraph.ts @@ -21,6 +21,19 @@ declare module '@tiptap/core' { } } +/** + * Markdown marker for empty paragraphs to preserve blank lines. + * Using   (non-breaking space HTML entity) ensures the paragraph + * is not collapsed by markdown parsers while remaining human-readable. + */ +const EMPTY_PARAGRAPH_MARKDOWN = ' ' + +/** + * Unicode character for non-breaking space (U+00A0). + * Some markdown parsers may convert   entities to this literal character. + */ +const NBSP_CHAR = '\u00A0' + /** * This extension allows you to create paragraphs. * @see https://www.tiptap.dev/api/nodes/paragraph @@ -58,20 +71,37 @@ export const Paragraph = Node.create({ return helpers.parseChildren([tokens[0]]) } + // Parse the inline tokens + const content = helpers.parseInline(tokens) + + // Special case: if paragraph contains only   (non-breaking space), + // treat it as an empty paragraph to preserve blank lines + if ( + content.length === 1 && + content[0].type === 'text' && + (content[0].text === EMPTY_PARAGRAPH_MARKDOWN || content[0].text === NBSP_CHAR) + ) { + return helpers.createNode('paragraph', undefined, []) + } + // Convert 'paragraph' token to paragraph node - return helpers.createNode( - 'paragraph', - undefined, // no attributes for paragraph - helpers.parseInline(tokens), - ) + return helpers.createNode('paragraph', undefined, content) }, renderMarkdown: (node, h) => { - if (!node || !Array.isArray(node.content)) { + if (!node) { return '' } - return h.renderChildren(node.content) + // Normalize content: treat undefined/null as empty array + const content = Array.isArray(node.content) ? node.content : [] + + // If the paragraph is empty, render a non-breaking space to preserve blank lines + if (content.length === 0) { + return EMPTY_PARAGRAPH_MARKDOWN + } + + return h.renderChildren(content) }, addCommands() { diff --git a/packages/markdown/__tests__/conversion.spec.ts b/packages/markdown/__tests__/conversion.spec.ts index 2f7c13b4e9..cc79dce997 100644 --- a/packages/markdown/__tests__/conversion.spec.ts +++ b/packages/markdown/__tests__/conversion.spec.ts @@ -181,4 +181,143 @@ describe('Markdown Conversion Tests', () => { }) }) }) + + describe('multiple empty paragraphs', () => { + // Multiple newlines should be preserved correctly when serializing and parsing + it('should preserve multiple empty paragraphs when converting to markdown', () => { + const json = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'Line1' }], + }, + { + type: 'paragraph', + content: [], + }, + { + type: 'paragraph', + content: [], + }, + { + type: 'paragraph', + content: [{ type: 'text', text: 'Line2' }], + }, + ], + } + + const markdown = markdownManager.serialize(json) + + // Empty paragraphs should render as   to preserve blank lines + // (2 empty paragraphs with  : Line1 + \n\n +   + \n\n +   + \n\n + Line2) + expect(markdown).toBe('Line1\n\n \n\n \n\nLine2') + }) + + it('should parse markdown with   blank lines back correctly', () => { + const markdown = 'Line1\n\n \n\n \n\nLine2' + const json = markdownManager.parse(markdown) + + // After parsing, we should get back the original structure with 2 empty paragraphs + expect(json.content).toHaveLength(4) + expect(json.content[0].type).toBe('paragraph') + expect(json.content[0].content[0].text).toBe('Line1') + expect(json.content[1].type).toBe('paragraph') + expect(json.content[1].content).toEqual([]) + expect(json.content[2].type).toBe('paragraph') + expect(json.content[2].content).toEqual([]) + expect(json.content[3].type).toBe('paragraph') + expect(json.content[3].content[0].text).toBe('Line2') + }) + + it('should roundtrip multiple empty paragraphs correctly', () => { + const json = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'Line1' }], + }, + { + type: 'paragraph', + content: [], + }, + { + type: 'paragraph', + content: [], + }, + { + type: 'paragraph', + content: [{ type: 'text', text: 'Line2' }], + }, + ], + } + + // Serialize to markdown + const markdown = markdownManager.serialize(json) + + // Parse back to JSON + const parsed = markdownManager.parse(markdown) + + // Should match the original structure + expect(parsed.content).toHaveLength(4) + expect(parsed.content[1].content).toEqual([]) + expect(parsed.content[2].content).toEqual([]) + + // Serialize again to ensure consistency + const remarked = markdownManager.serialize(parsed) + expect(remarked).toBe(markdown) + }) + + it('should handle empty paragraphs without content field (real editor output)', () => { + // Real editor output may omit the content field for empty paragraphs + const json = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'Line1' }], + }, + { + type: 'paragraph', + // No content field - this is what the real editor might output + }, + { + type: 'paragraph', + // No content field + }, + { + type: 'paragraph', + content: [{ type: 'text', text: 'Line2' }], + }, + ], + } + + const markdown = markdownManager.serialize(json) + + // Should still render as   for empty paragraphs + expect(markdown).toBe('Line1\n\n \n\n \n\nLine2') + }) + + it('should parse literal NBSP character (\\u00A0) as empty paragraph', () => { + // Some markdown parsers may convert   entity to the literal NBSP character + const markdown = 'Line1\n\n\u00A0\n\n\u00A0\n\nLine2' + const json = markdownManager.parse(markdown) + + // After parsing, should get empty paragraphs (not text nodes with NBSP) + expect(json.content).toHaveLength(4) + expect(json.content[0].type).toBe('paragraph') + expect(json.content[0].content[0].text).toBe('Line1') + expect(json.content[1].type).toBe('paragraph') + expect(json.content[1].content).toEqual([]) + expect(json.content[2].type).toBe('paragraph') + expect(json.content[2].content).toEqual([]) + expect(json.content[3].type).toBe('paragraph') + expect(json.content[3].content[0].text).toBe('Line2') + + // Should serialize back to   (normalized form) + const serialized = markdownManager.serialize(json) + expect(serialized).toBe('Line1\n\n \n\n \n\nLine2') + }) + }) }) From 4bcacdaa90135f6d69ad3bd9f5e2ecb0870ca205 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Sat, 24 Jan 2026 17:50:05 +0100 Subject: [PATCH 596/629] Fix markdown HTML parsing in server-side environments (#7452) * Fix markdown HTML parsing in server-side environments - Added graceful error handling in parseHTMLToken when window object is unavailable - Falls back to treating HTML as plain text in Node.js environments - Added comprehensive tests for server-side parsing scenarios - Resolves #7364 * Address code review feedback - Add @vitest-environment node directive to ensure tests run in true Node.js environment without window object - Improve error message extraction using instanceof Error for more stable matching - Handle block vs inline HTML tokens appropriately in fallback (wrap block-level HTML in paragraph) * Improve SSR fallback implementation and test coverage - Replace try-catch error matching with proactive typeof window check - More robust and doesn't rely on brittle error message matching - Prevents accidental matching of unrelated errors - Add comprehensive test assertions that verify actual fallback behavior - Tests now validate HTML is preserved as literal text in Node.js environments - Tests verify markdown syntax still works correctly alongside HTML fallback * Add comprehensive output assertions to regression tests - Replace simple "not.toThrow" checks with detailed output verification - Verify inline code segments contain literal HTML tags as expected - Verify strike marks and tildes are preserved in parsed output - Validate actual document structure (paragraphs, text nodes, marks) - Tests now catch behavioral regressions beyond just avoiding exceptions --------- Co-authored-by: Claude --- .../fix-markdown-server-side-html-parsing.md | 5 + .../__tests__/server-side-parsing.spec.ts | 182 ++++++++++++++++++ packages/markdown/src/MarkdownManager.ts | 22 +++ 3 files changed, 209 insertions(+) create mode 100644 .changeset/fix-markdown-server-side-html-parsing.md create mode 100644 packages/markdown/__tests__/server-side-parsing.spec.ts diff --git a/.changeset/fix-markdown-server-side-html-parsing.md b/.changeset/fix-markdown-server-side-html-parsing.md new file mode 100644 index 0000000000..95aeb9d5e5 --- /dev/null +++ b/.changeset/fix-markdown-server-side-html-parsing.md @@ -0,0 +1,5 @@ +--- +"@tiptap/markdown": patch +--- + +Fixed markdown HTML parsing when window object is unavailable in server-side environments diff --git a/packages/markdown/__tests__/server-side-parsing.spec.ts b/packages/markdown/__tests__/server-side-parsing.spec.ts new file mode 100644 index 0000000000..1b3d613984 --- /dev/null +++ b/packages/markdown/__tests__/server-side-parsing.spec.ts @@ -0,0 +1,182 @@ +/** + * @vitest-environment node + */ + +import { Code } from '@tiptap/extension-code' +import { Document } from '@tiptap/extension-document' +import { Heading } from '@tiptap/extension-heading' +import { Paragraph } from '@tiptap/extension-paragraph' +import { Strike } from '@tiptap/extension-strike' +import { Text } from '@tiptap/extension-text' +import { MarkdownManager } from '@tiptap/markdown' +import { beforeEach, describe, expect, it } from 'vitest' + +describe('MarkdownManager Server-side Parsing', () => { + let manager: MarkdownManager + const basicExtensions = [Document, Paragraph, Text, Strike, Code, Heading] + + beforeEach(() => { + manager = new MarkdownManager({ extensions: basicExtensions }) + }) + + it('parses inline code with HTML-like tags and strike marks without error', () => { + const md = '`

    `~`

    `' + + const doc = manager.parse(md) + + expect(doc.type).toBe('doc') + expect(doc.content).toBeDefined() + + const paragraph = doc.content![0] + expect(paragraph.type).toBe('paragraph') + expect(paragraph.content).toBeDefined() + + // Find text nodes with code marks (inline code) + const codeTextNodes = paragraph.content!.filter( + (n: any) => n.type === 'text' && n.marks?.some((m: any) => m.type === 'code'), + ) + expect(codeTextNodes.length).toBeGreaterThan(0) + + // At least one code segment should contain an HTML-like tag + const hasHtmlTag = codeTextNodes.some((n: any) => n.text && (n.text.includes('

    ') || n.text.includes('

    '))) + expect(hasHtmlTag).toBe(true) + + // All text content combined should include both HTML tags and the tilde + const allTextNodes = paragraph.content!.filter((n: any) => n.type === 'text') + const allText = allTextNodes.map((n: any) => n.text).join('') + expect(allText).toContain('h1') + expect(allText).toContain('h6') + expect(allText).toMatch(/~/) + }) + + it('parses inline code with HTML-like tags and double strike marks without error', () => { + const md = '`

    `~~`

    `' + + const doc = manager.parse(md) + + expect(doc.type).toBe('doc') + expect(doc.content).toBeDefined() + + const paragraph = doc.content![0] + expect(paragraph.type).toBe('paragraph') + + // Find text nodes with code marks + const codeTextNodes = paragraph.content!.filter( + (n: any) => n.type === 'text' && n.marks?.some((m: any) => m.type === 'code'), + ) + expect(codeTextNodes.length).toBeGreaterThan(0) + + // At least one code segment should contain an HTML-like tag + const hasHtmlTag = codeTextNodes.some((n: any) => n.text && (n.text.includes('

    ') || n.text.includes('

    '))) + expect(hasHtmlTag).toBe(true) + + // All text should contain both HTML tags + const allTextNodes = paragraph.content!.filter((n: any) => n.type === 'text') + const allText = allTextNodes.map((n: any) => n.text).join('') + expect(allText).toContain('h1') + expect(allText).toContain('h6') + }) + + it('parses strike marks in normal text', () => { + const md = 'a~b' + const doc = manager.parse(md) + + expect(doc.type).toBe('doc') + expect(Array.isArray(doc.content)).toBe(true) + }) + + it('parses HTML heading tags with strike marks', () => { + const md = '

    ~~test~~

    ' + + const doc = manager.parse(md) + + expect(doc.type).toBe('doc') + expect(doc.content).toBeDefined() + + const paragraph = doc.content![0] + expect(paragraph.type).toBe('paragraph') + expect(paragraph.content).toBeDefined() + + // In Node.js environment, HTML tags should be treated as literal text + const allText = paragraph + .content!.map((n: any) => (n.text ? n.text : n.content?.map((c: any) => c.text).join('') || '')) + .join('') + + // Should contain the HTML tags as literal text + expect(allText).toContain('

    ') + expect(allText).toContain('

    ') + + // Should contain 'test' text + expect(allText).toContain('test') + }) + + it('parses multiple inline code segments with HTML-like content and strike', () => { + const md = 'text `

    ` more ~~text~~ and `

    `' + + const doc = manager.parse(md) + + expect(doc.type).toBe('doc') + expect(doc.content).toBeDefined() + + const paragraph = doc.content![0] + expect(paragraph.type).toBe('paragraph') + + // Find text nodes with code marks (inline code) + const codeTextNodes = paragraph.content!.filter( + (n: any) => n.type === 'text' && n.marks?.some((m: any) => m.type === 'code'), + ) + expect(codeTextNodes.length).toBeGreaterThanOrEqual(2) + + // Code text should contain literal HTML-like tags + expect(codeTextNodes[0].text).toBe('

    ') + expect(codeTextNodes[1].text).toBe('

    ') + + // Find text nodes with strike marks + const textNodes = paragraph.content!.filter((n: any) => n.type === 'text') + const strikeTextNode = textNodes.find( + (n: any) => n.text && n.text.includes('text') && n.marks?.some((m: any) => m.type === 'strike'), + ) + expect(strikeTextNode).toBeDefined() + }) + + it('parses HTML tags as plain text in server environment', () => { + const md = '

    Hello

    ' + + const doc = manager.parse(md) + + expect(doc.type).toBe('doc') + expect(doc.content).toBeDefined() + expect(Array.isArray(doc.content)).toBe(true) + + // The document should have a paragraph + const paragraph = doc.content![0] + expect(paragraph.type).toBe('paragraph') + expect(paragraph.content).toBeDefined() + + // The HTML should be preserved as literal text (not parsed) + const textContent = paragraph.content!.map((n: any) => n.text).join('') + expect(textContent).toContain('

    Hello

    ') + }) + + it('still parses markdown syntax correctly alongside HTML', () => { + const md = '
    test
    ~~world~~' + + const doc = manager.parse(md) + + expect(doc.type).toBe('doc') + expect(doc.content).toBeDefined() + + // Find all text nodes + const textNodes = doc.content!.flatMap((node: any) => + node.content ? node.content.filter((n: any) => n.type === 'text') : [], + ) + + // Should have HTML as literal text + const hasHtmlText = textNodes.some((n: any) => n.text && n.text.includes('
    test
    ')) + expect(hasHtmlText).toBe(true) + + // Should have 'world' text (with or without strike mark depending on parsing) + const hasWorldText = textNodes.some((n: any) => n.text && n.text.includes('world')) + expect(hasWorldText).toBe(true) + }) +}) diff --git a/packages/markdown/src/MarkdownManager.ts b/packages/markdown/src/MarkdownManager.ts index 35db1840a0..69712c53aa 100644 --- a/packages/markdown/src/MarkdownManager.ts +++ b/packages/markdown/src/MarkdownManager.ts @@ -757,6 +757,28 @@ export class MarkdownManager { return null } + // Check if we're in a server-side environment (no window object) + // If so, fall back to treating HTML as plain text to avoid runtime errors + if (typeof window === 'undefined') { + // For block-level HTML, wrap in a paragraph to maintain valid document structure + if (token.block) { + return { + type: 'paragraph', + content: [ + { + type: 'text', + text: html, + }, + ], + } + } + // For inline HTML, return plain text + return { + type: 'text', + text: html, + } + } + // Use generateJSON to parse the HTML using extensions' parseHTML rules try { const parsed = generateJSON(html, this.baseExtensions) From f592f0a533710ad1d1c7cc6d98ce3ac90ebc51c8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 24 Jan 2026 17:51:58 +0100 Subject: [PATCH 597/629] chore(release): publish a new release version (#7443) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/1769236404-fix-empty-paragraphs.md | 6 -- .changeset/fix-chinese-input-ime-vue3.md | 5 -- .changeset/fix-collaboration-caret-crash.md | 7 -- .changeset/fix-happy-dom-resource-loading.md | 5 -- .changeset/fix-hide-middleware-menus.md | 6 -- .changeset/fix-jsdom-server-detection.md | 5 -- .../fix-markdown-server-side-html-parsing.md | 5 -- .changeset/fix-nodes-inline-nodes.md | 5 -- .../fix-ordered-list-start-attribute.md | 6 -- ...ix-resizable-node-view-content-dom-type.md | 5 -- CHANGELOG.md | 72 +++++++++++++++++++ .../extension-character-count/CHANGELOG.md | 6 ++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 7 ++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 7 ++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 7 ++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 7 ++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 8 +++ packages/core/package.json | 2 +- packages/extension-audio/CHANGELOG.md | 8 +++ packages/extension-audio/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 8 +++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 8 +++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 10 +++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 7 ++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 10 +++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 9 +++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 8 +++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 10 +++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 10 +++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 10 +++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 8 +++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 9 +++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 9 +++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 10 +++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 13 ++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 10 +++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 10 +++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 10 +++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 8 +++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 8 +++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 8 +++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 9 +++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 8 +++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 10 +++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 8 +++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 9 +++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 10 +++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 9 +++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 10 +++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 9 +++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 7 ++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 9 +++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 8 +++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 9 +++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 9 +++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 9 +++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 9 +++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 8 +++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 8 +++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 8 +++ packages/extension-text/package.json | 2 +- packages/extension-twitch/CHANGELOG.md | 8 +++ packages/extension-twitch/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 8 +++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 8 +++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 9 +++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 8 +++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 9 +++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 11 +++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 12 ++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 9 +++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 33 +++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 9 +++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 9 +++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 9 +++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 10 +++ packages/vue-3/package.json | 2 +- 155 files changed, 767 insertions(+), 127 deletions(-) delete mode 100644 .changeset/1769236404-fix-empty-paragraphs.md delete mode 100644 .changeset/fix-chinese-input-ime-vue3.md delete mode 100644 .changeset/fix-collaboration-caret-crash.md delete mode 100644 .changeset/fix-happy-dom-resource-loading.md delete mode 100644 .changeset/fix-hide-middleware-menus.md delete mode 100644 .changeset/fix-jsdom-server-detection.md delete mode 100644 .changeset/fix-markdown-server-side-html-parsing.md delete mode 100644 .changeset/fix-nodes-inline-nodes.md delete mode 100644 .changeset/fix-ordered-list-start-attribute.md delete mode 100644 .changeset/fix-resizable-node-view-content-dom-type.md diff --git a/.changeset/1769236404-fix-empty-paragraphs.md b/.changeset/1769236404-fix-empty-paragraphs.md deleted file mode 100644 index 66337e9a0d..0000000000 --- a/.changeset/1769236404-fix-empty-paragraphs.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/extension-paragraph': patch -'@tiptap/markdown': patch ---- - -Fixed markdown serialization doubling newlines and parsing collapsing multiple blank lines diff --git a/.changeset/fix-chinese-input-ime-vue3.md b/.changeset/fix-chinese-input-ime-vue3.md deleted file mode 100644 index c1a11bd1ed..0000000000 --- a/.changeset/fix-chinese-input-ime-vue3.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/vue-3': patch ---- - -Fixed IME input (Chinese, Japanese, Korean) in Vue 3 mark views by preventing DOM element destruction during composition events diff --git a/.changeset/fix-collaboration-caret-crash.md b/.changeset/fix-collaboration-caret-crash.md deleted file mode 100644 index bf5443b6f8..0000000000 --- a/.changeset/fix-collaboration-caret-crash.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@tiptap/extension-collaboration-caret': patch -'@tiptap/extension-collaboration': patch -'@tiptap/extension-drag-handle': patch ---- - -Fixed CollaborationCaret crash with "Cannot read properties of undefined (reading 'doc')" error by updating to @tiptap/y-tiptap@3.0.2, which includes a guard against undefined state during editor initialization. This issue affected editors initialized with HTML content, particularly when using tables. diff --git a/.changeset/fix-happy-dom-resource-loading.md b/.changeset/fix-happy-dom-resource-loading.md deleted file mode 100644 index c3e3f02db9..0000000000 --- a/.changeset/fix-happy-dom-resource-loading.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/html': patch ---- - -Fixed server-side HTML parsing crash when content contains link, script, or style tags with resource references. diff --git a/.changeset/fix-hide-middleware-menus.md b/.changeset/fix-hide-middleware-menus.md deleted file mode 100644 index ca04c750d6..0000000000 --- a/.changeset/fix-hide-middleware-menus.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@tiptap/extension-bubble-menu": patch -"@tiptap/extension-floating-menu": patch ---- - -Fixed bubble and floating menus to properly handle hide middleware data, hiding menus when reference element is scrolled out of view diff --git a/.changeset/fix-jsdom-server-detection.md b/.changeset/fix-jsdom-server-detection.md deleted file mode 100644 index 19a201e038..0000000000 --- a/.changeset/fix-jsdom-server-detection.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/html": patch ---- - -Fixed server exports failing in Node.js test environments with jsdom/happy-dom diff --git a/.changeset/fix-markdown-server-side-html-parsing.md b/.changeset/fix-markdown-server-side-html-parsing.md deleted file mode 100644 index 95aeb9d5e5..0000000000 --- a/.changeset/fix-markdown-server-side-html-parsing.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/markdown": patch ---- - -Fixed markdown HTML parsing when window object is unavailable in server-side environments diff --git a/.changeset/fix-nodes-inline-nodes.md b/.changeset/fix-nodes-inline-nodes.md deleted file mode 100644 index dcdf2fdf58..0000000000 --- a/.changeset/fix-nodes-inline-nodes.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Fixed `$nodes()` method to correctly return inline nodes (like text, mention, etc.) by fixing the `children` getter in `NodePos` class diff --git a/.changeset/fix-ordered-list-start-attribute.md b/.changeset/fix-ordered-list-start-attribute.md deleted file mode 100644 index ccef5dba26..0000000000 --- a/.changeset/fix-ordered-list-start-attribute.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/markdown': patch -'@tiptap/extension-list': patch ---- - -Fixed ordered list numbering when list has a non-default start value diff --git a/.changeset/fix-resizable-node-view-content-dom-type.md b/.changeset/fix-resizable-node-view-content-dom-type.md deleted file mode 100644 index f8316cad0c..0000000000 --- a/.changeset/fix-resizable-node-view-content-dom-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/core": patch ---- - -Fixed ResizableNodeView contentDOM getter to return null instead of undefined for proper TypeScript compatibility diff --git a/CHANGELOG.md b/CHANGELOG.md index fd3ee7e4a0..77cac5fe1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,77 @@ # Releases +## v3.17.1 + +### @tiptap/extension-paragraph + +#### Patch Changes + +- Fixed markdown serialization doubling newlines and parsing collapsing multiple blank lines + +### @tiptap/markdown + +#### Patch Changes + +- Fixed markdown serialization doubling newlines and parsing collapsing multiple blank lines +- Fixed markdown HTML parsing when window object is unavailable in server-side environments +- Fixed ordered list numbering when list has a non-default start value + +### @tiptap/vue-3 + +#### Patch Changes + +- Fixed IME input (Chinese, Japanese, Korean) in Vue 3 mark views by preventing DOM element destruction during composition events + +### @tiptap/extension-collaboration-caret + +#### Patch Changes + +- Fixed CollaborationCaret crash with "Cannot read properties of undefined (reading 'doc')" error by updating to @tiptap/y-tiptap@3.0.2, which includes a guard against undefined state during editor initialization. This issue affected editors initialized with HTML content, particularly when using tables. + +### @tiptap/extension-collaboration + +#### Patch Changes + +- Fixed CollaborationCaret crash with "Cannot read properties of undefined (reading 'doc')" error by updating to @tiptap/y-tiptap@3.0.2, which includes a guard against undefined state during editor initialization. This issue affected editors initialized with HTML content, particularly when using tables. + +### @tiptap/extension-drag-handle + +#### Patch Changes + +- Fixed CollaborationCaret crash with "Cannot read properties of undefined (reading 'doc')" error by updating to @tiptap/y-tiptap@3.0.2, which includes a guard against undefined state during editor initialization. This issue affected editors initialized with HTML content, particularly when using tables. + +### @tiptap/html + +#### Patch Changes + +- Fixed server-side HTML parsing crash when content contains link, script, or style tags with resource references. +- Fixed server exports failing in Node.js test environments with jsdom/happy-dom + +### @tiptap/extension-bubble-menu + +#### Patch Changes + +- Fixed bubble and floating menus to properly handle hide middleware data, hiding menus when reference element is scrolled out of view + +### @tiptap/extension-floating-menu + +#### Patch Changes + +- Fixed bubble and floating menus to properly handle hide middleware data, hiding menus when reference element is scrolled out of view + +### @tiptap/core + +#### Patch Changes + +- Fixed `$nodes()` method to correctly return inline nodes (like text, mention, etc.) by fixing the `children` getter in `NodePos` class +- Fixed ResizableNodeView contentDOM getter to return null instead of undefined for proper TypeScript compatibility + +### @tiptap/extension-list + +#### Patch Changes + +- Fixed ordered list numbering when list has a non-default start value + ## v3.17.0 ### @tiptap/extension-bubble-menu diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 13b3f77a35..dfba355b1e 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extensions@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 4670c10163..75c9b89897 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index c75796fcda..283d402ba5 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extensions@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 1ce87d1f1d..30912f0a58 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 6508710cdf..b1b5c6e301 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extensions@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index ba4f992a90..c28b0ab16f 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index 0bbf78f1c2..f9eb4ff9d3 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extensions@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 19fa8909d8..8a16cb18d7 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index a5c996f997..8af5b602d0 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extensions@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 901b5ee984..8270068bba 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 4b3a8ad077..d02e8d21f5 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [5d267cb] + - @tiptap/extension-list@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index dd76b98842..05218687ed 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index df6b8226a5..8eed0cb07b 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [5d267cb] + - @tiptap/extension-list@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index b7c7ee34a0..066328a140 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 7ad280a0b6..babc5c9900 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extensions@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index d65eec8ce5..2c4dd052ed 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index b059bc6e8e..c15d5f6fd8 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extension-table@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index e53d11c909..02b75235a0 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 1feec66965..3a045beb05 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extension-table@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index c4015b38b2..3ffa8a5f35 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index a693ce38b8..2941e86e29 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extension-table@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 90253f46c9..f5c4f64bec 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 631e27ca22..42e44094e7 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [5d267cb] + - @tiptap/extension-list@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 5a33c8f2a3..bcea11a002 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index dcf344951c..a501fd51d1 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [5d267cb] + - @tiptap/extension-list@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 94c3f0f614..d43579eafa 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 3be27a326f..2aa829df2b 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- aa9709e: Fixed `$nodes()` method to correctly return inline nodes (like text, mention, etc.) by fixing the `children` getter in `NodePos` class +- b46e66a: Fixed ResizableNodeView contentDOM getter to return null instead of undefined for proper TypeScript compatibility + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index a04761c0dc..e9b68bfc4d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-audio/CHANGELOG.md b/packages/extension-audio/CHANGELOG.md index 5ab44422b0..b21d0faeed 100644 --- a/packages/extension-audio/CHANGELOG.md +++ b/packages/extension-audio/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-audio +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-audio/package.json b/packages/extension-audio/package.json index b3e604785e..718fdc7d51 100644 --- a/packages/extension-audio/package.json +++ b/packages/extension-audio/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-audio", "description": "audio extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 69895f3fcb..7f30abbd4b 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index a9de522793..eddeac5c1b 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 6471191a3c..3778cf2d3b 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index 05e01df8f3..d87608c0c6 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 7d1c2a99dd..4458d75956 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- 725d182: Fixed bubble and floating menus to properly handle hide middleware data, hiding menus when reference element is scrolled out of view +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index f927bc44c6..4eb54f3a2a 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 305c6e69c3..2a7a54cbd5 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [5d267cb] + - @tiptap/extension-list@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 315fb3ad29..430bfd0026 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index c5adebd1fb..dcea5f02df 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/extension-code-block@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 90d428b0df..d4e0408537 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 34598832fb..f11e3caa61 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 4dc994c4fb..e2cba04046 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 970c0f831c..411a822b59 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index a236ae780b..87f1b98e7a 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index c45a8d4655..1d7b7c8ee9 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- 1a55fd0: Fixed CollaborationCaret crash with "Cannot read properties of undefined (reading 'doc')" error by updating to @tiptap/y-tiptap@3.0.2, which includes a guard against undefined state during editor initialization. This issue affected editors initialized with HTML content, particularly when using tables. +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index d13faa1182..4fcb887e7a 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index d3eed77e98..46b4f98a92 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- 1a55fd0: Fixed CollaborationCaret crash with "Cannot read properties of undefined (reading 'doc')" error by updating to @tiptap/y-tiptap@3.0.2, which includes a guard against undefined state during editor initialization. This issue affected editors initialized with HTML content, particularly when using tables. +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 6c11777657..9cd417a48c 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 13a7204d08..7b5a1353d7 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index a4bf64dddb..cdb86a04fe 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index dacdcb1625..111ab8f943 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-details +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/extension-text-style@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 9a1be37e70..1e6aee3206 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 7866d5097b..d3da603f1b 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 76b5bb5881..610891b25e 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 562e4263ac..44eab2d89e 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-react +## 3.17.1 + +### Patch Changes + +- Updated dependencies [1a55fd0] + - @tiptap/extension-drag-handle@3.17.1 + - @tiptap/react@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Minor Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 581f52b4e8..e42ad547f8 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 7cd27d5da1..5564c70252 100644 --- a/packages/extension-drag-handle-vue-2/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-2 +## 3.17.1 + +### Patch Changes + +- Updated dependencies [1a55fd0] + - @tiptap/extension-drag-handle@3.17.1 + - @tiptap/vue-2@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Minor Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index ced344aeb7..d56064f466 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 414063d3c0..1d11b7e2de 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.17.1 + +### Patch Changes + +- Updated dependencies [4807c55] +- Updated dependencies [1a55fd0] + - @tiptap/vue-3@3.17.1 + - @tiptap/extension-drag-handle@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Minor Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index c5337ac9af..4ca5719cf2 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index cc532adf3e..c23006d95a 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,18 @@ # @tiptap/extension-drag-handle +## 3.17.1 + +### Patch Changes + +- 1a55fd0: Fixed CollaborationCaret crash with "Cannot read properties of undefined (reading 'doc')" error by updating to @tiptap/y-tiptap@3.0.2, which includes a guard against undefined state during editor initialization. This issue affected editors initialized with HTML content, particularly when using tables. +- Updated dependencies [1a55fd0] +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/extension-collaboration@3.17.1 + - @tiptap/core@3.17.1 + - @tiptap/extension-node-range@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Minor Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 458aa587c1..fafa5b7249 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index a68abfcd08..4f17383ae6 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-emoji +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/suggestion@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index f543f8909c..a4863a0c83 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index e458e72e6f..56b810ec4e 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-file-handler +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/extension-text-style@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 5478204fdd..8187ca1e81 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index 0d06e63f00..b0b7686010 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- 725d182: Fixed bubble and floating menus to properly handle hide middleware data, hiding menus when reference element is scrolled out of view +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 39ba6ae4a1..84d5505b6a 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 521223d95f..c98553565d 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- @tiptap/extension-text-style@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 6e1265d391..fdb69dee4e 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 0a7f255ca1..1db7d83a9c 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index a67bfe1b3f..542d557c4d 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 43a1decf39..146def9694 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 324e018445..d81b8cf490 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index 97ef145807..a2b0f103a2 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index be4fd5a0cd..f2cb2e2803 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index afd64b9723..a1b16a4a62 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index e58e4bf553..ba8851e493 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 766b98af90..3d343cc4c3 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 91723ab7a1..132dc4dc6a 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index b985785822..9aeb376106 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-invisible-characters +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/extension-text-style@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index be83701746..e88d6f4407 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index ee9cfefca8..ede17d45a8 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 3336db52f3..743ce105a0 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index acfb7a67a0..814269ddd0 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index 228ef3673d..e6b6f0202c 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index 53bfac68d8..e65b9a9960 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- 5d267cb: Fixed ordered list numbering when list has a non-default start value +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 9ec018c4b7..b69747db01 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index cbd6151fc9..deead47ac4 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-mathematics +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index eae13ac058..5848b55f25 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index e7728fb3d8..d887da2082 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/suggestion@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 7b2d9ec9b2..dbce1b3567 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 9364184ff0..bec844accd 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-node-range +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 70c392b708..9c0399da25 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 45d39de2c6..4f415d8050 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [5d267cb] + - @tiptap/extension-list@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index cb0a668974..193563e409 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index ad7c144b5b..0a276bf5b4 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- 62c6f15: Fixed markdown serialization doubling newlines and parsing collapsing multiple blank lines +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 7d45f2a14f..7a9edf78f2 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 620b422aea..4c84b1bc80 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index c875576248..84c178f495 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 5eb91a949e..34c530c83e 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index dcf563d314..fb84a59690 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index b1af9edd8b..911a474f1b 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index f7bd991e76..5977d3481c 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 44d87cf284..bba991bf2b 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-table-of-contents +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 8f713a1958..84fb2d2f87 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 196fbcbd0d..3d76afb531 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 74d9fac086..738027bfb3 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 9113fbfe59..3779401606 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 3d3e4cce86..7a72a2b4a5 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index 11a7162fcd..bf295e40cf 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index f4635f1470..506847142a 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 4ad3eaadbc..4e1c778773 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 99dc1c260e..47f107fe12 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md index 762907cad8..27c3596a50 100644 --- a/packages/extension-twitch/CHANGELOG.md +++ b/packages/extension-twitch/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-twitch +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json index 94edf048b6..e18abdfffa 100644 --- a/packages/extension-twitch/package.json +++ b/packages/extension-twitch/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-twitch", "description": "a twitch embed extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 5a61ceb694..42a3843600 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 3115f76e4f..d73886e855 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index a426b9b109..2ab5e73322 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index e5b7c8b9ac..2161d87e95 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index dae36759dc..91de9f9f93 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-unique-id +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 3879307dd7..32098b2a66 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index 7e88bcfcd1..fbc855f721 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 864c517d23..3a40d83ed1 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index 38526396b0..f64950561e 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index ae2ceec070..dc0aa1affc 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 1aa7ab491e..c597bd7beb 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,16 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- 52146ad: Fixed server-side HTML parsing crash when content contains link, script, or style tags with resource references. +- 547cf9e: Fixed server exports failing in Node.js test environments with jsdom/happy-dom +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index e78b5dcc74..5cd67422cb 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 6aa3648027..391ca4b2e2 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,17 @@ # @tiptap/markdown +## 3.17.1 + +### Patch Changes + +- 62c6f15: Fixed markdown serialization doubling newlines and parsing collapsing multiple blank lines +- 4bcacda: Fixed markdown HTML parsing when window object is unavailable in server-side environments +- 5d267cb: Fixed ordered list numbering when list has a non-default start value +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index ff2430ee4c..b3506947d7 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index ab4faa58ee..0042527e67 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.17.1 + ## 3.17.0 ## 3.16.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index 690fadaa80..542ded0735 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 88bf216a10..c941b088fc 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 897b15f5cb..0328d34435 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 8c009c3bc9..cea1906631 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,38 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [62c6f15] +- Updated dependencies [aa9709e] +- Updated dependencies [5d267cb] +- Updated dependencies [b46e66a] + - @tiptap/extension-paragraph@3.17.1 + - @tiptap/core@3.17.1 + - @tiptap/extension-list@3.17.1 + - @tiptap/extension-blockquote@3.17.1 + - @tiptap/extension-bold@3.17.1 + - @tiptap/extension-code@3.17.1 + - @tiptap/extension-code-block@3.17.1 + - @tiptap/extension-document@3.17.1 + - @tiptap/extension-hard-break@3.17.1 + - @tiptap/extension-heading@3.17.1 + - @tiptap/extension-horizontal-rule@3.17.1 + - @tiptap/extension-italic@3.17.1 + - @tiptap/extension-link@3.17.1 + - @tiptap/extension-strike@3.17.1 + - @tiptap/extension-text@3.17.1 + - @tiptap/extension-underline@3.17.1 + - @tiptap/extensions@3.17.1 + - @tiptap/extension-list-item@3.17.1 + - @tiptap/extension-list-keymap@3.17.1 + - @tiptap/extension-bullet-list@3.17.1 + - @tiptap/extension-ordered-list@3.17.1 + - @tiptap/extension-dropcursor@3.17.1 + - @tiptap/extension-gapcursor@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 4a22e0c3b5..740dc83f07 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index b043b78058..d710b99279 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 9a9ea16063..a7ec6af491 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 1214e0cae7..a087d029b6 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 96037a652e..9ad4381a2d 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 2e6847da93..1ab113f468 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index a664a048bb..15b5491941 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 16263706a2..f8ffd27310 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,15 @@ # Change Log +## 3.17.1 + +### Patch Changes + +- 4807c55: Fixed IME input (Chinese, Japanese, Korean) in Vue 3 mark views by preventing DOM element destruction during composition events +- Updated dependencies [aa9709e] +- Updated dependencies [b46e66a] + - @tiptap/core@3.17.1 + - @tiptap/pm@3.17.1 + ## 3.17.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 11333a5a67..34257ddeac 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.17.0", + "version": "3.17.1", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 328aedbb2e6d801b73d602783ddb6955caded2e9 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Mon, 26 Jan 2026 09:35:22 +0100 Subject: [PATCH 598/629] feat(react): introduce `` component for easier integration (#6917) * feat(react): introduce `` component for improved editor integration * Update packages/react/src/Tiptap.tsx Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * feat(react): enhance `` component with additional context and utility functions * fix: improve Tiptap component with null safety and backwards compatibility - Accept Editor | null in TiptapWrapperProps to match useEditor return type - Add backwards compatibility with EditorContext for useCurrentEditor - Memoize context values to prevent unnecessary re-renders - Add displayName to all components for better debugging - Update useTiptapState to handle null editor correctly - Improve JSDoc documentation with more examples * refactor: update Default React demo to use Tiptap component - Use the new component with Tiptap.Content - Extract MenuBar into its own component file - Extract state selector into menuBarState.ts for better readability - Demonstrate useTiptap and useTiptapState hooks usage --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .changeset/react-tiptap-new-setup.md | 36 ++ demos/src/Examples/Default/React/MenuBar.tsx | 128 +++++++ demos/src/Examples/Default/React/index.tsx | 168 +-------- .../Examples/Default/React/menuBarState.ts | 42 +++ packages/core/src/commands/focus.ts | 10 +- packages/react/src/Tiptap.tsx | 355 ++++++++++++++++++ packages/react/src/index.ts | 1 + 7 files changed, 583 insertions(+), 157 deletions(-) create mode 100644 .changeset/react-tiptap-new-setup.md create mode 100644 demos/src/Examples/Default/React/MenuBar.tsx create mode 100644 demos/src/Examples/Default/React/menuBarState.ts create mode 100644 packages/react/src/Tiptap.tsx diff --git a/.changeset/react-tiptap-new-setup.md b/.changeset/react-tiptap-new-setup.md new file mode 100644 index 0000000000..e165c9b012 --- /dev/null +++ b/.changeset/react-tiptap-new-setup.md @@ -0,0 +1,36 @@ +--- +"@tiptap/react": minor +--- + +Introduce a new, optional React integration that provides a declarative `` component for setting up editors in React apps. + +Summary +- Add a new, ergonomic way to initialize and use Tiptap editors in React via `` components. This is an additive change and does not remove or change existing APIs. + +Why this change +- Improves ergonomics for React users by offering a component-first API that pairs well with React patterns (hooks, JSX composition and props-driven configuration). + +Migration and usage +- The old programmatic setup remains supported for this major version — nothing breaks. We encourage consumers to try the new `` component and migrate when convenient. + +Example + +```tsx +import { Tiptap, useEditor } from '@tiptap/react' + +function MyEditor() { + const editor = useEditor({ extensions: [StarterKit], content: '

    Hello from Tiptap

    ' }) + + return ( + + + My Bubble Menu + My Floating Menu + {/* MenuBar can use the new `useTiptap` hook to read the editor instance from context */} + + ) +} +``` + +Deprecation plan +- The old imperative setup will remain fully backward-compatible for this major release. We plan to deprecate (and remove) the legacy setup in the next major version — a deprecation notice and migration guide will be published ahead of that change. diff --git a/demos/src/Examples/Default/React/MenuBar.tsx b/demos/src/Examples/Default/React/MenuBar.tsx new file mode 100644 index 0000000000..e554bef067 --- /dev/null +++ b/demos/src/Examples/Default/React/MenuBar.tsx @@ -0,0 +1,128 @@ +import { useTiptap, useTiptapState } from '@tiptap/react' +import React from 'react' + +import { menuBarStateSelector } from './menuBarState.ts' + +/** + * Menu bar component that uses useTiptap and useTiptapState hooks + * to access the editor from context. + */ +export function MenuBar() { + const { editor, isReady } = useTiptap() + const editorState = useTiptapState(menuBarStateSelector) + + if (!isReady || !editor) { + return null + } + + return ( +
    +
    + + + + + + + + + + + + + + + + + + + + + +
    +
    + ) +} diff --git a/demos/src/Examples/Default/React/index.tsx b/demos/src/Examples/Default/React/index.tsx index fb5f55b1f8..ca2bbc4511 100644 --- a/demos/src/Examples/Default/React/index.tsx +++ b/demos/src/Examples/Default/React/index.tsx @@ -1,156 +1,13 @@ import './styles.scss' import { TextStyleKit } from '@tiptap/extension-text-style' -import type { Editor } from '@tiptap/react' -import { EditorContent, useEditor, useEditorState } from '@tiptap/react' +import { Tiptap, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React from 'react' -const extensions = [TextStyleKit, StarterKit] - -function MenuBar({ editor }: { editor: Editor }) { - // Read the current editor's state, and re-render the component when it changes - const editorState = useEditorState({ - editor, - selector: ctx => { - return { - isBold: ctx.editor.isActive('bold') ?? false, - canBold: ctx.editor.can().chain().toggleBold().run() ?? false, - isItalic: ctx.editor.isActive('italic') ?? false, - canItalic: ctx.editor.can().chain().toggleItalic().run() ?? false, - isStrike: ctx.editor.isActive('strike') ?? false, - canStrike: ctx.editor.can().chain().toggleStrike().run() ?? false, - isCode: ctx.editor.isActive('code') ?? false, - canCode: ctx.editor.can().chain().toggleCode().run() ?? false, - canClearMarks: ctx.editor.can().chain().unsetAllMarks().run() ?? false, - isParagraph: ctx.editor.isActive('paragraph') ?? false, - isHeading1: ctx.editor.isActive('heading', { level: 1 }) ?? false, - isHeading2: ctx.editor.isActive('heading', { level: 2 }) ?? false, - isHeading3: ctx.editor.isActive('heading', { level: 3 }) ?? false, - isHeading4: ctx.editor.isActive('heading', { level: 4 }) ?? false, - isHeading5: ctx.editor.isActive('heading', { level: 5 }) ?? false, - isHeading6: ctx.editor.isActive('heading', { level: 6 }) ?? false, - isBulletList: ctx.editor.isActive('bulletList') ?? false, - isOrderedList: ctx.editor.isActive('orderedList') ?? false, - isCodeBlock: ctx.editor.isActive('codeBlock') ?? false, - isBlockquote: ctx.editor.isActive('blockquote') ?? false, - canUndo: ctx.editor.can().chain().undo().run() ?? false, - canRedo: ctx.editor.can().chain().redo().run() ?? false, - } - }, - }) +import { MenuBar } from './MenuBar.tsx' - return ( -
    -
    - - - - - - - - - - - - - - - - - - - - - -
    -
    - ) -} +const extensions = [TextStyleKit, StarterKit] export default () => { const editor = useEditor({ @@ -160,36 +17,37 @@ export default () => { Hi there,

    - this is a basic example of Tiptap. Sure, there are all kind of basic text styles you’d probably expect from a text editor. But wait until you see the lists: + this is a basic example of Tiptap. Sure, there are all kind of basic text styles you'd probably expect from a text editor. But wait until you see the lists:

    • - That’s a bullet list with one … + That's a bullet list with one …
    • … or two list items.

    - Isn’t that great? And all of that is editable. But wait, there’s more. Let’s try a code block: + Isn't that great? And all of that is editable. But wait, there's more. Let's try a code block:

    body {
       display: none;
     }

    - I know, I know, this is impressive. It’s only the tip of the iceberg though. Give it a try and click a little bit around. Don’t forget to check the other examples too. + I know, I know, this is impressive. It's only the tip of the iceberg though. Give it a try and click a little bit around. Don't forget to check the other examples too.

    - Wow, that’s amazing. Good work, boy! 👏 + Wow, that's amazing. Good work, boy! 👏
    — Mom
    `, }) + return ( -
    - - -
    + + + + ) } diff --git a/demos/src/Examples/Default/React/menuBarState.ts b/demos/src/Examples/Default/React/menuBarState.ts new file mode 100644 index 0000000000..8a2d43f47a --- /dev/null +++ b/demos/src/Examples/Default/React/menuBarState.ts @@ -0,0 +1,42 @@ +import type { Editor } from '@tiptap/core' +import type { EditorStateSnapshot } from '@tiptap/react' + +/** + * State selector for the MenuBar component. + * Extracts the relevant editor state for rendering menu buttons. + */ +export function menuBarStateSelector(ctx: EditorStateSnapshot) { + return { + // Text formatting + isBold: ctx.editor.isActive('bold') ?? false, + canBold: ctx.editor.can().chain().toggleBold().run() ?? false, + isItalic: ctx.editor.isActive('italic') ?? false, + canItalic: ctx.editor.can().chain().toggleItalic().run() ?? false, + isStrike: ctx.editor.isActive('strike') ?? false, + canStrike: ctx.editor.can().chain().toggleStrike().run() ?? false, + isCode: ctx.editor.isActive('code') ?? false, + canCode: ctx.editor.can().chain().toggleCode().run() ?? false, + canClearMarks: ctx.editor.can().chain().unsetAllMarks().run() ?? false, + + // Block types + isParagraph: ctx.editor.isActive('paragraph') ?? false, + isHeading1: ctx.editor.isActive('heading', { level: 1 }) ?? false, + isHeading2: ctx.editor.isActive('heading', { level: 2 }) ?? false, + isHeading3: ctx.editor.isActive('heading', { level: 3 }) ?? false, + isHeading4: ctx.editor.isActive('heading', { level: 4 }) ?? false, + isHeading5: ctx.editor.isActive('heading', { level: 5 }) ?? false, + isHeading6: ctx.editor.isActive('heading', { level: 6 }) ?? false, + + // Lists and blocks + isBulletList: ctx.editor.isActive('bulletList') ?? false, + isOrderedList: ctx.editor.isActive('orderedList') ?? false, + isCodeBlock: ctx.editor.isActive('codeBlock') ?? false, + isBlockquote: ctx.editor.isActive('blockquote') ?? false, + + // History + canUndo: ctx.editor.can().chain().undo().run() ?? false, + canRedo: ctx.editor.can().chain().redo().run() ?? false, + } +} + +export type MenuBarState = ReturnType diff --git a/packages/core/src/commands/focus.ts b/packages/core/src/commands/focus.ts index 8eb93b5d6c..61201b5e09 100644 --- a/packages/core/src/commands/focus.ts +++ b/packages/core/src/commands/focus.ts @@ -69,8 +69,14 @@ export const focus: RawCommands['focus'] = }) } - if ((view.hasFocus() && position === null) || position === false) { - return true + try { + if ((view.hasFocus() && position === null) || position === false) { + return true + } + } catch { + // if view.hasFocus fails (view not mounted yet) + // we will return false because there's nothing to focus + return false } // we don’t try to resolve a NodeSelection or CellSelection diff --git a/packages/react/src/Tiptap.tsx b/packages/react/src/Tiptap.tsx new file mode 100644 index 0000000000..0179e7a905 --- /dev/null +++ b/packages/react/src/Tiptap.tsx @@ -0,0 +1,355 @@ +import type { ReactNode } from 'react' +import { createContext, useContext, useEffect, useMemo, useState } from 'react' + +import { EditorContext } from './Context.js' +import type { Editor, EditorContentProps, EditorStateSnapshot } from './index.js' +import { EditorContent, useEditorState } from './index.js' +import { type BubbleMenuProps, BubbleMenu } from './menus/BubbleMenu.js' +import { type FloatingMenuProps, FloatingMenu } from './menus/FloatingMenu.js' + +/** + * The shape of the React context used by the `` components. + * + * This object exposes the editor instance and a simple readiness flag. + */ +export type TiptapContextType = { + /** The Tiptap editor instance. May be null during SSR or before initialization. */ + editor: Editor | null + + /** True when the editor has finished initializing and is ready for user interaction. */ + isReady: boolean +} + +/** + * React context that stores the current editor instance and readiness flag. + * + * Use `useTiptap()` to read from this context in child components. + */ +export const TiptapContext = createContext({ + editor: null, + isReady: false, +}) + +TiptapContext.displayName = 'TiptapContext' + +/** + * Hook to read the Tiptap context (`editor` + `isReady`). + * + * This is a small convenience wrapper around `useContext(TiptapContext)`. + * + * @returns The current `TiptapContextType` value from the provider. + * + * @example + * ```tsx + * import { useTiptap } from '@tiptap/react' + * + * function Status() { + * const { isReady } = useTiptap() + * return
    {isReady ? 'Editor ready' : 'Loading editor...'}
    + * } + * ``` + */ +export const useTiptap = () => useContext(TiptapContext) + +/** + * Select a slice of the editor state using the context-provided editor. + * + * This is a thin wrapper around `useEditorState` that reads the `editor` + * instance from `useTiptap()` so callers don't have to pass it manually. + * + * Important: This hook should only be used when the editor is available. + * Use the `isReady` flag from `useTiptap()` to guard against null editor, + * or ensure your component only renders after the editor is initialized. + * + * @typeParam TSelectorResult - The type returned by the selector. + * @param selector - Function that receives the editor state snapshot and + * returns the piece of state you want to subscribe to. + * @param equalityFn - Optional function to compare previous/next selected + * values and avoid unnecessary updates. + * @returns The selected slice of the editor state. + * + * @example + * ```tsx + * function WordCount() { + * const { isReady } = useTiptap() + * + * // Only use useTiptapState when the editor is ready + * const wordCount = useTiptapState(state => { + * const text = state.editor.state.doc.textContent + * return text.split(/\s+/).filter(Boolean).length + * }) + * + * if (!isReady) return null + * + * return {wordCount} words + * } + * ``` + */ +export function useTiptapState( + selector: (context: EditorStateSnapshot) => TSelectorResult, + equalityFn?: (a: TSelectorResult, b: TSelectorResult | null) => boolean, +) { + const { editor } = useTiptap() + return useEditorState({ + editor: editor as Editor, + selector, + equalityFn, + }) +} + +/** + * Props for the `Tiptap` root/provider component. + */ +export type TiptapWrapperProps = { + /** + * The editor instance to provide to child components. + * Can be null during SSR or before initialization. + */ + instance: Editor | null + children: ReactNode +} + +/** + * Top-level provider component that makes the editor instance available via + * React context and tracks when the editor becomes ready. + * + * The component listens to the editor's `create` event and flips the + * `isReady` flag once initialization completes. + * + * This component also provides backwards compatibility with the legacy + * `EditorContext`, so components using `useCurrentEditor()` will work + * inside a `` provider. + * + * @param props - Component props. + * @returns A context provider element wrapping `children`. + * + * @example + * ```tsx + * import { Tiptap, useEditor } from '@tiptap/react' + * + * function App() { + * const editor = useEditor({ extensions: [...] }) + * + * return ( + * + * + * + * + * ) + * } + * ``` + */ +export function TiptapWrapper({ instance, children }: TiptapWrapperProps) { + const [isReady, setIsReady] = useState(instance?.isInitialized ?? false) + + useEffect(() => { + if (!instance) { + setIsReady(false) + return + } + + // If the editor is already initialized, set isReady to true + if (instance.isInitialized) { + setIsReady(true) + return + } + + const handleCreate = () => { + setIsReady(true) + } + + instance.on('create', handleCreate) + + return () => { + instance.off('create', handleCreate) + } + }, [instance]) + + // Memoize context values to prevent unnecessary re-renders + const tiptapContextValue = useMemo(() => ({ editor: instance, isReady }), [instance, isReady]) + + // Provide backwards compatibility with the legacy EditorContext + // so components using useCurrentEditor() work inside + const legacyContextValue = useMemo(() => ({ editor: instance }), [instance]) + + return ( + + {children} + + ) +} + +TiptapWrapper.displayName = 'Tiptap' + +/** + * Convenience component that renders `EditorContent` using the context-provided + * editor instance. Use this instead of manually passing the `editor` prop. + * + * @param props - All `EditorContent` props except `editor` and `ref`. + * @returns An `EditorContent` element bound to the context editor. + * + * @example + * ```tsx + * // inside a Tiptap provider + * + * ``` + */ +export function TiptapContent({ ...rest }: Omit) { + const { editor } = useTiptap() + + return +} + +TiptapContent.displayName = 'Tiptap.Content' + +export type TiptapLoadingProps = { + children: ReactNode +} + +/** + * Component that renders its children only when the editor is not ready. + * + * This is useful for displaying loading states or placeholders during + * editor initialization, especially with SSR. + * + * @param props - The props for the TiptapLoading component. + * @returns The children when editor is not ready, or null when ready. + * + * @example + * ```tsx + * + * + *
    Loading editor...
    + *
    + * + *
    + * ``` + */ +export function TiptapLoading({ children }: TiptapLoadingProps) { + const { isReady } = useTiptap() + + if (isReady) { + return null + } + + return children +} + +TiptapLoading.displayName = 'Tiptap.Loading' + +/** + * A wrapper around the library `BubbleMenu` that injects the editor from + * context so callers don't need to pass the `editor` prop. + * + * Returns `null` when the editor is not available (for example during SSR). + * + * @param props - Props for the underlying `BubbleMenu` (except `editor`). + * @returns A `BubbleMenu` bound to the context editor, or `null`. + * + * @example + * ```tsx + * + * + * + * ``` + */ +export function TiptapBubbleMenu({ children, ...rest }: { children: ReactNode } & Omit) { + const { editor } = useTiptap() + + if (!editor) { + return null + } + + return ( + + {children} + + ) +} + +TiptapBubbleMenu.displayName = 'Tiptap.BubbleMenu' + +/** + * A wrapper around the library `FloatingMenu` that injects the editor from + * context so callers don't need to pass the `editor` prop. + * + * Returns `null` when the editor is not available. + * + * @param props - Props for the underlying `FloatingMenu` (except `editor`). + * @returns A `FloatingMenu` bound to the context editor, or `null`. + * + * @example + * ```tsx + * + * + * + * ``` + */ +export function TiptapFloatingMenu({ children, ...rest }: { children: ReactNode } & Omit) { + const { editor } = useTiptap() + + if (!editor) { + return null + } + + return ( + + {children} + + ) +} + +TiptapFloatingMenu.displayName = 'Tiptap.FloatingMenu' + +/** + * Root `Tiptap` component. Use it as the provider for all child components. + * + * The exported object includes several helper subcomponents for common use + * cases: `Content`, `Loading`, `BubbleMenu`, and `FloatingMenu`. + * + * This component provides both the new `TiptapContext` (accessed via `useTiptap()`) + * and the legacy `EditorContext` (accessed via `useCurrentEditor()`) for + * backwards compatibility. + * + * @example + * ```tsx + * const editor = useEditor({ extensions: [...] }) + * + * return ( + * + * Initializing editor... + * + * + * + * + * + * ) + * ``` + */ +export const Tiptap = Object.assign(TiptapWrapper, { + /** + * The Tiptap Content component that renders the EditorContent with the editor instance from the context. + * @see TiptapContent + */ + Content: TiptapContent, + + /** + * The Tiptap Loading component that renders its children only when the editor is not ready. + * @see TiptapLoading + */ + Loading: TiptapLoading, + + /** + * The Tiptap BubbleMenu component that wraps the BubbleMenu from Tiptap and provides the editor instance from the context. + * @see TiptapBubbleMenu + */ + BubbleMenu: TiptapBubbleMenu, + + /** + * The Tiptap FloatingMenu component that wraps the FloatingMenu from Tiptap and provides the editor instance from the context. + * @see TiptapFloatingMenu + */ + FloatingMenu: TiptapFloatingMenu, +}) + +export default Tiptap diff --git a/packages/react/src/index.ts b/packages/react/src/index.ts index c6b6a22465..ef4554afc7 100644 --- a/packages/react/src/index.ts +++ b/packages/react/src/index.ts @@ -5,6 +5,7 @@ export * from './NodeViewWrapper.js' export * from './ReactMarkViewRenderer.js' export * from './ReactNodeViewRenderer.js' export * from './ReactRenderer.js' +export * from './Tiptap.js' export * from './types.js' export * from './useEditor.js' export * from './useEditorState.js' From cf6296c56f832d9f265e71de1109a94748a2004b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 11:49:11 +0100 Subject: [PATCH 599/629] build(deps): bump slackapi/slack-github-action from 1.27.0 to 2.1.1 (#6678) Bumps [slackapi/slack-github-action](https://github.com/slackapi/slack-github-action) from 1.27.0 to 2.1.1. - [Release notes](https://github.com/slackapi/slack-github-action/releases) - [Commits](https://github.com/slackapi/slack-github-action/compare/v1.27.0...v2.1.1) --- updated-dependencies: - dependency-name: slackapi/slack-github-action dependency-version: 2.1.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/publish.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 4bdf4c8459..01356faeaf 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -80,7 +80,7 @@ jobs: - name: Send release notification if: steps.changesets.outputs.published == 'true' id: slack - uses: slackapi/slack-github-action@v1.27.0 + uses: slackapi/slack-github-action@v2.1.1 with: payload: | { @@ -92,7 +92,7 @@ jobs: - name: Send failure notification if: failure() id: slack_failure - uses: slackapi/slack-github-action@v1.27.0 + uses: slackapi/slack-github-action@v2.1.1 with: payload: | { From 9b388ef4fe9f39a7904e9423ff0ad01e8a103134 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Mon, 26 Jan 2026 14:46:52 +0100 Subject: [PATCH 600/629] fix(markdown): upgrade marked.js and document inline marks behavior (#7458) - Upgrade marked.js from v15.0.12 to v17.0.1 for latest bug fixes - Add comprehensive tests documenting CommonMark behavior for inline marks with punctuation - Clarify that whitespace is required around punctuation-only emphasis per CommonMark spec Fixes #7325 Co-authored-by: Claude --- .../fix-markdown-inline-marks-punctuation.md | 5 + package.json | 2 +- .../inline-marks-punctuation.spec.ts | 329 ++++++++++++++++++ packages/markdown/package.json | 2 +- pnpm-lock.yaml | 12 +- 5 files changed, 342 insertions(+), 8 deletions(-) create mode 100644 .changeset/fix-markdown-inline-marks-punctuation.md create mode 100644 packages/markdown/__tests__/inline-marks-punctuation.spec.ts diff --git a/.changeset/fix-markdown-inline-marks-punctuation.md b/.changeset/fix-markdown-inline-marks-punctuation.md new file mode 100644 index 0000000000..d15ff366ec --- /dev/null +++ b/.changeset/fix-markdown-inline-marks-punctuation.md @@ -0,0 +1,5 @@ +--- +"@tiptap/markdown": patch +--- + +Upgrade marked.js from v15.0.12 to v17.0.1. Note that `**)**` requires whitespace when adjacent to alphanumeric text per CommonMark specification. diff --git a/package.json b/package.json index aeed9bfafa..b53cb1f45a 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "private": true, "packageManager": "pnpm@9.15.4", "engines": { - "node": ">=18" + "node": ">=20" }, "browserslist": [ "defaults", diff --git a/packages/markdown/__tests__/inline-marks-punctuation.spec.ts b/packages/markdown/__tests__/inline-marks-punctuation.spec.ts new file mode 100644 index 0000000000..ed1ad1746f --- /dev/null +++ b/packages/markdown/__tests__/inline-marks-punctuation.spec.ts @@ -0,0 +1,329 @@ +import { Bold } from '@tiptap/extension-bold' +import { Document } from '@tiptap/extension-document' +import { Italic } from '@tiptap/extension-italic' +import { Paragraph } from '@tiptap/extension-paragraph' +import { Text } from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' + +import { MarkdownManager } from '../src/MarkdownManager.js' + +describe('Inline marks containing only punctuation', () => { + const extensions = [Document, Paragraph, Text, Bold, Italic] + const markdownManager = new MarkdownManager({ extensions }) + + describe('Bold marks with punctuation - whitespace-separated (CommonMark compliant)', () => { + it('should parse standalone bold punctuation marks', () => { + const markdown = '**)**' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: ')', + marks: [{ type: 'bold' }], + }, + ], + }, + ], + }) + }) + + it('should parse bold punctuation when preceded by whitespace', () => { + const markdown = 'text **)**' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'text ', + }, + { + type: 'text', + text: ')', + marks: [{ type: 'bold' }], + }, + ], + }, + ], + }) + }) + + it('should parse bold punctuation when followed by whitespace', () => { + const markdown = '**)** text' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: ')', + marks: [{ type: 'bold' }], + }, + { + type: 'text', + text: ' text', + }, + ], + }, + ], + }) + }) + + it('should parse bold punctuation when surrounded by whitespace', () => { + const markdown = 'text **)** more' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'text ', + }, + { + type: 'text', + text: ')', + marks: [{ type: 'bold' }], + }, + { + type: 'text', + text: ' more', + }, + ], + }, + ], + }) + }) + + it('should parse bold punctuation when preceded by other punctuation', () => { + const markdown = '[**)**]' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: '[', + }, + { + type: 'text', + text: ')', + marks: [{ type: 'bold' }], + }, + { + type: 'text', + text: ']', + }, + ], + }, + ], + }) + }) + + it('should parse multiple bold punctuation marks', () => { + const markdown = '**,** **.**' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: ',', + marks: [{ type: 'bold' }], + }, + { + type: 'text', + text: ' ', + }, + { + type: 'text', + text: '.', + marks: [{ type: 'bold' }], + }, + ], + }, + ], + }) + }) + }) + + describe('Bold marks without required whitespace (CommonMark limitation)', () => { + it('should NOT parse bold punctuation when directly preceded by alphanumeric characters', () => { + const markdown = 'text**)**' + const json = markdownManager.parse(markdown) + + // Per CommonMark flanking rules, this is not recognized as bold + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'text**)**', + }, + ], + }, + ], + }) + }) + + it('should NOT parse bold punctuation when directly followed by alphanumeric characters', () => { + const markdown = '**)**text' + const json = markdownManager.parse(markdown) + + // Per CommonMark flanking rules, this is not recognized as bold + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: '**)**text', + }, + ], + }, + ], + }) + }) + + it('should NOT parse bold punctuation when surrounded by alphanumeric characters', () => { + const markdown = 'text**)**text' + const json = markdownManager.parse(markdown) + + // Per CommonMark flanking rules, this is not recognized as bold + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'text**)**text', + }, + ], + }, + ], + }) + }) + }) + + describe('Italic marks with punctuation', () => { + it('should parse standalone italic punctuation', () => { + const markdown = '*)*' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: ')', + marks: [{ type: 'italic' }], + }, + ], + }, + ], + }) + }) + + it('should parse italic punctuation with whitespace', () => { + const markdown = 'text *,* more' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'text ', + }, + { + type: 'text', + text: ',', + marks: [{ type: 'italic' }], + }, + { + type: 'text', + text: ' more', + }, + ], + }, + ], + }) + }) + + it('should NOT parse italic punctuation without whitespace', () => { + const markdown = 'text*,*text' + const json = markdownManager.parse(markdown) + + expect(json).toEqual({ + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'text*,*text', + }, + ], + }, + ], + }) + }) + }) + + describe('Roundtrip serialization', () => { + it('should maintain bold punctuation through parse-serialize cycle', () => { + const markdown = 'text **)** more' + const json = markdownManager.parse(markdown) + const serialized = markdownManager.serialize(json) + + expect(serialized).toBe(markdown) + }) + + it('should maintain italic punctuation through parse-serialize cycle', () => { + const markdown = 'text *,* more' + const json = markdownManager.parse(markdown) + const serialized = markdownManager.serialize(json) + + expect(serialized).toBe(markdown) + }) + }) +}) diff --git a/packages/markdown/package.json b/packages/markdown/package.json index b3506947d7..53c75cd8de 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -34,7 +34,7 @@ "dist" ], "dependencies": { - "marked": "^15.0.12" + "marked": "^17.0.1" }, "devDependencies": { "@tiptap/core": "workspace:^", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bcabaa396b..b7cdc3ea36 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -958,8 +958,8 @@ importers: packages/markdown: dependencies: marked: - specifier: ^15.0.12 - version: 15.0.12 + specifier: ^17.0.1 + version: 17.0.1 devDependencies: '@tiptap/core': specifier: workspace:^ @@ -5495,9 +5495,9 @@ packages: resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true - marked@15.0.12: - resolution: {integrity: sha512-8dD6FusOQSrpv9Z1rdNMdlSgQOIP880DHqnohobOmYLElGEqAL/JvxvuxZO16r4HtjTlfPRDC1hbvxC9dPN2nA==} - engines: {node: '>= 18'} + marked@17.0.1: + resolution: {integrity: sha512-boeBdiS0ghpWcSwoNm/jJBwdpFaMnZWRzjA6SkUMYb40SVaN1x7mmfGKp0jvexGcx+7y2La5zRZsYFZI6Qpypg==} + engines: {node: '>= 20'} hasBin: true math-intrinsics@1.1.0: @@ -12055,7 +12055,7 @@ snapshots: punycode.js: 2.3.1 uc.micro: 2.1.0 - marked@15.0.12: {} + marked@17.0.1: {} math-intrinsics@1.1.0: {} From 1a74abee65b88e8761cc365daa21e95ede01221f Mon Sep 17 00:00:00 2001 From: bdbch Date: Wed, 28 Jan 2026 08:41:30 +0100 Subject: [PATCH 601/629] remove issue workflow --- .github/workflows/issues.yml | 16 ---------------- 1 file changed, 16 deletions(-) delete mode 100644 .github/workflows/issues.yml diff --git a/.github/workflows/issues.yml b/.github/workflows/issues.yml deleted file mode 100644 index 7886bb3115..0000000000 --- a/.github/workflows/issues.yml +++ /dev/null @@ -1,16 +0,0 @@ -name: Add issues to Tiptap project - -on: - issues: - types: - - opened - -jobs: - add-to-project: - name: Add issue to project - runs-on: ubuntu-latest - steps: - - uses: actions/add-to-project@main - with: - project-url: ${{ secrets.ADD_TO_PROJECT_URL }} - github-token: ${{ secrets.ADD_TO_PROJECT_PAT }} From feac5c83ce13b9c2a36dcd5f3b3761b6071d744e Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 28 Jan 2026 12:24:16 +0100 Subject: [PATCH 602/629] fix: use correct storage reference for react and node view renderers (#7467) * fix: use correct storage reference for react and node view renderers * use proxy instead of a spread object to keep Node extension instance in tact --- ...ension-storage-nodeview-calm-river-flow.md | 6 ++++ packages/react/src/ReactNodeViewRenderer.tsx | 32 +++++++++++++++++-- packages/vue-3/src/VueNodeViewRenderer.ts | 32 +++++++++++++++++-- 3 files changed, 64 insertions(+), 6 deletions(-) create mode 100644 .changeset/fix-extension-storage-nodeview-calm-river-flow.md diff --git a/.changeset/fix-extension-storage-nodeview-calm-river-flow.md b/.changeset/fix-extension-storage-nodeview-calm-river-flow.md new file mode 100644 index 0000000000..0feefcb704 --- /dev/null +++ b/.changeset/fix-extension-storage-nodeview-calm-river-flow.md @@ -0,0 +1,6 @@ +--- +'@tiptap/react': patch +'@tiptap/vue-3': patch +--- + +Fixed extension storage not updating in React and Vue node views diff --git a/packages/react/src/ReactNodeViewRenderer.tsx b/packages/react/src/ReactNodeViewRenderer.tsx index ee78d6ca66..d288e6420a 100644 --- a/packages/react/src/ReactNodeViewRenderer.tsx +++ b/packages/react/src/ReactNodeViewRenderer.tsx @@ -100,6 +100,31 @@ export class ReactNodeView< } } + private cachedExtensionWithSyncedStorage: NodeViewRendererProps['extension'] | null = null + + /** + * Returns a proxy of the extension that redirects storage access to the editor's mutable storage. + * This preserves the original prototype chain (instanceof checks, methods like configure/extend work). + * Cached to avoid proxy creation on every update. + */ + get extensionWithSyncedStorage(): NodeViewRendererProps['extension'] { + if (!this.cachedExtensionWithSyncedStorage) { + const editor = this.editor + const extension = this.extension + + this.cachedExtensionWithSyncedStorage = new Proxy(extension, { + get(target, prop, receiver) { + if (prop === 'storage') { + return editor.storage[extension.name as keyof typeof editor.storage] ?? {} + } + return Reflect.get(target, prop, receiver) + }, + }) + } + + return this.cachedExtensionWithSyncedStorage + } + /** * Setup the React component. * Called on initialization. @@ -112,7 +137,7 @@ export class ReactNodeView< innerDecorations: this.innerDecorations, view: this.view, selected: false, - extension: this.extension, + extension: this.extensionWithSyncedStorage, HTMLAttributes: this.HTMLAttributes, getPos: () => this.getPos(), updateAttributes: (attributes = {}) => this.updateAttributes(attributes), @@ -266,7 +291,8 @@ export class ReactNodeView< newDecorations: decorations, oldInnerDecorations, innerDecorations, - updateProps: () => rerenderComponent({ node, decorations, innerDecorations }), + updateProps: () => + rerenderComponent({ node, decorations, innerDecorations, extension: this.extensionWithSyncedStorage }), }) } @@ -278,7 +304,7 @@ export class ReactNodeView< this.decorations = decorations this.innerDecorations = innerDecorations - rerenderComponent({ node, decorations, innerDecorations }) + rerenderComponent({ node, decorations, innerDecorations, extension: this.extensionWithSyncedStorage }) return true } diff --git a/packages/vue-3/src/VueNodeViewRenderer.ts b/packages/vue-3/src/VueNodeViewRenderer.ts index 55cf58d620..e0e664e97e 100644 --- a/packages/vue-3/src/VueNodeViewRenderer.ts +++ b/packages/vue-3/src/VueNodeViewRenderer.ts @@ -75,6 +75,31 @@ class VueNodeView extends NodeView + private cachedExtensionWithSyncedStorage: NodeViewProps['extension'] | null = null + + /** + * Returns a proxy of the extension that redirects storage access to the editor's mutable storage. + * This preserves the original prototype chain (instanceof checks, methods like configure/extend work). + * Cached to avoid proxy creation on every update. + */ + get extensionWithSyncedStorage(): NodeViewProps['extension'] { + if (!this.cachedExtensionWithSyncedStorage) { + const editor = this.editor + const extension = this.extension + + this.cachedExtensionWithSyncedStorage = new Proxy(extension, { + get(target, prop, receiver) { + if (prop === 'storage') { + return editor.storage[extension.name as keyof typeof editor.storage] ?? {} + } + return Reflect.get(target, prop, receiver) + }, + }) + } + + return this.cachedExtensionWithSyncedStorage + } + mount() { const props = { editor: this.editor, @@ -83,7 +108,7 @@ class VueNodeView extends NodeView this.getPos(), updateAttributes: (attributes = {}) => this.updateAttributes(attributes), @@ -209,7 +234,8 @@ class VueNodeView extends NodeView rerenderComponent({ node, decorations, innerDecorations }), + updateProps: () => + rerenderComponent({ node, decorations, innerDecorations, extension: this.extensionWithSyncedStorage }), }) } @@ -225,7 +251,7 @@ class VueNodeView extends NodeView Date: Wed, 28 Jan 2026 13:21:10 +0100 Subject: [PATCH 603/629] add new dataAttribute option for placeholders (#7468) * add new dataAttribute option for placeholders * move finally tothe right position * Move placeholder spec to __tests__ directory * refactor tests * fallback to default placeholder attribute & improved JSdocs * clean up comment * refactor code --- .changeset/placeholder-data-attribute.md | 5 + .../extensions/__tests__/placeholder.spec.ts | 91 +++++++++++++++++++ .../extensions/src/placeholder/placeholder.ts | 41 ++++++++- 3 files changed, 136 insertions(+), 1 deletion(-) create mode 100644 .changeset/placeholder-data-attribute.md create mode 100644 packages/extensions/__tests__/placeholder.spec.ts diff --git a/.changeset/placeholder-data-attribute.md b/.changeset/placeholder-data-attribute.md new file mode 100644 index 0000000000..6bcce0a64a --- /dev/null +++ b/.changeset/placeholder-data-attribute.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extensions": patch +--- + +Added a new `dataAttribute` to the extension option to control which attribute name will be used for the placeholder label. \ No newline at end of file diff --git a/packages/extensions/__tests__/placeholder.spec.ts b/packages/extensions/__tests__/placeholder.spec.ts new file mode 100644 index 0000000000..78d3d8174c --- /dev/null +++ b/packages/extensions/__tests__/placeholder.spec.ts @@ -0,0 +1,91 @@ +import { Editor } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { type PlaceholderOptions, Placeholder, preparePlaceholderAttribute } from '@tiptap/extensions' +import { afterEach, describe, expect, it } from 'vitest' + +describe('extension-placeholder', () => { + let editor: Editor | null = null + + const createEditor = (placeholderOptions: Partial) => { + if (editor) { + editor.destroy() + editor = null + } + + editor = new Editor({ + extensions: [Document, Paragraph, Text, Placeholder.configure(placeholderOptions)], + content: '

    ', + }) + } + + afterEach(() => { + if (editor) { + editor.destroy() + } + }) + + it('uses the default data-placeholder attribute when not passing any dataAttribute option', () => { + createEditor({ + placeholder: 'Type something...', + }) + + const paragraph = editor!.view.dom.querySelector('p') as HTMLElement + expect(paragraph.getAttribute('data-placeholder')).toBe('Type something...') + + editor!.destroy() + }) + + it('falls back to the default when passing in an empty string', () => { + createEditor({ + placeholder: 'Type something...', + dataAttribute: '', + }) + + const paragraph = editor!.view.dom.querySelector('p') as HTMLElement + expect(paragraph.getAttribute('data-placeholder')).toBe('Type something...') + + editor!.destroy() + }) + + it('uses a custom data-placeholder attribute when passing a dataAttribute option', () => { + createEditor({ + placeholder: 'Type something...', + dataAttribute: 'my-placeholder', + }) + + const paragraph = editor!.view.dom.querySelector('p') as HTMLElement + expect(paragraph.getAttribute('data-my-placeholder')).toBe('Type something...') + + editor!.destroy() + }) + + it('auto-replaces spaces with dashes to keep a valid html element', () => { + createEditor({ + placeholder: 'Type something...', + dataAttribute: 'my placeholder', + }) + + const paragraph = editor!.view.dom.querySelector('p') as HTMLElement + expect(paragraph.getAttribute('data-my-placeholder')).toBe('Type something...') + + editor!.destroy() + }) + + it('auto-repairs an invalid attribute string', () => { + const brokenAttr = '5 My br0ken $tring' + createEditor({ + placeholder: 'Type something...', + dataAttribute: brokenAttr, + }) + + const attributeName = preparePlaceholderAttribute(brokenAttr) + expect(attributeName).toBe('my-br0ken-tring') + + const paragraph = editor!.view.dom.querySelector('p') as HTMLElement + expect(paragraph.getAttribute('data-my-br0ken-tring')).toBe('Type something...') + + editor!.destroy() + }) +}) diff --git a/packages/extensions/src/placeholder/placeholder.ts b/packages/extensions/src/placeholder/placeholder.ts index ea1bf87136..7620f043de 100644 --- a/packages/extensions/src/placeholder/placeholder.ts +++ b/packages/extensions/src/placeholder/placeholder.ts @@ -4,6 +4,33 @@ import type { Node as ProsemirrorNode } from '@tiptap/pm/model' import { Plugin, PluginKey } from '@tiptap/pm/state' import { Decoration, DecorationSet } from '@tiptap/pm/view' +/** + * The default data attribute label + */ +const DEFAULT_DATA_ATTRIBUTE = 'placeholder' + +/** + * Prepares the placeholder attribute by ensuring it is properly formatted. + * @param attr - The placeholder attribute string. + * @returns The prepared placeholder attribute string. + */ +export function preparePlaceholderAttribute(attr: string): string { + return ( + attr + // replace whitespace with dashes + .replace(/\s+/g, '-') + // replace non-alphanumeric characters + // or special chars like $, %, &, etc. + // but not dashes + .replace(/[^a-zA-Z0-9-]/g, '') + // and replace any numeric character at the start + .replace(/^[0-9-]+/, '') + // and finally replace any stray, leading dashes + .replace(/^-+/, '') + .toLowerCase() + ) +} + export interface PlaceholderOptions { /** * **The class name for the empty editor** @@ -17,6 +44,13 @@ export interface PlaceholderOptions { */ emptyNodeClass: string + /** + * **The data-attribute used for the placeholder label** + * Will be prepended with `data-` and converted to kebab-case and cleaned of special characters. + * @default 'placeholder' + */ + dataAttribute: string + /** * **The placeholder content** * @@ -67,6 +101,7 @@ export const Placeholder = Extension.create({ return { emptyEditorClass: 'is-editor-empty', emptyNodeClass: 'is-empty', + dataAttribute: DEFAULT_DATA_ATTRIBUTE, placeholder: 'Write something …', showOnlyWhenEditable: true, showOnlyCurrent: true, @@ -75,6 +110,10 @@ export const Placeholder = Extension.create({ }, addProseMirrorPlugins() { + const dataAttribute = this.options.dataAttribute + ? `data-${preparePlaceholderAttribute(this.options.dataAttribute)}` + : `data-${DEFAULT_DATA_ATTRIBUTE}` + return [ new Plugin({ key: new PluginKey('placeholder'), @@ -103,7 +142,7 @@ export const Placeholder = Extension.create({ const decoration = Decoration.node(pos, pos + node.nodeSize, { class: classes.join(' '), - 'data-placeholder': + [dataAttribute]: typeof this.options.placeholder === 'function' ? this.options.placeholder({ editor: this.editor, From a0ab1d6c502b291fbfdf70e04193edf726e01f65 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 28 Jan 2026 13:36:44 +0100 Subject: [PATCH 604/629] chore(release): publish a new release version (#7460) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/fix-bubble-menu-props-update.md | 7 -- ...ension-storage-nodeview-calm-river-flow.md | 6 -- .../fix-markdown-inline-marks-punctuation.md | 5 -- .changeset/placeholder-data-attribute.md | 5 -- .changeset/react-tiptap-new-setup.md | 36 --------- CHANGELOG.md | 74 +++++++++++++++++++ .../extension-character-count/CHANGELOG.md | 7 ++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 7 ++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 7 ++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 7 ++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 7 ++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 7 ++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++ packages/core/package.json | 2 +- packages/extension-audio/CHANGELOG.md | 6 ++ packages/extension-audio/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 8 ++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 ++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 ++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 ++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 11 +++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 ++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 9 +++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 +++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 ++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 ++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 8 ++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 ++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 7 ++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 ++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 ++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 ++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 ++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 ++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 ++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 ++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 ++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++ packages/extension-text/package.json | 2 +- packages/extension-twitch/CHANGELOG.md | 6 ++ packages/extension-twitch/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 ++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 8 ++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 ++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 8 ++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 + packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 48 ++++++++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 30 ++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 ++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 ++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 ++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 8 ++ packages/vue-3/package.json | 2 +- 150 files changed, 698 insertions(+), 131 deletions(-) delete mode 100644 .changeset/fix-bubble-menu-props-update.md delete mode 100644 .changeset/fix-extension-storage-nodeview-calm-river-flow.md delete mode 100644 .changeset/fix-markdown-inline-marks-punctuation.md delete mode 100644 .changeset/placeholder-data-attribute.md delete mode 100644 .changeset/react-tiptap-new-setup.md diff --git a/.changeset/fix-bubble-menu-props-update.md b/.changeset/fix-bubble-menu-props-update.md deleted file mode 100644 index 61a7f1bd7b..0000000000 --- a/.changeset/fix-bubble-menu-props-update.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -"@tiptap/extension-bubble-menu": patch -"@tiptap/extension-floating-menu": patch -"@tiptap/react": patch ---- - -Fix BubbleMenu and FloatingMenu props not updating after initialization diff --git a/.changeset/fix-extension-storage-nodeview-calm-river-flow.md b/.changeset/fix-extension-storage-nodeview-calm-river-flow.md deleted file mode 100644 index 0feefcb704..0000000000 --- a/.changeset/fix-extension-storage-nodeview-calm-river-flow.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -'@tiptap/react': patch -'@tiptap/vue-3': patch ---- - -Fixed extension storage not updating in React and Vue node views diff --git a/.changeset/fix-markdown-inline-marks-punctuation.md b/.changeset/fix-markdown-inline-marks-punctuation.md deleted file mode 100644 index d15ff366ec..0000000000 --- a/.changeset/fix-markdown-inline-marks-punctuation.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/markdown": patch ---- - -Upgrade marked.js from v15.0.12 to v17.0.1. Note that `**)**` requires whitespace when adjacent to alphanumeric text per CommonMark specification. diff --git a/.changeset/placeholder-data-attribute.md b/.changeset/placeholder-data-attribute.md deleted file mode 100644 index 6bcce0a64a..0000000000 --- a/.changeset/placeholder-data-attribute.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extensions": patch ---- - -Added a new `dataAttribute` to the extension option to control which attribute name will be used for the placeholder label. \ No newline at end of file diff --git a/.changeset/react-tiptap-new-setup.md b/.changeset/react-tiptap-new-setup.md deleted file mode 100644 index e165c9b012..0000000000 --- a/.changeset/react-tiptap-new-setup.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -"@tiptap/react": minor ---- - -Introduce a new, optional React integration that provides a declarative `` component for setting up editors in React apps. - -Summary -- Add a new, ergonomic way to initialize and use Tiptap editors in React via `` components. This is an additive change and does not remove or change existing APIs. - -Why this change -- Improves ergonomics for React users by offering a component-first API that pairs well with React patterns (hooks, JSX composition and props-driven configuration). - -Migration and usage -- The old programmatic setup remains supported for this major version — nothing breaks. We encourage consumers to try the new `` component and migrate when convenient. - -Example - -```tsx -import { Tiptap, useEditor } from '@tiptap/react' - -function MyEditor() { - const editor = useEditor({ extensions: [StarterKit], content: '

    Hello from Tiptap

    ' }) - - return ( - - - My Bubble Menu - My Floating Menu - {/* MenuBar can use the new `useTiptap` hook to read the editor instance from context */} - - ) -} -``` - -Deprecation plan -- The old imperative setup will remain fully backward-compatible for this major release. We plan to deprecate (and remove) the legacy setup in the next major version — a deprecation notice and migration guide will be published ahead of that change. diff --git a/CHANGELOG.md b/CHANGELOG.md index 77cac5fe1b..639b256b3c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,79 @@ # Releases +## v3.18.0 + +### @tiptap/extension-bubble-menu + +#### Patch Changes + +- Fix BubbleMenu and FloatingMenu props not updating after initialization + +### @tiptap/extension-floating-menu + +#### Patch Changes + +- Fix BubbleMenu and FloatingMenu props not updating after initialization + +### @tiptap/react + +#### Minor Changes + +- Introduce a new, optional React integration that provides a declarative `` component for setting up editors in React apps. + + Summary + - Add a new, ergonomic way to initialize and use Tiptap editors in React via `` components. This is an additive change and does not remove or change existing APIs. + + Why this change + - Improves ergonomics for React users by offering a component-first API that pairs well with React patterns (hooks, JSX composition and props-driven configuration). + + Migration and usage + - The old programmatic setup remains supported for this major version — nothing breaks. We encourage consumers to try the new `` component and migrate when convenient. + + Example + + ```tsx + import { Tiptap, useEditor } from '@tiptap/react' + + function MyEditor() { + const editor = useEditor({ extensions: [StarterKit], content: '

    Hello from Tiptap

    ' }) + + return ( + + + My Bubble Menu + My Floating Menu + {/* MenuBar can use the new `useTiptap` hook to read the editor instance from context */} + + ) + } + ``` + + Deprecation plan + - The old imperative setup will remain fully backward-compatible for this major release. We plan to deprecate (and remove) the legacy setup in the next major version — a deprecation notice and migration guide will be published ahead of that change. + +#### Patch Changes + +- Fix BubbleMenu and FloatingMenu props not updating after initialization +- Fixed extension storage not updating in React and Vue node views + +### @tiptap/vue-3 + +#### Patch Changes + +- Fixed extension storage not updating in React and Vue node views + +### @tiptap/markdown + +#### Patch Changes + +- Upgrade marked.js from v15.0.12 to v17.0.1. Note that `**)**` requires whitespace when adjacent to alphanumeric text per CommonMark specification. + +### @tiptap/extensions + +#### Patch Changes + +- Added a new `dataAttribute` to the extension option to control which attribute name will be used for the placeholder label. + ## v3.17.1 ### @tiptap/extension-paragraph diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index dfba355b1e..276fd796a1 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- Updated dependencies [a65e55d] + - @tiptap/extensions@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 75c9b89897..05fbc3e860 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 283d402ba5..95c20c68b4 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- Updated dependencies [a65e55d] + - @tiptap/extensions@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index 30912f0a58..e60fe2ecbf 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index b1b5c6e301..8f7a4ab4d4 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- Updated dependencies [a65e55d] + - @tiptap/extensions@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index c28b0ab16f..3e3ce8f872 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index f9eb4ff9d3..e7b4b05873 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- Updated dependencies [a65e55d] + - @tiptap/extensions@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 8a16cb18d7..517a1d6852 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 8af5b602d0..42e4b888dc 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- Updated dependencies [a65e55d] + - @tiptap/extensions@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index 8270068bba..b07600206f 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index d02e8d21f5..4d62ac1690 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-list@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index 05218687ed..d778d545ba 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 8eed0cb07b..211caeeaf8 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-list@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 066328a140..23fa2c2c0c 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index babc5c9900..47cb1fc266 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- Updated dependencies [a65e55d] + - @tiptap/extensions@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index 2c4dd052ed..d955cb16a7 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index c15d5f6fd8..bf1420a77e 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-table@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index 02b75235a0..a55a3ee824 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 3a045beb05..1e096dd18f 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-table@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index 3ffa8a5f35..f78740b03d 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index 2941e86e29..f2d2cbd087 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-table@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index f5c4f64bec..8efdc393ff 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 42e44094e7..56094d0ee8 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-list@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index bcea11a002..31e5060195 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index a501fd51d1..ba7c07c49a 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-list@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index d43579eafa..563d80e282 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 2aa829df2b..0545b441b6 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index e9b68bfc4d..3e2f7ef637 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-audio/CHANGELOG.md b/packages/extension-audio/CHANGELOG.md index b21d0faeed..d45b035011 100644 --- a/packages/extension-audio/CHANGELOG.md +++ b/packages/extension-audio/CHANGELOG.md @@ -1,5 +1,11 @@ # @tiptap/extension-audio +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-audio/package.json b/packages/extension-audio/package.json index 718fdc7d51..0c54ecb7f1 100644 --- a/packages/extension-audio/package.json +++ b/packages/extension-audio/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-audio", "description": "audio extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 7f30abbd4b..896a3c8e1a 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index eddeac5c1b..5f37f2216e 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 3778cf2d3b..7fe38351b4 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index d87608c0c6..af21bb13c2 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index 4458d75956..c42516e4a4 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- 3e446fb: Fix BubbleMenu and FloatingMenu props not updating after initialization + - @tiptap/core@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index 4eb54f3a2a..ff8f6e4cba 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 2a7a54cbd5..747d5a5e5c 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-list@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index 430bfd0026..f1e1d227f8 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index dcea5f02df..d7d409654c 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/extension-code-block@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index d4e0408537..7d0dee2ee8 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index f11e3caa61..43d78012cf 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index e2cba04046..52eb517601 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index 411a822b59..b0c488a0e2 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 87f1b98e7a..8945e1830d 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 1d7b7c8ee9..43ad86953b 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 4fcb887e7a..49cf6a955b 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 46b4f98a92..8dff51b13d 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index 9cd417a48c..fff7cda8ca 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 7b5a1353d7..39a8f8a177 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index cdb86a04fe..1f5eddda48 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index 111ab8f943..f1fd52395c 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/extension-text-style@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 1e6aee3206..6362fcff04 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index d3da603f1b..0842ccaf4f 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 610891b25e..289fe7962d 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index 44eab2d89e..ddbf16d071 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,16 @@ # @tiptap/extension-drag-handle-react +## 3.18.0 + +### Patch Changes + +- Updated dependencies [3e446fb] +- Updated dependencies [feac5c8] +- Updated dependencies [328aedb] + - @tiptap/react@3.18.0 + - @tiptap/extension-drag-handle@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index e42ad547f8..405a8a1e25 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 5564c70252..405909f450 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.18.0 + +### Patch Changes + +- @tiptap/vue-2@3.18.0 +- @tiptap/extension-drag-handle@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index d56064f466..05b4fc0844 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index 1d11b7e2de..d6e468e856 100644 --- a/packages/extension-drag-handle-vue-3/CHANGELOG.md +++ b/packages/extension-drag-handle-vue-3/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle-vue-3 +## 3.18.0 + +### Patch Changes + +- Updated dependencies [feac5c8] + - @tiptap/vue-3@3.18.0 + - @tiptap/extension-drag-handle@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 4ca5719cf2..85f31cad0c 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index c23006d95a..e3a77b8524 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/extension-collaboration@3.18.0 +- @tiptap/extension-node-range@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index fafa5b7249..83e5f4407d 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 4f17383ae6..65536d3721 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 +- @tiptap/suggestion@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index a4863a0c83..74afccf6cc 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index 56b810ec4e..d52614c768 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/extension-text-style@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 8187ca1e81..85781fedf9 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index b0b7686010..ef7cfe6ff1 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- 3e446fb: Fix BubbleMenu and FloatingMenu props not updating after initialization + - @tiptap/core@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 84d5505b6a..6779d9d1f7 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index c98553565d..05b7a5c86a 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index fdb69dee4e..398462b01a 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 1db7d83a9c..7ae1359e8a 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 542d557c4d..09116ef0ad 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 146def9694..458c07487f 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index d81b8cf490..8816a36fc6 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index a2b0f103a2..fcdd5466c8 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index f2cb2e2803..917a5ca37c 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index a1b16a4a62..b209752bf9 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index ba8851e493..709248b2a7 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 3d343cc4c3..0642dd2ff6 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 132dc4dc6a..76a3733b1c 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 9aeb376106..057348360e 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/extension-text-style@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index e88d6f4407..f754f241b6 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index ede17d45a8..9db5ff7889 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 743ce105a0..8ade826958 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index 814269ddd0..bdac61cc60 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index e6b6f0202c..f1e6f26873 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index e65b9a9960..b1865a65bd 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index b69747db01..9bf79ffae1 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index deead47ac4..15edf210f8 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index 5848b55f25..c42e009c83 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index d887da2082..830ab0dd3b 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 +- @tiptap/suggestion@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index dbce1b3567..0119cb6ee3 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index bec844accd..708e5b31b0 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 9c0399da25..278815943c 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index 4f415d8050..ccf3d5bd08 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/extension-list@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index 193563e409..f738bf31de 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index 0a276bf5b4..bcd54ef896 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index 7a9edf78f2..b221ce7297 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 4c84b1bc80..8c7cadd3f4 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index 84c178f495..a3d521c8e4 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 34c530c83e..4beeb6e347 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index fb84a59690..a6a5418a3c 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 911a474f1b..42f1efbc34 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index 5977d3481c..ba83d500c2 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index bba991bf2b..957cd88e6d 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 84fb2d2f87..2c2e5dead4 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index 3d76afb531..c29cc25226 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 738027bfb3..0a24b2b4e9 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index 3779401606..c2912eb998 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index 7a72a2b4a5..d8c9f94f67 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index bf295e40cf..d5b3d1fd00 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index 506847142a..b4888dc2e7 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 4e1c778773..191b1b225b 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 47f107fe12..1db8ec7d6e 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md index 27c3596a50..9a4013a7dc 100644 --- a/packages/extension-twitch/CHANGELOG.md +++ b/packages/extension-twitch/CHANGELOG.md @@ -1,5 +1,11 @@ # @tiptap/extension-twitch +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json index e18abdfffa..ac359ac726 100644 --- a/packages/extension-twitch/package.json +++ b/packages/extension-twitch/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-twitch", "description": "a twitch embed extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 42a3843600..1413b597cd 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index d73886e855..53da86eca2 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index 2ab5e73322..fe925730b6 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 2161d87e95..36e66ee13e 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index 91de9f9f93..a9c8f034d4 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index 32098b2a66..ce6b413626 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index fbc855f721..a5c452e60a 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index 3a40d83ed1..f3e1fb2984 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index f64950561e..b65b6d40ab 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- a65e55d: Added a new `dataAttribute` to the extension option to control which attribute name will be used for the placeholder label. + - @tiptap/core@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index dc0aa1affc..fb163562e3 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index c597bd7beb..3ea080f5a4 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 5cd67422cb..88ba7ca128 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 391ca4b2e2..718e10d635 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/markdown +## 3.18.0 + +### Patch Changes + +- 9b388ef: Upgrade marked.js from v15.0.12 to v17.0.1. Note that `**)**` requires whitespace when adjacent to alphanumeric text per CommonMark specification. + - @tiptap/core@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 53c75cd8de..1c383463c3 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index 0042527e67..a787fbd609 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.18.0 + ## 3.17.1 ## 3.17.0 diff --git a/packages/pm/package.json b/packages/pm/package.json index 542ded0735..cb118fa086 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index c941b088fc..32b15e0e28 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,53 @@ # Change Log +## 3.18.0 + +### Minor Changes + +- 328aedb: Introduce a new, optional React integration that provides a declarative `` component for setting up editors in React apps. + + Summary + + - Add a new, ergonomic way to initialize and use Tiptap editors in React via `` components. This is an additive change and does not remove or change existing APIs. + + Why this change + + - Improves ergonomics for React users by offering a component-first API that pairs well with React patterns (hooks, JSX composition and props-driven configuration). + + Migration and usage + + - The old programmatic setup remains supported for this major version — nothing breaks. We encourage consumers to try the new `` component and migrate when convenient. + + Example + + ```tsx + import { Tiptap, useEditor } from '@tiptap/react' + + function MyEditor() { + const editor = useEditor({ extensions: [StarterKit], content: '

    Hello from Tiptap

    ' }) + + return ( + + + My Bubble Menu + My Floating Menu + {/* MenuBar can use the new `useTiptap` hook to read the editor instance from context */} + + ) + } + ``` + + Deprecation plan + + - The old imperative setup will remain fully backward-compatible for this major release. We plan to deprecate (and remove) the legacy setup in the next major version — a deprecation notice and migration guide will be published ahead of that change. + +### Patch Changes + +- 3e446fb: Fix BubbleMenu and FloatingMenu props not updating after initialization +- feac5c8: Fixed extension storage not updating in React and Vue node views + - @tiptap/core@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/react/package.json b/packages/react/package.json index 0328d34435..fad342428a 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index cea1906631..1e63661647 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,35 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- Updated dependencies [a65e55d] + - @tiptap/extensions@3.18.0 + - @tiptap/extension-dropcursor@3.18.0 + - @tiptap/extension-gapcursor@3.18.0 + - @tiptap/extension-list-item@3.18.0 + - @tiptap/extension-list-keymap@3.18.0 + - @tiptap/core@3.18.0 + - @tiptap/extension-blockquote@3.18.0 + - @tiptap/extension-bold@3.18.0 + - @tiptap/extension-bullet-list@3.18.0 + - @tiptap/extension-code@3.18.0 + - @tiptap/extension-code-block@3.18.0 + - @tiptap/extension-document@3.18.0 + - @tiptap/extension-hard-break@3.18.0 + - @tiptap/extension-heading@3.18.0 + - @tiptap/extension-horizontal-rule@3.18.0 + - @tiptap/extension-italic@3.18.0 + - @tiptap/extension-link@3.18.0 + - @tiptap/extension-list@3.18.0 + - @tiptap/extension-ordered-list@3.18.0 + - @tiptap/extension-paragraph@3.18.0 + - @tiptap/extension-strike@3.18.0 + - @tiptap/extension-text@3.18.0 + - @tiptap/extension-underline@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 740dc83f07..6717d12848 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index d710b99279..367f873f2d 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index a7ec6af491..73d6f0dbc2 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index a087d029b6..9e98a7a2b5 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 9ad4381a2d..197a94b6fc 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index 1ab113f468..acde7a7a10 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- @tiptap/core@3.18.0 +- @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 15b5491941..8e2b60c255 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index f8ffd27310..4fdd23c429 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.18.0 + +### Patch Changes + +- feac5c8: Fixed extension storage not updating in React and Vue node views + - @tiptap/core@3.18.0 + - @tiptap/pm@3.18.0 + ## 3.17.1 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index 34257ddeac..b07934be04 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.17.1", + "version": "3.18.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 2d6de06c34c239e78fedd6bd2a0bcea42d0fdbfa Mon Sep 17 00:00:00 2001 From: bdbch Date: Wed, 28 Jan 2026 14:45:47 +0100 Subject: [PATCH 605/629] update slack webhook action --- .github/workflows/publish.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 01356faeaf..4badc05f47 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -82,6 +82,8 @@ jobs: id: slack uses: slackapi/slack-github-action@v2.1.1 with: + webhook: ${{ secrets.SLACK_WEBHOOK_URL }} + webhook-type: incoming-webhook payload: | { "message": "[Tiptap Editor Release]: New Tiptap Editor version has been released to NPM." @@ -94,6 +96,8 @@ jobs: id: slack_failure uses: slackapi/slack-github-action@v2.1.1 with: + webhook: ${{ secrets.SLACK_WEBHOOK_URL }} + webhook-type: incoming-webhook payload: | { "message": "[Tiptap Editor Release]: There was an issue publishing a new version. You can find the logs here: https://github.com/ueberdosis/tiptap/actions/runs/${{ github.run_id }}" From 9011aff21a9261594b6799ba3969f0123312753a Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 30 Jan 2026 21:19:24 +0100 Subject: [PATCH 606/629] Add title attribute support to Link extension (#7479) * fix(extension-link): add title attribute support for markdown rendering - Add title attribute to addAttributes() in Link extension - Update renderMarkdown() to conditionally include title in markdown output - Add title to setLink and toggleLink command type declarations - Add tests for link markdown serialization with and without title Closes #7478 https://claude.ai/code/session_01Ru7bELRD5wx4GJkB3NLfk9 * chore: separate changesets for link title attribute and markdown support https://claude.ai/code/session_01Ru7bELRD5wx4GJkB3NLfk9 --------- Co-authored-by: Claude --- .changeset/link-title-attribute.md | 5 ++++ .changeset/link-title-markdown.md | 5 ++++ packages/extension-link/src/link.ts | 10 +++++-- .../__tests__/conversion-files/index.ts | 2 ++ .../conversion-files/link-with-title.ts | 29 +++++++++++++++++++ .../conversion-files/link-without-title.ts | 29 +++++++++++++++++++ 6 files changed, 78 insertions(+), 2 deletions(-) create mode 100644 .changeset/link-title-attribute.md create mode 100644 .changeset/link-title-markdown.md create mode 100644 packages/markdown/__tests__/conversion-files/link-with-title.ts create mode 100644 packages/markdown/__tests__/conversion-files/link-without-title.ts diff --git a/.changeset/link-title-attribute.md b/.changeset/link-title-attribute.md new file mode 100644 index 0000000000..a7caf65e0b --- /dev/null +++ b/.changeset/link-title-attribute.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-link": patch +--- + +Add `title` attribute to Link extension. The title can now be set via `setLink` and `toggleLink` commands and is rendered as an HTML title attribute. diff --git a/.changeset/link-title-markdown.md b/.changeset/link-title-markdown.md new file mode 100644 index 0000000000..72c24adb52 --- /dev/null +++ b/.changeset/link-title-markdown.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-link": patch +--- + +Add title attribute support for markdown rendering. Links with titles are now serialized to markdown format `[text](url "title")`. diff --git a/packages/extension-link/src/link.ts b/packages/extension-link/src/link.ts index 9bbd37cbe5..839a57524b 100644 --- a/packages/extension-link/src/link.ts +++ b/packages/extension-link/src/link.ts @@ -141,6 +141,7 @@ declare module '@tiptap/core' { target?: string | null rel?: string | null class?: string | null + title?: string | null }) => ReturnType /** * Toggle a link mark @@ -152,6 +153,7 @@ declare module '@tiptap/core' { target?: string | null rel?: string | null class?: string | null + title?: string | null }) => ReturnType /** * Unset a link mark @@ -282,6 +284,9 @@ export const Link = Mark.create({ class: { default: this.options.HTMLAttributes.class, }, + title: { + default: null, + }, } }, @@ -335,10 +340,11 @@ export const Link = Mark.create({ }, renderMarkdown: (node, h) => { - const href = node.attrs?.href || '' + const href = node.attrs?.href ?? '' + const title = node.attrs?.title ?? '' const text = h.renderChildren(node) - return `[${text}](${href})` + return title ? `[${text}](${href} "${title}")` : `[${text}](${href})` }, addCommands() { diff --git a/packages/markdown/__tests__/conversion-files/index.ts b/packages/markdown/__tests__/conversion-files/index.ts index 9973cd8024..33ca0d5ab9 100644 --- a/packages/markdown/__tests__/conversion-files/index.ts +++ b/packages/markdown/__tests__/conversion-files/index.ts @@ -3,6 +3,8 @@ export * as customAtom from './custom-atom.js' export * as customBlock from './custom-block.js' export * as customInline from './custom-inline.js' export * as hardBreakMarks from './hard-break-marks.js' +export * as linkWithTitle from './link-with-title.js' +export * as linkWithoutTitle from './link-without-title.js' export * as mixedListTypes from './mixed-list-types.js' export * as nestedNodes from './nested-nodes.js' export * as orderedList from './ordered-list.js' diff --git a/packages/markdown/__tests__/conversion-files/link-with-title.ts b/packages/markdown/__tests__/conversion-files/link-with-title.ts new file mode 100644 index 0000000000..1d7b05351a --- /dev/null +++ b/packages/markdown/__tests__/conversion-files/link-with-title.ts @@ -0,0 +1,29 @@ +export const name = 'Link with Title' + +export const expectedInput = ` +[click here](https://example.com "Example Site") +`.trim() + +export const expectedOutput = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'click here', + marks: [ + { + type: 'link', + attrs: { + href: 'https://example.com', + title: 'Example Site', + }, + }, + ], + }, + ], + }, + ], +} diff --git a/packages/markdown/__tests__/conversion-files/link-without-title.ts b/packages/markdown/__tests__/conversion-files/link-without-title.ts new file mode 100644 index 0000000000..40e6e713c2 --- /dev/null +++ b/packages/markdown/__tests__/conversion-files/link-without-title.ts @@ -0,0 +1,29 @@ +export const name = 'Link without Title' + +export const expectedInput = ` +[click here](https://example.com) +`.trim() + +export const expectedOutput = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [ + { + type: 'text', + text: 'click here', + marks: [ + { + type: 'link', + attrs: { + href: 'https://example.com', + title: null, + }, + }, + ], + }, + ], + }, + ], +} From 0f28d9c2714704eefd8a823a0049df57e5733ee4 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 3 Feb 2026 16:55:39 +0100 Subject: [PATCH 607/629] fix(react): simplify Tiptap component API and separate menu imports (#7494) * fix(react): simplify Tiptap component API and separate menu imports - Remove isReady from TiptapContextType, editor is now always available - Move BubbleMenu and FloatingMenu to @tiptap/react/menus entrypoint - Add backwards-compatible instance prop (deprecated in favor of editor) - Add helpful error when useTiptap is used outside provider * Validate editor prop and update demo imports Throw an error in TiptapWrapper when neither editor nor instance is provided. Remove the forced cast and expand the deprecation comment to note upcoming removal. Update demo example imports to use .js/.jsx file extensions. * Remove editor prop from BubbleMenu example --- .../separate-menu-imports-warm-summer-rain.md | 5 + .../tiptap-nonnull-editor-calm-blue-sky.md | 5 + demos/src/Examples/Default/React/MenuBar.tsx | 8 +- demos/src/Examples/Default/React/index.tsx | 4 +- packages/react/src/Tiptap.tsx | 247 ++++-------------- 5 files changed, 72 insertions(+), 197 deletions(-) create mode 100644 .changeset/separate-menu-imports-warm-summer-rain.md create mode 100644 .changeset/tiptap-nonnull-editor-calm-blue-sky.md diff --git a/.changeset/separate-menu-imports-warm-summer-rain.md b/.changeset/separate-menu-imports-warm-summer-rain.md new file mode 100644 index 0000000000..30bea4d8e2 --- /dev/null +++ b/.changeset/separate-menu-imports-warm-summer-rain.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': minor +--- + +Moved BubbleMenu and FloatingMenu to separate `@tiptap/react/menus` entrypoint to keep floating-ui optional diff --git a/.changeset/tiptap-nonnull-editor-calm-blue-sky.md b/.changeset/tiptap-nonnull-editor-calm-blue-sky.md new file mode 100644 index 0000000000..73ff060e13 --- /dev/null +++ b/.changeset/tiptap-nonnull-editor-calm-blue-sky.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': minor +--- + +Simplified Tiptap component API with guaranteed non-null editor instance from useTiptap hook diff --git a/demos/src/Examples/Default/React/MenuBar.tsx b/demos/src/Examples/Default/React/MenuBar.tsx index e554bef067..7cfc3c8eef 100644 --- a/demos/src/Examples/Default/React/MenuBar.tsx +++ b/demos/src/Examples/Default/React/MenuBar.tsx @@ -1,20 +1,16 @@ import { useTiptap, useTiptapState } from '@tiptap/react' import React from 'react' -import { menuBarStateSelector } from './menuBarState.ts' +import { menuBarStateSelector } from './menuBarState.js' /** * Menu bar component that uses useTiptap and useTiptapState hooks * to access the editor from context. */ export function MenuBar() { - const { editor, isReady } = useTiptap() + const { editor } = useTiptap() const editorState = useTiptapState(menuBarStateSelector) - if (!isReady || !editor) { - return null - } - return (
    diff --git a/demos/src/Examples/Default/React/index.tsx b/demos/src/Examples/Default/React/index.tsx index ca2bbc4511..563956fc22 100644 --- a/demos/src/Examples/Default/React/index.tsx +++ b/demos/src/Examples/Default/React/index.tsx @@ -5,7 +5,7 @@ import { Tiptap, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React from 'react' -import { MenuBar } from './MenuBar.tsx' +import { MenuBar } from './MenuBar.jsx' const extensions = [TextStyleKit, StarterKit] @@ -45,7 +45,7 @@ export default () => { }) return ( - + diff --git a/packages/react/src/Tiptap.tsx b/packages/react/src/Tiptap.tsx index 0179e7a905..20f5512332 100644 --- a/packages/react/src/Tiptap.tsx +++ b/packages/react/src/Tiptap.tsx @@ -1,41 +1,40 @@ import type { ReactNode } from 'react' -import { createContext, useContext, useEffect, useMemo, useState } from 'react' +import { createContext, useContext, useMemo } from 'react' import { EditorContext } from './Context.js' import type { Editor, EditorContentProps, EditorStateSnapshot } from './index.js' import { EditorContent, useEditorState } from './index.js' -import { type BubbleMenuProps, BubbleMenu } from './menus/BubbleMenu.js' -import { type FloatingMenuProps, FloatingMenu } from './menus/FloatingMenu.js' /** * The shape of the React context used by the `` components. * - * This object exposes the editor instance and a simple readiness flag. + * The editor instance is always available when using the default `useEditor` + * configuration. For SSR scenarios where `immediatelyRender: false` is used, + * consider using the legacy `EditorProvider` pattern instead. */ export type TiptapContextType = { - /** The Tiptap editor instance. May be null during SSR or before initialization. */ - editor: Editor | null - - /** True when the editor has finished initializing and is ready for user interaction. */ - isReady: boolean + /** The Tiptap editor instance. */ + editor: Editor } /** - * React context that stores the current editor instance and readiness flag. + * React context that stores the current editor instance. * * Use `useTiptap()` to read from this context in child components. */ export const TiptapContext = createContext({ - editor: null, - isReady: false, + get editor(): Editor { + throw new Error('useTiptap must be used within a provider') + }, }) TiptapContext.displayName = 'TiptapContext' /** - * Hook to read the Tiptap context (`editor` + `isReady`). + * Hook to read the Tiptap context and access the editor instance. * * This is a small convenience wrapper around `useContext(TiptapContext)`. + * The editor is always available when used within a `` provider. * * @returns The current `TiptapContextType` value from the provider. * @@ -43,9 +42,14 @@ TiptapContext.displayName = 'TiptapContext' * ```tsx * import { useTiptap } from '@tiptap/react' * - * function Status() { - * const { isReady } = useTiptap() - * return
    {isReady ? 'Editor ready' : 'Loading editor...'}
    + * function Toolbar() { + * const { editor } = useTiptap() + * + * return ( + * + * ) * } * ``` */ @@ -57,10 +61,6 @@ export const useTiptap = () => useContext(TiptapContext) * This is a thin wrapper around `useEditorState` that reads the `editor` * instance from `useTiptap()` so callers don't have to pass it manually. * - * Important: This hook should only be used when the editor is available. - * Use the `isReady` flag from `useTiptap()` to guard against null editor, - * or ensure your component only renders after the editor is initialized. - * * @typeParam TSelectorResult - The type returned by the selector. * @param selector - Function that receives the editor state snapshot and * returns the piece of state you want to subscribe to. @@ -71,16 +71,11 @@ export const useTiptap = () => useContext(TiptapContext) * @example * ```tsx * function WordCount() { - * const { isReady } = useTiptap() - * - * // Only use useTiptapState when the editor is ready * const wordCount = useTiptapState(state => { * const text = state.editor.state.doc.textContent * return text.split(/\s+/).filter(Boolean).length * }) * - * if (!isReady) return null - * * return {wordCount} words * } * ``` @@ -90,8 +85,9 @@ export function useTiptapState( equalityFn?: (a: TSelectorResult, b: TSelectorResult | null) => boolean, ) { const { editor } = useTiptap() + return useEditorState({ - editor: editor as Editor, + editor, selector, equalityFn, }) @@ -103,18 +99,21 @@ export function useTiptapState( export type TiptapWrapperProps = { /** * The editor instance to provide to child components. - * Can be null during SSR or before initialization. + * Use `useEditor()` to create this instance. + */ + editor?: Editor + + /** + * @deprecated Use `editor` instead. Will be removed in the next major version. */ - instance: Editor | null + instance?: Editor + children: ReactNode } /** * Top-level provider component that makes the editor instance available via - * React context and tracks when the editor becomes ready. - * - * The component listens to the editor's `create` event and flips the - * `isReady` flag once initialization completes. + * React context to all child components. * * This component also provides backwards compatibility with the legacy * `EditorContext`, so components using `useCurrentEditor()` will work @@ -131,7 +130,7 @@ export type TiptapWrapperProps = { * const editor = useEditor({ extensions: [...] }) * * return ( - * + * * * * @@ -139,38 +138,18 @@ export type TiptapWrapperProps = { * } * ``` */ -export function TiptapWrapper({ instance, children }: TiptapWrapperProps) { - const [isReady, setIsReady] = useState(instance?.isInitialized ?? false) - - useEffect(() => { - if (!instance) { - setIsReady(false) - return - } - - // If the editor is already initialized, set isReady to true - if (instance.isInitialized) { - setIsReady(true) - return - } - - const handleCreate = () => { - setIsReady(true) - } - - instance.on('create', handleCreate) +export function TiptapWrapper({ editor, instance, children }: TiptapWrapperProps) { + const resolvedEditor = editor ?? instance - return () => { - instance.off('create', handleCreate) - } - }, [instance]) + if (!resolvedEditor) { + throw new Error('Tiptap: An editor instance is required. Pass a non-null `editor` prop.') + } - // Memoize context values to prevent unnecessary re-renders - const tiptapContextValue = useMemo(() => ({ editor: instance, isReady }), [instance, isReady]) + const tiptapContextValue = useMemo(() => ({ editor: resolvedEditor }), [resolvedEditor]) // Provide backwards compatibility with the legacy EditorContext // so components using useCurrentEditor() work inside - const legacyContextValue = useMemo(() => ({ editor: instance }), [instance]) + const legacyContextValue = useMemo(() => ({ editor: resolvedEditor }), [resolvedEditor]) return ( @@ -202,128 +181,36 @@ export function TiptapContent({ ...rest }: Omit - * - *
    Loading editor...
    - *
    - * - *
    - * ``` - */ -export function TiptapLoading({ children }: TiptapLoadingProps) { - const { isReady } = useTiptap() - - if (isReady) { - return null - } - - return children -} - -TiptapLoading.displayName = 'Tiptap.Loading' - -/** - * A wrapper around the library `BubbleMenu` that injects the editor from - * context so callers don't need to pass the `editor` prop. - * - * Returns `null` when the editor is not available (for example during SSR). - * - * @param props - Props for the underlying `BubbleMenu` (except `editor`). - * @returns A `BubbleMenu` bound to the context editor, or `null`. - * - * @example - * ```tsx - * - * - * - * ``` - */ -export function TiptapBubbleMenu({ children, ...rest }: { children: ReactNode } & Omit) { - const { editor } = useTiptap() - - if (!editor) { - return null - } - - return ( - - {children} - - ) -} - -TiptapBubbleMenu.displayName = 'Tiptap.BubbleMenu' - -/** - * A wrapper around the library `FloatingMenu` that injects the editor from - * context so callers don't need to pass the `editor` prop. - * - * Returns `null` when the editor is not available. - * - * @param props - Props for the underlying `FloatingMenu` (except `editor`). - * @returns A `FloatingMenu` bound to the context editor, or `null`. - * - * @example - * ```tsx - * - * - * - * ``` - */ -export function TiptapFloatingMenu({ children, ...rest }: { children: ReactNode } & Omit) { - const { editor } = useTiptap() - - if (!editor) { - return null - } - - return ( - - {children} - - ) -} - -TiptapFloatingMenu.displayName = 'Tiptap.FloatingMenu' - /** * Root `Tiptap` component. Use it as the provider for all child components. * - * The exported object includes several helper subcomponents for common use - * cases: `Content`, `Loading`, `BubbleMenu`, and `FloatingMenu`. + * The exported object includes the `Content` subcomponent for rendering the + * editor content area. * * This component provides both the new `TiptapContext` (accessed via `useTiptap()`) * and the legacy `EditorContext` (accessed via `useCurrentEditor()`) for * backwards compatibility. * + * For bubble menus and floating menus, import them separately from + * `@tiptap/react/menus` to keep floating-ui as an optional dependency. + * * @example * ```tsx - * const editor = useEditor({ extensions: [...] }) + * import { Tiptap, useEditor } from '@tiptap/react' + * import { BubbleMenu } from '@tiptap/react/menus' * - * return ( - * - * Initializing editor... - * - * - * - * - * - * ) + * function App() { + * const editor = useEditor({ extensions: [...] }) + * + * return ( + * + * + * + * + * + * + * ) + * } * ``` */ export const Tiptap = Object.assign(TiptapWrapper, { @@ -332,24 +219,6 @@ export const Tiptap = Object.assign(TiptapWrapper, { * @see TiptapContent */ Content: TiptapContent, - - /** - * The Tiptap Loading component that renders its children only when the editor is not ready. - * @see TiptapLoading - */ - Loading: TiptapLoading, - - /** - * The Tiptap BubbleMenu component that wraps the BubbleMenu from Tiptap and provides the editor instance from the context. - * @see TiptapBubbleMenu - */ - BubbleMenu: TiptapBubbleMenu, - - /** - * The Tiptap FloatingMenu component that wraps the FloatingMenu from Tiptap and provides the editor instance from the context. - * @see TiptapFloatingMenu - */ - FloatingMenu: TiptapFloatingMenu, }) export default Tiptap From c78826605efcb70211b85e67824aee379b47eae6 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 3 Feb 2026 17:13:14 +0100 Subject: [PATCH 608/629] revert Default React demo to useEditor and EditorContent pattern (#7490) Reverts the Default React demo from using the new component wrapper back to the traditional useEditor + pattern with prop drilling. The MenuBar now receives the editor as a prop and uses useEditorState for reactive updates. --- demos/src/Examples/Default/React/MenuBar.tsx | 19 +++++++++++-------- demos/src/Examples/Default/React/index.tsx | 10 +++++----- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/demos/src/Examples/Default/React/MenuBar.tsx b/demos/src/Examples/Default/React/MenuBar.tsx index 7cfc3c8eef..ce302b8570 100644 --- a/demos/src/Examples/Default/React/MenuBar.tsx +++ b/demos/src/Examples/Default/React/MenuBar.tsx @@ -1,15 +1,18 @@ -import { useTiptap, useTiptapState } from '@tiptap/react' +import type { Editor } from '@tiptap/core' +import { useEditorState } from '@tiptap/react' import React from 'react' import { menuBarStateSelector } from './menuBarState.js' -/** - * Menu bar component that uses useTiptap and useTiptapState hooks - * to access the editor from context. - */ -export function MenuBar() { - const { editor } = useTiptap() - const editorState = useTiptapState(menuBarStateSelector) +export const MenuBar = ({ editor }: { editor: Editor | null }) => { + const editorState = useEditorState({ + editor, + selector: menuBarStateSelector, + }) + + if (!editor) { + return null + } return (
    diff --git a/demos/src/Examples/Default/React/index.tsx b/demos/src/Examples/Default/React/index.tsx index 563956fc22..cd12981457 100644 --- a/demos/src/Examples/Default/React/index.tsx +++ b/demos/src/Examples/Default/React/index.tsx @@ -1,7 +1,7 @@ import './styles.scss' import { TextStyleKit } from '@tiptap/extension-text-style' -import { Tiptap, useEditor } from '@tiptap/react' +import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React from 'react' @@ -45,9 +45,9 @@ export default () => { }) return ( - - - - + <> + + + ) } From a1da626afdb64830a321360ac1aceb550dd58423 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Tue, 3 Feb 2026 17:14:08 +0100 Subject: [PATCH 609/629] Develop <=> Main (#7496) * update slack webhook action * fix(react): simplify Tiptap component API and separate menu imports (#7494) * fix(react): simplify Tiptap component API and separate menu imports - Remove isReady from TiptapContextType, editor is now always available - Move BubbleMenu and FloatingMenu to @tiptap/react/menus entrypoint - Add backwards-compatible instance prop (deprecated in favor of editor) - Add helpful error when useTiptap is used outside provider * Validate editor prop and update demo imports Throw an error in TiptapWrapper when neither editor nor instance is provided. Remove the forced cast and expand the deprecation comment to note upcoming removal. Update demo example imports to use .js/.jsx file extensions. * Remove editor prop from BubbleMenu example * revert Default React demo to useEditor and EditorContent pattern (#7490) Reverts the Default React demo from using the new component wrapper back to the traditional useEditor + pattern with prop drilling. The MenuBar now receives the editor as a prop and uses useEditorState for reactive updates. --- .../separate-menu-imports-warm-summer-rain.md | 5 + .../tiptap-nonnull-editor-calm-blue-sky.md | 5 + .github/workflows/publish.yml | 4 + demos/src/Examples/Default/React/MenuBar.tsx | 19 +- demos/src/Examples/Default/React/index.tsx | 12 +- packages/react/src/Tiptap.tsx | 247 ++++-------------- 6 files changed, 87 insertions(+), 205 deletions(-) create mode 100644 .changeset/separate-menu-imports-warm-summer-rain.md create mode 100644 .changeset/tiptap-nonnull-editor-calm-blue-sky.md diff --git a/.changeset/separate-menu-imports-warm-summer-rain.md b/.changeset/separate-menu-imports-warm-summer-rain.md new file mode 100644 index 0000000000..30bea4d8e2 --- /dev/null +++ b/.changeset/separate-menu-imports-warm-summer-rain.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': minor +--- + +Moved BubbleMenu and FloatingMenu to separate `@tiptap/react/menus` entrypoint to keep floating-ui optional diff --git a/.changeset/tiptap-nonnull-editor-calm-blue-sky.md b/.changeset/tiptap-nonnull-editor-calm-blue-sky.md new file mode 100644 index 0000000000..73ff060e13 --- /dev/null +++ b/.changeset/tiptap-nonnull-editor-calm-blue-sky.md @@ -0,0 +1,5 @@ +--- +'@tiptap/react': minor +--- + +Simplified Tiptap component API with guaranteed non-null editor instance from useTiptap hook diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 01356faeaf..4badc05f47 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -82,6 +82,8 @@ jobs: id: slack uses: slackapi/slack-github-action@v2.1.1 with: + webhook: ${{ secrets.SLACK_WEBHOOK_URL }} + webhook-type: incoming-webhook payload: | { "message": "[Tiptap Editor Release]: New Tiptap Editor version has been released to NPM." @@ -94,6 +96,8 @@ jobs: id: slack_failure uses: slackapi/slack-github-action@v2.1.1 with: + webhook: ${{ secrets.SLACK_WEBHOOK_URL }} + webhook-type: incoming-webhook payload: | { "message": "[Tiptap Editor Release]: There was an issue publishing a new version. You can find the logs here: https://github.com/ueberdosis/tiptap/actions/runs/${{ github.run_id }}" diff --git a/demos/src/Examples/Default/React/MenuBar.tsx b/demos/src/Examples/Default/React/MenuBar.tsx index e554bef067..ce302b8570 100644 --- a/demos/src/Examples/Default/React/MenuBar.tsx +++ b/demos/src/Examples/Default/React/MenuBar.tsx @@ -1,17 +1,16 @@ -import { useTiptap, useTiptapState } from '@tiptap/react' +import type { Editor } from '@tiptap/core' +import { useEditorState } from '@tiptap/react' import React from 'react' -import { menuBarStateSelector } from './menuBarState.ts' +import { menuBarStateSelector } from './menuBarState.js' -/** - * Menu bar component that uses useTiptap and useTiptapState hooks - * to access the editor from context. - */ -export function MenuBar() { - const { editor, isReady } = useTiptap() - const editorState = useTiptapState(menuBarStateSelector) +export const MenuBar = ({ editor }: { editor: Editor | null }) => { + const editorState = useEditorState({ + editor, + selector: menuBarStateSelector, + }) - if (!isReady || !editor) { + if (!editor) { return null } diff --git a/demos/src/Examples/Default/React/index.tsx b/demos/src/Examples/Default/React/index.tsx index ca2bbc4511..cd12981457 100644 --- a/demos/src/Examples/Default/React/index.tsx +++ b/demos/src/Examples/Default/React/index.tsx @@ -1,11 +1,11 @@ import './styles.scss' import { TextStyleKit } from '@tiptap/extension-text-style' -import { Tiptap, useEditor } from '@tiptap/react' +import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import React from 'react' -import { MenuBar } from './MenuBar.tsx' +import { MenuBar } from './MenuBar.jsx' const extensions = [TextStyleKit, StarterKit] @@ -45,9 +45,9 @@ export default () => { }) return ( - - - - + <> + + + ) } diff --git a/packages/react/src/Tiptap.tsx b/packages/react/src/Tiptap.tsx index 0179e7a905..20f5512332 100644 --- a/packages/react/src/Tiptap.tsx +++ b/packages/react/src/Tiptap.tsx @@ -1,41 +1,40 @@ import type { ReactNode } from 'react' -import { createContext, useContext, useEffect, useMemo, useState } from 'react' +import { createContext, useContext, useMemo } from 'react' import { EditorContext } from './Context.js' import type { Editor, EditorContentProps, EditorStateSnapshot } from './index.js' import { EditorContent, useEditorState } from './index.js' -import { type BubbleMenuProps, BubbleMenu } from './menus/BubbleMenu.js' -import { type FloatingMenuProps, FloatingMenu } from './menus/FloatingMenu.js' /** * The shape of the React context used by the `` components. * - * This object exposes the editor instance and a simple readiness flag. + * The editor instance is always available when using the default `useEditor` + * configuration. For SSR scenarios where `immediatelyRender: false` is used, + * consider using the legacy `EditorProvider` pattern instead. */ export type TiptapContextType = { - /** The Tiptap editor instance. May be null during SSR or before initialization. */ - editor: Editor | null - - /** True when the editor has finished initializing and is ready for user interaction. */ - isReady: boolean + /** The Tiptap editor instance. */ + editor: Editor } /** - * React context that stores the current editor instance and readiness flag. + * React context that stores the current editor instance. * * Use `useTiptap()` to read from this context in child components. */ export const TiptapContext = createContext({ - editor: null, - isReady: false, + get editor(): Editor { + throw new Error('useTiptap must be used within a provider') + }, }) TiptapContext.displayName = 'TiptapContext' /** - * Hook to read the Tiptap context (`editor` + `isReady`). + * Hook to read the Tiptap context and access the editor instance. * * This is a small convenience wrapper around `useContext(TiptapContext)`. + * The editor is always available when used within a `` provider. * * @returns The current `TiptapContextType` value from the provider. * @@ -43,9 +42,14 @@ TiptapContext.displayName = 'TiptapContext' * ```tsx * import { useTiptap } from '@tiptap/react' * - * function Status() { - * const { isReady } = useTiptap() - * return
    {isReady ? 'Editor ready' : 'Loading editor...'}
    + * function Toolbar() { + * const { editor } = useTiptap() + * + * return ( + * + * ) * } * ``` */ @@ -57,10 +61,6 @@ export const useTiptap = () => useContext(TiptapContext) * This is a thin wrapper around `useEditorState` that reads the `editor` * instance from `useTiptap()` so callers don't have to pass it manually. * - * Important: This hook should only be used when the editor is available. - * Use the `isReady` flag from `useTiptap()` to guard against null editor, - * or ensure your component only renders after the editor is initialized. - * * @typeParam TSelectorResult - The type returned by the selector. * @param selector - Function that receives the editor state snapshot and * returns the piece of state you want to subscribe to. @@ -71,16 +71,11 @@ export const useTiptap = () => useContext(TiptapContext) * @example * ```tsx * function WordCount() { - * const { isReady } = useTiptap() - * - * // Only use useTiptapState when the editor is ready * const wordCount = useTiptapState(state => { * const text = state.editor.state.doc.textContent * return text.split(/\s+/).filter(Boolean).length * }) * - * if (!isReady) return null - * * return {wordCount} words * } * ``` @@ -90,8 +85,9 @@ export function useTiptapState( equalityFn?: (a: TSelectorResult, b: TSelectorResult | null) => boolean, ) { const { editor } = useTiptap() + return useEditorState({ - editor: editor as Editor, + editor, selector, equalityFn, }) @@ -103,18 +99,21 @@ export function useTiptapState( export type TiptapWrapperProps = { /** * The editor instance to provide to child components. - * Can be null during SSR or before initialization. + * Use `useEditor()` to create this instance. + */ + editor?: Editor + + /** + * @deprecated Use `editor` instead. Will be removed in the next major version. */ - instance: Editor | null + instance?: Editor + children: ReactNode } /** * Top-level provider component that makes the editor instance available via - * React context and tracks when the editor becomes ready. - * - * The component listens to the editor's `create` event and flips the - * `isReady` flag once initialization completes. + * React context to all child components. * * This component also provides backwards compatibility with the legacy * `EditorContext`, so components using `useCurrentEditor()` will work @@ -131,7 +130,7 @@ export type TiptapWrapperProps = { * const editor = useEditor({ extensions: [...] }) * * return ( - * + * * * * @@ -139,38 +138,18 @@ export type TiptapWrapperProps = { * } * ``` */ -export function TiptapWrapper({ instance, children }: TiptapWrapperProps) { - const [isReady, setIsReady] = useState(instance?.isInitialized ?? false) - - useEffect(() => { - if (!instance) { - setIsReady(false) - return - } - - // If the editor is already initialized, set isReady to true - if (instance.isInitialized) { - setIsReady(true) - return - } - - const handleCreate = () => { - setIsReady(true) - } - - instance.on('create', handleCreate) +export function TiptapWrapper({ editor, instance, children }: TiptapWrapperProps) { + const resolvedEditor = editor ?? instance - return () => { - instance.off('create', handleCreate) - } - }, [instance]) + if (!resolvedEditor) { + throw new Error('Tiptap: An editor instance is required. Pass a non-null `editor` prop.') + } - // Memoize context values to prevent unnecessary re-renders - const tiptapContextValue = useMemo(() => ({ editor: instance, isReady }), [instance, isReady]) + const tiptapContextValue = useMemo(() => ({ editor: resolvedEditor }), [resolvedEditor]) // Provide backwards compatibility with the legacy EditorContext // so components using useCurrentEditor() work inside - const legacyContextValue = useMemo(() => ({ editor: instance }), [instance]) + const legacyContextValue = useMemo(() => ({ editor: resolvedEditor }), [resolvedEditor]) return ( @@ -202,128 +181,36 @@ export function TiptapContent({ ...rest }: Omit - * - *
    Loading editor...
    - *
    - * - *
    - * ``` - */ -export function TiptapLoading({ children }: TiptapLoadingProps) { - const { isReady } = useTiptap() - - if (isReady) { - return null - } - - return children -} - -TiptapLoading.displayName = 'Tiptap.Loading' - -/** - * A wrapper around the library `BubbleMenu` that injects the editor from - * context so callers don't need to pass the `editor` prop. - * - * Returns `null` when the editor is not available (for example during SSR). - * - * @param props - Props for the underlying `BubbleMenu` (except `editor`). - * @returns A `BubbleMenu` bound to the context editor, or `null`. - * - * @example - * ```tsx - * - * - * - * ``` - */ -export function TiptapBubbleMenu({ children, ...rest }: { children: ReactNode } & Omit) { - const { editor } = useTiptap() - - if (!editor) { - return null - } - - return ( - - {children} - - ) -} - -TiptapBubbleMenu.displayName = 'Tiptap.BubbleMenu' - -/** - * A wrapper around the library `FloatingMenu` that injects the editor from - * context so callers don't need to pass the `editor` prop. - * - * Returns `null` when the editor is not available. - * - * @param props - Props for the underlying `FloatingMenu` (except `editor`). - * @returns A `FloatingMenu` bound to the context editor, or `null`. - * - * @example - * ```tsx - * - * - * - * ``` - */ -export function TiptapFloatingMenu({ children, ...rest }: { children: ReactNode } & Omit) { - const { editor } = useTiptap() - - if (!editor) { - return null - } - - return ( - - {children} - - ) -} - -TiptapFloatingMenu.displayName = 'Tiptap.FloatingMenu' - /** * Root `Tiptap` component. Use it as the provider for all child components. * - * The exported object includes several helper subcomponents for common use - * cases: `Content`, `Loading`, `BubbleMenu`, and `FloatingMenu`. + * The exported object includes the `Content` subcomponent for rendering the + * editor content area. * * This component provides both the new `TiptapContext` (accessed via `useTiptap()`) * and the legacy `EditorContext` (accessed via `useCurrentEditor()`) for * backwards compatibility. * + * For bubble menus and floating menus, import them separately from + * `@tiptap/react/menus` to keep floating-ui as an optional dependency. + * * @example * ```tsx - * const editor = useEditor({ extensions: [...] }) + * import { Tiptap, useEditor } from '@tiptap/react' + * import { BubbleMenu } from '@tiptap/react/menus' * - * return ( - * - * Initializing editor... - * - * - * - * - * - * ) + * function App() { + * const editor = useEditor({ extensions: [...] }) + * + * return ( + * + * + * + * + * + * + * ) + * } * ``` */ export const Tiptap = Object.assign(TiptapWrapper, { @@ -332,24 +219,6 @@ export const Tiptap = Object.assign(TiptapWrapper, { * @see TiptapContent */ Content: TiptapContent, - - /** - * The Tiptap Loading component that renders its children only when the editor is not ready. - * @see TiptapLoading - */ - Loading: TiptapLoading, - - /** - * The Tiptap BubbleMenu component that wraps the BubbleMenu from Tiptap and provides the editor instance from the context. - * @see TiptapBubbleMenu - */ - BubbleMenu: TiptapBubbleMenu, - - /** - * The Tiptap FloatingMenu component that wraps the FloatingMenu from Tiptap and provides the editor instance from the context. - * @see TiptapFloatingMenu - */ - FloatingMenu: TiptapFloatingMenu, }) export default Tiptap From 73ece766fd1f5ce51723e7225a6da346c30a036f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 17:31:51 +0100 Subject: [PATCH 610/629] chore(release): publish a new release version (#7480) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/link-title-attribute.md | 5 --- .changeset/link-title-markdown.md | 5 --- .../separate-menu-imports-warm-summer-rain.md | 5 --- .../tiptap-nonnull-editor-calm-blue-sky.md | 5 --- CHANGELOG.md | 16 ++++++++++ .../extension-character-count/CHANGELOG.md | 6 ++++ .../extension-character-count/package.json | 2 +- .../extension-dropcursor/CHANGELOG.md | 6 ++++ .../extension-dropcursor/package.json | 2 +- .../extension-focus/CHANGELOG.md | 6 ++++ .../extension-focus/package.json | 2 +- .../extension-gapcursor/CHANGELOG.md | 6 ++++ .../extension-gapcursor/package.json | 2 +- .../extension-history/CHANGELOG.md | 6 ++++ .../extension-history/package.json | 2 +- .../extension-list-item/CHANGELOG.md | 6 ++++ .../extension-list-item/package.json | 2 +- .../extension-list-keymap/CHANGELOG.md | 6 ++++ .../extension-list-keymap/package.json | 2 +- .../extension-placeholder/CHANGELOG.md | 6 ++++ .../extension-placeholder/package.json | 2 +- .../extension-table-cell/CHANGELOG.md | 6 ++++ .../extension-table-cell/package.json | 2 +- .../extension-table-header/CHANGELOG.md | 6 ++++ .../extension-table-header/package.json | 2 +- .../extension-table-row/CHANGELOG.md | 6 ++++ .../extension-table-row/package.json | 2 +- .../extension-task-item/CHANGELOG.md | 6 ++++ .../extension-task-item/package.json | 2 +- .../extension-task-list/CHANGELOG.md | 6 ++++ .../extension-task-list/package.json | 2 +- packages/core/CHANGELOG.md | 6 ++++ packages/core/package.json | 2 +- packages/extension-audio/CHANGELOG.md | 6 ++++ packages/extension-audio/package.json | 2 +- packages/extension-blockquote/CHANGELOG.md | 6 ++++ packages/extension-blockquote/package.json | 2 +- packages/extension-bold/CHANGELOG.md | 6 ++++ packages/extension-bold/package.json | 2 +- packages/extension-bubble-menu/CHANGELOG.md | 7 +++++ packages/extension-bubble-menu/package.json | 2 +- packages/extension-bullet-list/CHANGELOG.md | 6 ++++ packages/extension-bullet-list/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-code-block/CHANGELOG.md | 7 +++++ packages/extension-code-block/package.json | 2 +- packages/extension-code/CHANGELOG.md | 6 ++++ packages/extension-code/package.json | 2 +- .../CHANGELOG.md | 7 +++++ .../package.json | 2 +- packages/extension-collaboration/CHANGELOG.md | 7 +++++ packages/extension-collaboration/package.json | 2 +- packages/extension-color/CHANGELOG.md | 6 ++++ packages/extension-color/package.json | 2 +- packages/extension-details/CHANGELOG.md | 8 +++++ packages/extension-details/package.json | 2 +- packages/extension-document/CHANGELOG.md | 6 ++++ packages/extension-document/package.json | 2 +- .../extension-drag-handle-react/CHANGELOG.md | 10 ++++++ .../extension-drag-handle-react/package.json | 2 +- .../extension-drag-handle-vue-2/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-2/package.json | 2 +- .../extension-drag-handle-vue-3/CHANGELOG.md | 8 +++++ .../extension-drag-handle-vue-3/package.json | 2 +- packages/extension-drag-handle/CHANGELOG.md | 9 ++++++ packages/extension-drag-handle/package.json | 2 +- packages/extension-emoji/CHANGELOG.md | 8 +++++ packages/extension-emoji/package.json | 2 +- packages/extension-file-handler/CHANGELOG.md | 8 +++++ packages/extension-file-handler/package.json | 2 +- packages/extension-floating-menu/CHANGELOG.md | 7 +++++ packages/extension-floating-menu/package.json | 2 +- packages/extension-font-family/CHANGELOG.md | 6 ++++ packages/extension-font-family/package.json | 2 +- packages/extension-hard-break/CHANGELOG.md | 6 ++++ packages/extension-hard-break/package.json | 2 +- packages/extension-heading/CHANGELOG.md | 6 ++++ packages/extension-heading/package.json | 2 +- packages/extension-highlight/CHANGELOG.md | 6 ++++ packages/extension-highlight/package.json | 2 +- .../extension-horizontal-rule/CHANGELOG.md | 7 +++++ .../extension-horizontal-rule/package.json | 2 +- packages/extension-image/CHANGELOG.md | 6 ++++ packages/extension-image/package.json | 2 +- .../CHANGELOG.md | 8 +++++ .../package.json | 2 +- packages/extension-italic/CHANGELOG.md | 6 ++++ packages/extension-italic/package.json | 2 +- packages/extension-link/CHANGELOG.md | 9 ++++++ packages/extension-link/package.json | 2 +- packages/extension-list/CHANGELOG.md | 7 +++++ packages/extension-list/package.json | 2 +- packages/extension-mathematics/CHANGELOG.md | 7 +++++ packages/extension-mathematics/package.json | 2 +- packages/extension-mention/CHANGELOG.md | 8 +++++ packages/extension-mention/package.json | 2 +- packages/extension-node-range/CHANGELOG.md | 7 +++++ packages/extension-node-range/package.json | 2 +- packages/extension-ordered-list/CHANGELOG.md | 6 ++++ packages/extension-ordered-list/package.json | 2 +- packages/extension-paragraph/CHANGELOG.md | 6 ++++ packages/extension-paragraph/package.json | 2 +- packages/extension-strike/CHANGELOG.md | 6 ++++ packages/extension-strike/package.json | 2 +- packages/extension-subscript/CHANGELOG.md | 7 +++++ packages/extension-subscript/package.json | 2 +- packages/extension-superscript/CHANGELOG.md | 7 +++++ packages/extension-superscript/package.json | 2 +- .../extension-table-of-contents/CHANGELOG.md | 7 +++++ .../extension-table-of-contents/package.json | 2 +- packages/extension-table/CHANGELOG.md | 7 +++++ packages/extension-table/package.json | 2 +- packages/extension-text-align/CHANGELOG.md | 6 ++++ packages/extension-text-align/package.json | 2 +- packages/extension-text-style/CHANGELOG.md | 6 ++++ packages/extension-text-style/package.json | 2 +- packages/extension-text/CHANGELOG.md | 6 ++++ packages/extension-text/package.json | 2 +- packages/extension-twitch/CHANGELOG.md | 6 ++++ packages/extension-twitch/package.json | 2 +- packages/extension-typography/CHANGELOG.md | 6 ++++ packages/extension-typography/package.json | 2 +- packages/extension-underline/CHANGELOG.md | 6 ++++ packages/extension-underline/package.json | 2 +- packages/extension-unique-id/CHANGELOG.md | 7 +++++ packages/extension-unique-id/package.json | 2 +- packages/extension-youtube/CHANGELOG.md | 6 ++++ packages/extension-youtube/package.json | 2 +- packages/extensions/CHANGELOG.md | 7 +++++ packages/extensions/package.json | 2 +- packages/html/CHANGELOG.md | 7 +++++ packages/html/package.json | 2 +- packages/markdown/CHANGELOG.md | 7 +++++ packages/markdown/package.json | 2 +- packages/pm/CHANGELOG.md | 2 ++ packages/pm/package.json | 2 +- packages/react/CHANGELOG.md | 12 +++++++ packages/react/package.json | 2 +- packages/starter-kit/CHANGELOG.md | 31 +++++++++++++++++++ packages/starter-kit/package.json | 2 +- packages/static-renderer/CHANGELOG.md | 7 +++++ packages/static-renderer/package.json | 2 +- packages/suggestion/CHANGELOG.md | 7 +++++ packages/suggestion/package.json | 2 +- packages/vue-2/CHANGELOG.md | 7 +++++ packages/vue-2/package.json | 2 +- packages/vue-3/CHANGELOG.md | 7 +++++ packages/vue-3/package.json | 2 +- 149 files changed, 594 insertions(+), 92 deletions(-) delete mode 100644 .changeset/link-title-attribute.md delete mode 100644 .changeset/link-title-markdown.md delete mode 100644 .changeset/separate-menu-imports-warm-summer-rain.md delete mode 100644 .changeset/tiptap-nonnull-editor-calm-blue-sky.md diff --git a/.changeset/link-title-attribute.md b/.changeset/link-title-attribute.md deleted file mode 100644 index a7caf65e0b..0000000000 --- a/.changeset/link-title-attribute.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-link": patch ---- - -Add `title` attribute to Link extension. The title can now be set via `setLink` and `toggleLink` commands and is rendered as an HTML title attribute. diff --git a/.changeset/link-title-markdown.md b/.changeset/link-title-markdown.md deleted file mode 100644 index 72c24adb52..0000000000 --- a/.changeset/link-title-markdown.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@tiptap/extension-link": patch ---- - -Add title attribute support for markdown rendering. Links with titles are now serialized to markdown format `[text](url "title")`. diff --git a/.changeset/separate-menu-imports-warm-summer-rain.md b/.changeset/separate-menu-imports-warm-summer-rain.md deleted file mode 100644 index 30bea4d8e2..0000000000 --- a/.changeset/separate-menu-imports-warm-summer-rain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': minor ---- - -Moved BubbleMenu and FloatingMenu to separate `@tiptap/react/menus` entrypoint to keep floating-ui optional diff --git a/.changeset/tiptap-nonnull-editor-calm-blue-sky.md b/.changeset/tiptap-nonnull-editor-calm-blue-sky.md deleted file mode 100644 index 73ff060e13..0000000000 --- a/.changeset/tiptap-nonnull-editor-calm-blue-sky.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@tiptap/react': minor ---- - -Simplified Tiptap component API with guaranteed non-null editor instance from useTiptap hook diff --git a/CHANGELOG.md b/CHANGELOG.md index 639b256b3c..9c61f233b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,21 @@ # Releases +## v3.19.0 + +### @tiptap/extension-link + +#### Patch Changes + +- Add `title` attribute to Link extension. The title can now be set via `setLink` and `toggleLink` commands and is rendered as an HTML title attribute. +- Add title attribute support for markdown rendering. Links with titles are now serialized to markdown format `[text](url "title")`. + +### @tiptap/react + +#### Minor Changes + +- Moved BubbleMenu and FloatingMenu to separate `@tiptap/react/menus` entrypoint to keep floating-ui optional +- Simplified Tiptap component API with guaranteed non-null editor instance from useTiptap hook + ## v3.18.0 ### @tiptap/extension-bubble-menu diff --git a/packages-deprecated/extension-character-count/CHANGELOG.md b/packages-deprecated/extension-character-count/CHANGELOG.md index 276fd796a1..d338b407e7 100644 --- a/packages-deprecated/extension-character-count/CHANGELOG.md +++ b/packages-deprecated/extension-character-count/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extensions@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-character-count/package.json b/packages-deprecated/extension-character-count/package.json index 05fbc3e860..95405f3731 100644 --- a/packages-deprecated/extension-character-count/package.json +++ b/packages-deprecated/extension-character-count/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-character-count", "description": "font family extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-dropcursor/CHANGELOG.md b/packages-deprecated/extension-dropcursor/CHANGELOG.md index 95c20c68b4..1485806a92 100644 --- a/packages-deprecated/extension-dropcursor/CHANGELOG.md +++ b/packages-deprecated/extension-dropcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extensions@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-dropcursor/package.json b/packages-deprecated/extension-dropcursor/package.json index e60fe2ecbf..dd68897e10 100644 --- a/packages-deprecated/extension-dropcursor/package.json +++ b/packages-deprecated/extension-dropcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-dropcursor", "description": "dropcursor extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-focus/CHANGELOG.md b/packages-deprecated/extension-focus/CHANGELOG.md index 8f7a4ab4d4..80a28c041c 100644 --- a/packages-deprecated/extension-focus/CHANGELOG.md +++ b/packages-deprecated/extension-focus/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extensions@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-focus/package.json b/packages-deprecated/extension-focus/package.json index 3e3ce8f872..eb578e517f 100644 --- a/packages-deprecated/extension-focus/package.json +++ b/packages-deprecated/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-gapcursor/CHANGELOG.md b/packages-deprecated/extension-gapcursor/CHANGELOG.md index e7b4b05873..39cf0d1eee 100644 --- a/packages-deprecated/extension-gapcursor/CHANGELOG.md +++ b/packages-deprecated/extension-gapcursor/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extensions@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-gapcursor/package.json b/packages-deprecated/extension-gapcursor/package.json index 517a1d6852..7e981a8d2f 100644 --- a/packages-deprecated/extension-gapcursor/package.json +++ b/packages-deprecated/extension-gapcursor/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-gapcursor", "description": "gapcursor extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-history/CHANGELOG.md b/packages-deprecated/extension-history/CHANGELOG.md index 42e4b888dc..44e805693a 100644 --- a/packages-deprecated/extension-history/CHANGELOG.md +++ b/packages-deprecated/extension-history/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extensions@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-history/package.json b/packages-deprecated/extension-history/package.json index b07600206f..88d3834b56 100644 --- a/packages-deprecated/extension-history/package.json +++ b/packages-deprecated/extension-history/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-history", "description": "history extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-item/CHANGELOG.md b/packages-deprecated/extension-list-item/CHANGELOG.md index 4d62ac1690..d0259be70b 100644 --- a/packages-deprecated/extension-list-item/CHANGELOG.md +++ b/packages-deprecated/extension-list-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-list@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-item/package.json b/packages-deprecated/extension-list-item/package.json index d778d545ba..c17dd27139 100644 --- a/packages-deprecated/extension-list-item/package.json +++ b/packages-deprecated/extension-list-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-item", "description": "list item extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-list-keymap/CHANGELOG.md b/packages-deprecated/extension-list-keymap/CHANGELOG.md index 211caeeaf8..8c86c63011 100644 --- a/packages-deprecated/extension-list-keymap/CHANGELOG.md +++ b/packages-deprecated/extension-list-keymap/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-list@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-list-keymap/package.json b/packages-deprecated/extension-list-keymap/package.json index 23fa2c2c0c..26d7ab8fb5 100644 --- a/packages-deprecated/extension-list-keymap/package.json +++ b/packages-deprecated/extension-list-keymap/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list-keymap", "description": "list keymap extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-placeholder/CHANGELOG.md b/packages-deprecated/extension-placeholder/CHANGELOG.md index 47cb1fc266..5fe37aee49 100644 --- a/packages-deprecated/extension-placeholder/CHANGELOG.md +++ b/packages-deprecated/extension-placeholder/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extensions@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-placeholder/package.json b/packages-deprecated/extension-placeholder/package.json index d955cb16a7..26085be547 100644 --- a/packages-deprecated/extension-placeholder/package.json +++ b/packages-deprecated/extension-placeholder/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-placeholder", "description": "placeholder extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-cell/CHANGELOG.md b/packages-deprecated/extension-table-cell/CHANGELOG.md index bf1420a77e..0188ded4da 100644 --- a/packages-deprecated/extension-table-cell/CHANGELOG.md +++ b/packages-deprecated/extension-table-cell/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-table@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-cell/package.json b/packages-deprecated/extension-table-cell/package.json index a55a3ee824..7039e9e0d7 100644 --- a/packages-deprecated/extension-table-cell/package.json +++ b/packages-deprecated/extension-table-cell/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-cell", "description": "table cell extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-header/CHANGELOG.md b/packages-deprecated/extension-table-header/CHANGELOG.md index 1e096dd18f..d94edfc1f7 100644 --- a/packages-deprecated/extension-table-header/CHANGELOG.md +++ b/packages-deprecated/extension-table-header/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-table@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-header/package.json b/packages-deprecated/extension-table-header/package.json index f78740b03d..6550116dd1 100644 --- a/packages-deprecated/extension-table-header/package.json +++ b/packages-deprecated/extension-table-header/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-header", "description": "table cell extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-table-row/CHANGELOG.md b/packages-deprecated/extension-table-row/CHANGELOG.md index f2d2cbd087..3f191611e4 100644 --- a/packages-deprecated/extension-table-row/CHANGELOG.md +++ b/packages-deprecated/extension-table-row/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-table@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-table-row/package.json b/packages-deprecated/extension-table-row/package.json index 8efdc393ff..7c0acb03f5 100644 --- a/packages-deprecated/extension-table-row/package.json +++ b/packages-deprecated/extension-table-row/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-row", "description": "table row extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-item/CHANGELOG.md b/packages-deprecated/extension-task-item/CHANGELOG.md index 56094d0ee8..3333162cba 100644 --- a/packages-deprecated/extension-task-item/CHANGELOG.md +++ b/packages-deprecated/extension-task-item/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-list@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-item/package.json b/packages-deprecated/extension-task-item/package.json index 31e5060195..2b3566cd72 100644 --- a/packages-deprecated/extension-task-item/package.json +++ b/packages-deprecated/extension-task-item/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-item", "description": "task item extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages-deprecated/extension-task-list/CHANGELOG.md b/packages-deprecated/extension-task-list/CHANGELOG.md index ba7c07c49a..dc62aa56b7 100644 --- a/packages-deprecated/extension-task-list/CHANGELOG.md +++ b/packages-deprecated/extension-task-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-list@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages-deprecated/extension-task-list/package.json b/packages-deprecated/extension-task-list/package.json index 563d80e282..b3a1f8cebd 100644 --- a/packages-deprecated/extension-task-list/package.json +++ b/packages-deprecated/extension-task-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-task-list", "description": "task list extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 0545b441b6..ba5380202a 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 3e2f7ef637..cf09d61733 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-audio/CHANGELOG.md b/packages/extension-audio/CHANGELOG.md index d45b035011..b4a2bd9fd6 100644 --- a/packages/extension-audio/CHANGELOG.md +++ b/packages/extension-audio/CHANGELOG.md @@ -1,5 +1,11 @@ # @tiptap/extension-audio +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-audio/package.json b/packages/extension-audio/package.json index 0c54ecb7f1..16db3741d5 100644 --- a/packages/extension-audio/package.json +++ b/packages/extension-audio/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-audio", "description": "audio extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-blockquote/CHANGELOG.md b/packages/extension-blockquote/CHANGELOG.md index 896a3c8e1a..382fd1aa2a 100644 --- a/packages/extension-blockquote/CHANGELOG.md +++ b/packages/extension-blockquote/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-blockquote/package.json b/packages/extension-blockquote/package.json index 5f37f2216e..d0b34427d8 100644 --- a/packages/extension-blockquote/package.json +++ b/packages/extension-blockquote/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-blockquote", "description": "blockquote extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bold/CHANGELOG.md b/packages/extension-bold/CHANGELOG.md index 7fe38351b4..ee0e21f36c 100644 --- a/packages/extension-bold/CHANGELOG.md +++ b/packages/extension-bold/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-bold/package.json b/packages/extension-bold/package.json index af21bb13c2..15c742fdab 100644 --- a/packages/extension-bold/package.json +++ b/packages/extension-bold/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bold", "description": "bold extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bubble-menu/CHANGELOG.md b/packages/extension-bubble-menu/CHANGELOG.md index c42516e4a4..46a2220a62 100644 --- a/packages/extension-bubble-menu/CHANGELOG.md +++ b/packages/extension-bubble-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-bubble-menu/package.json b/packages/extension-bubble-menu/package.json index ff8f6e4cba..49c5877fe2 100644 --- a/packages/extension-bubble-menu/package.json +++ b/packages/extension-bubble-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bubble-menu", "description": "bubble-menu extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-bullet-list/CHANGELOG.md b/packages/extension-bullet-list/CHANGELOG.md index 747d5a5e5c..5272bf112e 100644 --- a/packages/extension-bullet-list/CHANGELOG.md +++ b/packages/extension-bullet-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-list@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-bullet-list/package.json b/packages/extension-bullet-list/package.json index f1e1d227f8..e6d445bfca 100644 --- a/packages/extension-bullet-list/package.json +++ b/packages/extension-bullet-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-bullet-list", "description": "bullet list extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block-lowlight/CHANGELOG.md b/packages/extension-code-block-lowlight/CHANGELOG.md index d7d409654c..7bf4c90a3c 100644 --- a/packages/extension-code-block-lowlight/CHANGELOG.md +++ b/packages/extension-code-block-lowlight/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/extension-code-block@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-code-block-lowlight/package.json b/packages/extension-code-block-lowlight/package.json index 7d0dee2ee8..d357e8c373 100644 --- a/packages/extension-code-block-lowlight/package.json +++ b/packages/extension-code-block-lowlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block-lowlight", "description": "code block extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code-block/CHANGELOG.md b/packages/extension-code-block/CHANGELOG.md index 43d78012cf..40de1311be 100644 --- a/packages/extension-code-block/CHANGELOG.md +++ b/packages/extension-code-block/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-code-block/package.json b/packages/extension-code-block/package.json index 52eb517601..1d4def726b 100644 --- a/packages/extension-code-block/package.json +++ b/packages/extension-code-block/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code-block", "description": "code block extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-code/CHANGELOG.md b/packages/extension-code/CHANGELOG.md index b0c488a0e2..e9ca968065 100644 --- a/packages/extension-code/CHANGELOG.md +++ b/packages/extension-code/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-code/package.json b/packages/extension-code/package.json index 8945e1830d..d502d8b6d8 100644 --- a/packages/extension-code/package.json +++ b/packages/extension-code/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-code", "description": "code extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration-caret/CHANGELOG.md b/packages/extension-collaboration-caret/CHANGELOG.md index 43ad86953b..4ae451ed7f 100644 --- a/packages/extension-collaboration-caret/CHANGELOG.md +++ b/packages/extension-collaboration-caret/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-collaboration-caret/package.json b/packages/extension-collaboration-caret/package.json index 49cf6a955b..74bdcd11ac 100644 --- a/packages/extension-collaboration-caret/package.json +++ b/packages/extension-collaboration-caret/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration-caret", "description": "collaboration caret extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-collaboration/CHANGELOG.md b/packages/extension-collaboration/CHANGELOG.md index 8dff51b13d..14b6dcb387 100644 --- a/packages/extension-collaboration/CHANGELOG.md +++ b/packages/extension-collaboration/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-collaboration/package.json b/packages/extension-collaboration/package.json index fff7cda8ca..058682e85d 100644 --- a/packages/extension-collaboration/package.json +++ b/packages/extension-collaboration/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-collaboration", "description": "collaboration extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-color/CHANGELOG.md b/packages/extension-color/CHANGELOG.md index 39a8f8a177..294201f6ba 100644 --- a/packages/extension-color/CHANGELOG.md +++ b/packages/extension-color/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-color/package.json b/packages/extension-color/package.json index 1f5eddda48..1ecaa475cd 100644 --- a/packages/extension-color/package.json +++ b/packages/extension-color/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-color", "description": "text color extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-details/CHANGELOG.md b/packages/extension-details/CHANGELOG.md index f1fd52395c..a12711c6d6 100644 --- a/packages/extension-details/CHANGELOG.md +++ b/packages/extension-details/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-details +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/extension-text-style@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-details/package.json b/packages/extension-details/package.json index 6362fcff04..0f47ce0827 100644 --- a/packages/extension-details/package.json +++ b/packages/extension-details/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-details", "description": "details extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev/api/nodes/details", "keywords": [ "tiptap", diff --git a/packages/extension-document/CHANGELOG.md b/packages/extension-document/CHANGELOG.md index 0842ccaf4f..01d38afab8 100644 --- a/packages/extension-document/CHANGELOG.md +++ b/packages/extension-document/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-document/package.json b/packages/extension-document/package.json index 289fe7962d..e4f3df1088 100644 --- a/packages/extension-document/package.json +++ b/packages/extension-document/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-document", "description": "document extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-react/CHANGELOG.md b/packages/extension-drag-handle-react/CHANGELOG.md index ddbf16d071..d20880f510 100644 --- a/packages/extension-drag-handle-react/CHANGELOG.md +++ b/packages/extension-drag-handle-react/CHANGELOG.md @@ -1,5 +1,15 @@ # @tiptap/extension-drag-handle-react +## 3.19.0 + +### Patch Changes + +- Updated dependencies [a1da626] +- Updated dependencies [a1da626] + - @tiptap/react@3.19.0 + - @tiptap/extension-drag-handle@3.19.0 + - @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-drag-handle-react/package.json b/packages/extension-drag-handle-react/package.json index 405a8a1e25..96b3646788 100644 --- a/packages/extension-drag-handle-react/package.json +++ b/packages/extension-drag-handle-react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-react", "description": "drag handle extension for tiptap with react", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-2/CHANGELOG.md b/packages/extension-drag-handle-vue-2/CHANGELOG.md index 405909f450..827ee3b043 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.19.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.19.0 +- @tiptap/pm@3.19.0 +- @tiptap/vue-2@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-2/package.json b/packages/extension-drag-handle-vue-2/package.json index 05b4fc0844..d5571c4705 100644 --- a/packages/extension-drag-handle-vue-2/package.json +++ b/packages/extension-drag-handle-vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-2", "description": "drag handle extension for tiptap with vue 2", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle-vue-3/CHANGELOG.md b/packages/extension-drag-handle-vue-3/CHANGELOG.md index d6e468e856..19d0826293 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.19.0 + +### Patch Changes + +- @tiptap/extension-drag-handle@3.19.0 +- @tiptap/pm@3.19.0 +- @tiptap/vue-3@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-drag-handle-vue-3/package.json b/packages/extension-drag-handle-vue-3/package.json index 85f31cad0c..8011b2f488 100644 --- a/packages/extension-drag-handle-vue-3/package.json +++ b/packages/extension-drag-handle-vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle-vue-3", "description": "drag handle extension for tiptap with vue 3", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-drag-handle/CHANGELOG.md b/packages/extension-drag-handle/CHANGELOG.md index e3a77b8524..53706faeb9 100644 --- a/packages/extension-drag-handle/CHANGELOG.md +++ b/packages/extension-drag-handle/CHANGELOG.md @@ -1,5 +1,14 @@ # @tiptap/extension-drag-handle +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/extension-collaboration@3.19.0 +- @tiptap/extension-node-range@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-drag-handle/package.json b/packages/extension-drag-handle/package.json index 83e5f4407d..3d6337a790 100644 --- a/packages/extension-drag-handle/package.json +++ b/packages/extension-drag-handle/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-drag-handle", "description": "drag handle extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/drag-handle", "keywords": [ "tiptap", diff --git a/packages/extension-emoji/CHANGELOG.md b/packages/extension-emoji/CHANGELOG.md index 65536d3721..2ad5f4c573 100644 --- a/packages/extension-emoji/CHANGELOG.md +++ b/packages/extension-emoji/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-emoji +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 +- @tiptap/suggestion@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-emoji/package.json b/packages/extension-emoji/package.json index 74afccf6cc..fd69cdb934 100644 --- a/packages/extension-emoji/package.json +++ b/packages/extension-emoji/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-emoji", "description": "emoji extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev/api/nodes/emoji", "keywords": [ "tiptap", diff --git a/packages/extension-file-handler/CHANGELOG.md b/packages/extension-file-handler/CHANGELOG.md index d52614c768..0367076678 100644 --- a/packages/extension-file-handler/CHANGELOG.md +++ b/packages/extension-file-handler/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-file-handler +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/extension-text-style@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-file-handler/package.json b/packages/extension-file-handler/package.json index 85781fedf9..f56fe5e047 100644 --- a/packages/extension-file-handler/package.json +++ b/packages/extension-file-handler/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-file-handler", "description": "file handler extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/filehandler", "keywords": [ "tiptap", diff --git a/packages/extension-floating-menu/CHANGELOG.md b/packages/extension-floating-menu/CHANGELOG.md index ef7cfe6ff1..42a76717c1 100644 --- a/packages/extension-floating-menu/CHANGELOG.md +++ b/packages/extension-floating-menu/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-floating-menu/package.json b/packages/extension-floating-menu/package.json index 6779d9d1f7..a907509692 100644 --- a/packages/extension-floating-menu/package.json +++ b/packages/extension-floating-menu/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-floating-menu", "description": "floating-menu extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-font-family/CHANGELOG.md b/packages/extension-font-family/CHANGELOG.md index 05b7a5c86a..3c3d224eb8 100644 --- a/packages/extension-font-family/CHANGELOG.md +++ b/packages/extension-font-family/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-text-style@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-font-family/package.json b/packages/extension-font-family/package.json index 398462b01a..c80f080cd9 100644 --- a/packages/extension-font-family/package.json +++ b/packages/extension-font-family/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-font-family", "description": "font family extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-hard-break/CHANGELOG.md b/packages/extension-hard-break/CHANGELOG.md index 7ae1359e8a..375eda8b3f 100644 --- a/packages/extension-hard-break/CHANGELOG.md +++ b/packages/extension-hard-break/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-hard-break/package.json b/packages/extension-hard-break/package.json index 09116ef0ad..7603d7dd6d 100644 --- a/packages/extension-hard-break/package.json +++ b/packages/extension-hard-break/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-hard-break", "description": "hard break extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-heading/CHANGELOG.md b/packages/extension-heading/CHANGELOG.md index 458c07487f..fdfc0f3d18 100644 --- a/packages/extension-heading/CHANGELOG.md +++ b/packages/extension-heading/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-heading/package.json b/packages/extension-heading/package.json index 8816a36fc6..f6cff72186 100644 --- a/packages/extension-heading/package.json +++ b/packages/extension-heading/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-heading", "description": "heading extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-highlight/CHANGELOG.md b/packages/extension-highlight/CHANGELOG.md index fcdd5466c8..7b66947cc3 100644 --- a/packages/extension-highlight/CHANGELOG.md +++ b/packages/extension-highlight/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-highlight/package.json b/packages/extension-highlight/package.json index 917a5ca37c..6c5c3490c7 100644 --- a/packages/extension-highlight/package.json +++ b/packages/extension-highlight/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-highlight", "description": "highlight extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-horizontal-rule/CHANGELOG.md b/packages/extension-horizontal-rule/CHANGELOG.md index b209752bf9..35fbd904eb 100644 --- a/packages/extension-horizontal-rule/CHANGELOG.md +++ b/packages/extension-horizontal-rule/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-horizontal-rule/package.json b/packages/extension-horizontal-rule/package.json index 709248b2a7..d8314efcec 100644 --- a/packages/extension-horizontal-rule/package.json +++ b/packages/extension-horizontal-rule/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-horizontal-rule", "description": "horizontal rule extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-image/CHANGELOG.md b/packages/extension-image/CHANGELOG.md index 0642dd2ff6..d6ea9657b1 100644 --- a/packages/extension-image/CHANGELOG.md +++ b/packages/extension-image/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-image/package.json b/packages/extension-image/package.json index 76a3733b1c..90bb2f1dd3 100644 --- a/packages/extension-image/package.json +++ b/packages/extension-image/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-image", "description": "image extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-invisible-characters/CHANGELOG.md b/packages/extension-invisible-characters/CHANGELOG.md index 057348360e..73a0729bb6 100644 --- a/packages/extension-invisible-characters/CHANGELOG.md +++ b/packages/extension-invisible-characters/CHANGELOG.md @@ -1,5 +1,13 @@ # @tiptap/extension-invisible-characters +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/extension-text-style@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-invisible-characters/package.json b/packages/extension-invisible-characters/package.json index f754f241b6..7977126500 100644 --- a/packages/extension-invisible-characters/package.json +++ b/packages/extension-invisible-characters/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-invisible-characters", "description": "invisible characters extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/invisiblecharacters", "keywords": [ "tiptap", diff --git a/packages/extension-italic/CHANGELOG.md b/packages/extension-italic/CHANGELOG.md index 9db5ff7889..77b8b570b9 100644 --- a/packages/extension-italic/CHANGELOG.md +++ b/packages/extension-italic/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-italic/package.json b/packages/extension-italic/package.json index 8ade826958..286ba4880f 100644 --- a/packages/extension-italic/package.json +++ b/packages/extension-italic/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-italic", "description": "italic extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-link/CHANGELOG.md b/packages/extension-link/CHANGELOG.md index bdac61cc60..f668282283 100644 --- a/packages/extension-link/CHANGELOG.md +++ b/packages/extension-link/CHANGELOG.md @@ -1,5 +1,14 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- 9011aff: Add `title` attribute to Link extension. The title can now be set via `setLink` and `toggleLink` commands and is rendered as an HTML title attribute. +- 9011aff: Add title attribute support for markdown rendering. Links with titles are now serialized to markdown format `[text](url "title")`. + - @tiptap/core@3.19.0 + - @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-link/package.json b/packages/extension-link/package.json index f1e6f26873..fcfe9e0431 100644 --- a/packages/extension-link/package.json +++ b/packages/extension-link/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-link", "description": "link extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-list/CHANGELOG.md b/packages/extension-list/CHANGELOG.md index b1865a65bd..0c1aa14a3b 100644 --- a/packages/extension-list/CHANGELOG.md +++ b/packages/extension-list/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-list/package.json b/packages/extension-list/package.json index 9bf79ffae1..4b6b6164d9 100644 --- a/packages/extension-list/package.json +++ b/packages/extension-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-list", "description": "List extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-mathematics/CHANGELOG.md b/packages/extension-mathematics/CHANGELOG.md index 15edf210f8..6bd727cb03 100644 --- a/packages/extension-mathematics/CHANGELOG.md +++ b/packages/extension-mathematics/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-mathematics +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-mathematics/package.json b/packages/extension-mathematics/package.json index c42e009c83..b98c52ca15 100644 --- a/packages/extension-mathematics/package.json +++ b/packages/extension-mathematics/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mathematics", "description": "latex math extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev/api/extensions/mathematics", "keywords": [ "tiptap", diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index 830ab0dd3b..3e24cb2aa4 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -1,5 +1,13 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 +- @tiptap/suggestion@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index 0119cb6ee3..8d13352016 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-node-range/CHANGELOG.md b/packages/extension-node-range/CHANGELOG.md index 708e5b31b0..488780e84e 100644 --- a/packages/extension-node-range/CHANGELOG.md +++ b/packages/extension-node-range/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-node-range +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-node-range/package.json b/packages/extension-node-range/package.json index 278815943c..d5ecc54290 100644 --- a/packages/extension-node-range/package.json +++ b/packages/extension-node-range/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-node-range", "description": "node range extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-ordered-list/CHANGELOG.md b/packages/extension-ordered-list/CHANGELOG.md index ccf3d5bd08..70f2065e5d 100644 --- a/packages/extension-ordered-list/CHANGELOG.md +++ b/packages/extension-ordered-list/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/extension-list@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-ordered-list/package.json b/packages/extension-ordered-list/package.json index f738bf31de..c878488eb5 100644 --- a/packages/extension-ordered-list/package.json +++ b/packages/extension-ordered-list/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-ordered-list", "description": "ordered list extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-paragraph/CHANGELOG.md b/packages/extension-paragraph/CHANGELOG.md index bcd54ef896..dbf510ac5a 100644 --- a/packages/extension-paragraph/CHANGELOG.md +++ b/packages/extension-paragraph/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-paragraph/package.json b/packages/extension-paragraph/package.json index b221ce7297..da9963fc0e 100644 --- a/packages/extension-paragraph/package.json +++ b/packages/extension-paragraph/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-paragraph", "description": "paragraph extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-strike/CHANGELOG.md b/packages/extension-strike/CHANGELOG.md index 8c7cadd3f4..8216a548a3 100644 --- a/packages/extension-strike/CHANGELOG.md +++ b/packages/extension-strike/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-strike/package.json b/packages/extension-strike/package.json index a3d521c8e4..6c0548b180 100644 --- a/packages/extension-strike/package.json +++ b/packages/extension-strike/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-strike", "description": "strike extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-subscript/CHANGELOG.md b/packages/extension-subscript/CHANGELOG.md index 4beeb6e347..0ad6da5685 100644 --- a/packages/extension-subscript/CHANGELOG.md +++ b/packages/extension-subscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-subscript/package.json b/packages/extension-subscript/package.json index a6a5418a3c..fca544948e 100644 --- a/packages/extension-subscript/package.json +++ b/packages/extension-subscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-subscript", "description": "subscript extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-superscript/CHANGELOG.md b/packages/extension-superscript/CHANGELOG.md index 42f1efbc34..b74bef2467 100644 --- a/packages/extension-superscript/CHANGELOG.md +++ b/packages/extension-superscript/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-superscript/package.json b/packages/extension-superscript/package.json index ba83d500c2..0ef2d6d306 100644 --- a/packages/extension-superscript/package.json +++ b/packages/extension-superscript/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-superscript", "description": "superscript extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-table-of-contents/CHANGELOG.md b/packages/extension-table-of-contents/CHANGELOG.md index 957cd88e6d..b51e080a58 100644 --- a/packages/extension-table-of-contents/CHANGELOG.md +++ b/packages/extension-table-of-contents/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-table-of-contents +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-table-of-contents/package.json b/packages/extension-table-of-contents/package.json index 2c2e5dead4..657361ff24 100644 --- a/packages/extension-table-of-contents/package.json +++ b/packages/extension-table-of-contents/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table-of-contents", "description": "table of contents extension for Tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev/docs/editor/extensions/functionality/table-of-contents", "keywords": [ "tiptap", diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index c29cc25226..72b98d5252 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 0a24b2b4e9..54597332fd 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-align/CHANGELOG.md b/packages/extension-text-align/CHANGELOG.md index c2912eb998..6d79afcee4 100644 --- a/packages/extension-text-align/CHANGELOG.md +++ b/packages/extension-text-align/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-text-align/package.json b/packages/extension-text-align/package.json index d8c9f94f67..da7c2a7531 100644 --- a/packages/extension-text-align/package.json +++ b/packages/extension-text-align/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-align", "description": "text align extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text-style/CHANGELOG.md b/packages/extension-text-style/CHANGELOG.md index d5b3d1fd00..0a1cc6e19c 100644 --- a/packages/extension-text-style/CHANGELOG.md +++ b/packages/extension-text-style/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-text-style/package.json b/packages/extension-text-style/package.json index b4888dc2e7..3bfa27863c 100644 --- a/packages/extension-text-style/package.json +++ b/packages/extension-text-style/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text-style", "description": "text style extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-text/CHANGELOG.md b/packages/extension-text/CHANGELOG.md index 191b1b225b..c75ab46186 100644 --- a/packages/extension-text/CHANGELOG.md +++ b/packages/extension-text/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-text/package.json b/packages/extension-text/package.json index 1db8ec7d6e..4c3c343d7d 100644 --- a/packages/extension-text/package.json +++ b/packages/extension-text/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-text", "description": "text extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-twitch/CHANGELOG.md b/packages/extension-twitch/CHANGELOG.md index 9a4013a7dc..227fed9301 100644 --- a/packages/extension-twitch/CHANGELOG.md +++ b/packages/extension-twitch/CHANGELOG.md @@ -1,5 +1,11 @@ # @tiptap/extension-twitch +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-twitch/package.json b/packages/extension-twitch/package.json index ac359ac726..4a4aef9fca 100644 --- a/packages/extension-twitch/package.json +++ b/packages/extension-twitch/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-twitch", "description": "a twitch embed extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-typography/CHANGELOG.md b/packages/extension-typography/CHANGELOG.md index 1413b597cd..2cb3007aa2 100644 --- a/packages/extension-typography/CHANGELOG.md +++ b/packages/extension-typography/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-typography/package.json b/packages/extension-typography/package.json index 53da86eca2..20eb83b81a 100644 --- a/packages/extension-typography/package.json +++ b/packages/extension-typography/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-typography", "description": "typography extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-underline/CHANGELOG.md b/packages/extension-underline/CHANGELOG.md index fe925730b6..1fac4f56a7 100644 --- a/packages/extension-underline/CHANGELOG.md +++ b/packages/extension-underline/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json index 36e66ee13e..e22724fc00 100644 --- a/packages/extension-underline/package.json +++ b/packages/extension-underline/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-underline", "description": "underline extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extension-unique-id/CHANGELOG.md b/packages/extension-unique-id/CHANGELOG.md index a9c8f034d4..2e12ed9b38 100644 --- a/packages/extension-unique-id/CHANGELOG.md +++ b/packages/extension-unique-id/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/extension-unique-id +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-unique-id/package.json b/packages/extension-unique-id/package.json index ce6b413626..b543f737dd 100644 --- a/packages/extension-unique-id/package.json +++ b/packages/extension-unique-id/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-unique-id", "description": "unique id extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev/api/extensions/unique-id", "keywords": [ "tiptap", diff --git a/packages/extension-youtube/CHANGELOG.md b/packages/extension-youtube/CHANGELOG.md index a5c452e60a..2f8f7983ea 100644 --- a/packages/extension-youtube/CHANGELOG.md +++ b/packages/extension-youtube/CHANGELOG.md @@ -1,5 +1,11 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extension-youtube/package.json b/packages/extension-youtube/package.json index f3e1fb2984..0ef44b5a4d 100644 --- a/packages/extension-youtube/package.json +++ b/packages/extension-youtube/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-youtube", "description": "a youtube embed extension for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/extensions/CHANGELOG.md b/packages/extensions/CHANGELOG.md index b65b6d40ab..a408ccb773 100644 --- a/packages/extensions/CHANGELOG.md +++ b/packages/extensions/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/extensions/package.json b/packages/extensions/package.json index fb163562e3..451eecce78 100644 --- a/packages/extensions/package.json +++ b/packages/extensions/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extensions", "description": "various extensions for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 3ea080f5a4..d15f2c6268 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/html/package.json b/packages/html/package.json index 88ba7ca128..6d4f98b2b9 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/markdown/CHANGELOG.md b/packages/markdown/CHANGELOG.md index 718e10d635..aafa492848 100644 --- a/packages/markdown/CHANGELOG.md +++ b/packages/markdown/CHANGELOG.md @@ -1,5 +1,12 @@ # @tiptap/markdown +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/markdown/package.json b/packages/markdown/package.json index 1c383463c3..f9ff8a3134 100644 --- a/packages/markdown/package.json +++ b/packages/markdown/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/markdown", "description": "markdown parser and serializer for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/pm/CHANGELOG.md b/packages/pm/CHANGELOG.md index a787fbd609..83a7bf1bcd 100644 --- a/packages/pm/CHANGELOG.md +++ b/packages/pm/CHANGELOG.md @@ -1,5 +1,7 @@ # Change Log +## 3.19.0 + ## 3.18.0 ## 3.17.1 diff --git a/packages/pm/package.json b/packages/pm/package.json index cb118fa086..cbd8d5ec3c 100644 --- a/packages/pm/package.json +++ b/packages/pm/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/pm", "description": "prosemirror wrapper package for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 32b15e0e28..ddd70ed384 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,17 @@ # Change Log +## 3.19.0 + +### Minor Changes + +- a1da626: Moved BubbleMenu and FloatingMenu to separate `@tiptap/react/menus` entrypoint to keep floating-ui optional +- a1da626: Simplified Tiptap component API with guaranteed non-null editor instance from useTiptap hook + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Minor Changes diff --git a/packages/react/package.json b/packages/react/package.json index fad342428a..e4df338084 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/starter-kit/CHANGELOG.md b/packages/starter-kit/CHANGELOG.md index 1e63661647..7fd9d3ef7f 100644 --- a/packages/starter-kit/CHANGELOG.md +++ b/packages/starter-kit/CHANGELOG.md @@ -1,5 +1,36 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- Updated dependencies [9011aff] +- Updated dependencies [9011aff] + - @tiptap/extension-link@3.19.0 + - @tiptap/extension-dropcursor@3.19.0 + - @tiptap/extension-gapcursor@3.19.0 + - @tiptap/extension-list-item@3.19.0 + - @tiptap/extension-list-keymap@3.19.0 + - @tiptap/core@3.19.0 + - @tiptap/extension-blockquote@3.19.0 + - @tiptap/extension-bold@3.19.0 + - @tiptap/extension-bullet-list@3.19.0 + - @tiptap/extension-code@3.19.0 + - @tiptap/extension-code-block@3.19.0 + - @tiptap/extension-document@3.19.0 + - @tiptap/extension-hard-break@3.19.0 + - @tiptap/extension-heading@3.19.0 + - @tiptap/extension-horizontal-rule@3.19.0 + - @tiptap/extension-italic@3.19.0 + - @tiptap/extension-list@3.19.0 + - @tiptap/extension-ordered-list@3.19.0 + - @tiptap/extension-paragraph@3.19.0 + - @tiptap/extension-strike@3.19.0 + - @tiptap/extension-text@3.19.0 + - @tiptap/extension-underline@3.19.0 + - @tiptap/extensions@3.19.0 + - @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/starter-kit/package.json b/packages/starter-kit/package.json index 6717d12848..438939f7c7 100644 --- a/packages/starter-kit/package.json +++ b/packages/starter-kit/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/starter-kit", "description": "starter kit for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/static-renderer/CHANGELOG.md b/packages/static-renderer/CHANGELOG.md index 367f873f2d..2c5db1f09b 100644 --- a/packages/static-renderer/CHANGELOG.md +++ b/packages/static-renderer/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/static-renderer/package.json b/packages/static-renderer/package.json index 73d6f0dbc2..7f31af9aac 100644 --- a/packages/static-renderer/package.json +++ b/packages/static-renderer/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/static-renderer", "description": "statically render Tiptap JSON", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/suggestion/CHANGELOG.md b/packages/suggestion/CHANGELOG.md index 9e98a7a2b5..2fb2318671 100644 --- a/packages/suggestion/CHANGELOG.md +++ b/packages/suggestion/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/suggestion/package.json b/packages/suggestion/package.json index 197a94b6fc..e42d1a274a 100644 --- a/packages/suggestion/package.json +++ b/packages/suggestion/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/suggestion", "description": "suggestion plugin for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-2/CHANGELOG.md b/packages/vue-2/CHANGELOG.md index acde7a7a10..024470ad91 100644 --- a/packages/vue-2/CHANGELOG.md +++ b/packages/vue-2/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/vue-2/package.json b/packages/vue-2/package.json index 8e2b60c255..1d2c962052 100644 --- a/packages/vue-2/package.json +++ b/packages/vue-2/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-2", "description": "Vue components for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", diff --git a/packages/vue-3/CHANGELOG.md b/packages/vue-3/CHANGELOG.md index 4fdd23c429..4c93c8b0c4 100644 --- a/packages/vue-3/CHANGELOG.md +++ b/packages/vue-3/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## 3.19.0 + +### Patch Changes + +- @tiptap/core@3.19.0 +- @tiptap/pm@3.19.0 + ## 3.18.0 ### Patch Changes diff --git a/packages/vue-3/package.json b/packages/vue-3/package.json index b07934be04..dae51b16fd 100644 --- a/packages/vue-3/package.json +++ b/packages/vue-3/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/vue-3", "description": "Vue components for tiptap", - "version": "3.18.0", + "version": "3.19.0", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", From 98546ac60a4f378209f1028bd6030c3078f502f1 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 6 Feb 2026 16:53:34 +0100 Subject: [PATCH 611/629] Add global attributes without types (#7501) * feat: support global attributes without type definitions * refactor: improve global attributes API with explicit string shortcuts - Change types from optional to required with explicit string shorthand options - Add support for 'nodes', 'marks', and '*' string literals for types - Update JSDoc with comprehensive examples for all three shorthand options - Replace implicit undefined behavior with explicit API - Precompute nodeExtensionTypes, markExtensionTypes, and allExtensionTypes - Update tests to demonstrate new API with '*', 'nodes', and 'marks' options * fix imports on types --- ...butes-optional-types-gentle-morning-dew.md | 5 + .../getAttributesFromExtensions.spec.ts | 454 ++++++++++++++++++ .../helpers/getAttributesFromExtensions.ts | 21 +- packages/core/src/types.ts | 12 +- 4 files changed, 490 insertions(+), 2 deletions(-) create mode 100644 .changeset/global-attributes-optional-types-gentle-morning-dew.md create mode 100644 packages/core/__tests__/getAttributesFromExtensions.spec.ts diff --git a/.changeset/global-attributes-optional-types-gentle-morning-dew.md b/.changeset/global-attributes-optional-types-gentle-morning-dew.md new file mode 100644 index 0000000000..5822a597fd --- /dev/null +++ b/.changeset/global-attributes-optional-types-gentle-morning-dew.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": patch +--- + +Global attributes now support shorthand string values for `types`: use `'*'` to apply to all nodes and marks, `'nodes'` for all nodes (excluding text), or `'marks'` for all marks. diff --git a/packages/core/__tests__/getAttributesFromExtensions.spec.ts b/packages/core/__tests__/getAttributesFromExtensions.spec.ts new file mode 100644 index 0000000000..05239c9dcb --- /dev/null +++ b/packages/core/__tests__/getAttributesFromExtensions.spec.ts @@ -0,0 +1,454 @@ +import { Extension, getAttributesFromExtensions, Mark, Node } from '@tiptap/core' +import { describe, expect, it } from 'vitest' + +describe('getAttributesFromExtensions', () => { + describe('node attributes', () => { + it('should extract attributes from node extensions', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + foo: { + default: 'bar', + }, + } + }, + }) + + const attributes = getAttributesFromExtensions([CustomNode]) + + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'customNode', + name: 'foo', + attribute: expect.objectContaining({ + default: 'bar', + }), + }), + ) + }) + + it('should merge default attribute values', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + foo: { + default: 'bar', + }, + } + }, + }) + + const attributes = getAttributesFromExtensions([CustomNode]) + const fooAttr = attributes.find(a => a.name === 'foo') + + expect(fooAttr?.attribute).toMatchObject({ + default: 'bar', + rendered: true, + renderHTML: null, + parseHTML: null, + keepOnSplit: true, + isRequired: false, + }) + }) + + it('should handle function defaults', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + foo: { + default: () => 'computed', + }, + } + }, + }) + + const attributes = getAttributesFromExtensions([CustomNode]) + const fooAttr = attributes.find(a => a.name === 'foo') + + expect(fooAttr?.attribute.default).toBe('computed') + }) + + it('should handle required attributes without default', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + requiredAttr: { + isRequired: true, + default: undefined, + }, + } + }, + }) + + const attributes = getAttributesFromExtensions([CustomNode]) + const requiredAttr = attributes.find(a => a.name === 'requiredAttr') + + expect(requiredAttr?.attribute.isRequired).toBe(true) + expect(requiredAttr?.attribute).not.toHaveProperty('default') + }) + }) + + describe('mark attributes', () => { + it('should extract attributes from mark extensions', () => { + const CustomMark = Mark.create({ + name: 'customMark', + addAttributes() { + return { + color: { + default: 'red', + }, + } + }, + }) + + const attributes = getAttributesFromExtensions([CustomMark]) + + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'customMark', + name: 'color', + attribute: expect.objectContaining({ + default: 'red', + }), + }), + ) + }) + }) + + describe('global attributes with types', () => { + it('should apply global attributes to specified types', () => { + const CustomNode = Node.create({ + name: 'customNode', + }) + + const AnotherNode = Node.create({ + name: 'anotherNode', + }) + + const GlobalExtension = Extension.create({ + name: 'globalExtension', + addGlobalAttributes() { + return [ + { + types: ['customNode'], + attributes: { + globalAttr: { + default: 'global', + }, + }, + }, + ] + }, + }) + + const attributes = getAttributesFromExtensions([CustomNode, AnotherNode, GlobalExtension]) + + // Should have the global attribute for customNode + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'customNode', + name: 'globalAttr', + attribute: expect.objectContaining({ + default: 'global', + }), + }), + ) + + // Should NOT have the global attribute for anotherNode + const anotherNodeAttrs = attributes.filter(a => a.type === 'anotherNode') + expect(anotherNodeAttrs.find(a => a.name === 'globalAttr')).toBeUndefined() + }) + + it('should apply global attributes to multiple types', () => { + const NodeA = Node.create({ name: 'nodeA' }) + const NodeB = Node.create({ name: 'nodeB' }) + const NodeC = Node.create({ name: 'nodeC' }) + + const GlobalExtension = Extension.create({ + name: 'globalExtension', + addGlobalAttributes() { + return [ + { + types: ['nodeA', 'nodeB'], + attributes: { + sharedAttr: { + default: 'shared', + }, + }, + }, + ] + }, + }) + + const attributes = getAttributesFromExtensions([NodeA, NodeB, NodeC, GlobalExtension]) + + // Should have the attribute for nodeA and nodeB + expect(attributes).toContainEqual(expect.objectContaining({ type: 'nodeA', name: 'sharedAttr' })) + expect(attributes).toContainEqual(expect.objectContaining({ type: 'nodeB', name: 'sharedAttr' })) + + // Should NOT have the attribute for nodeC + const nodeCAttrs = attributes.filter(a => a.type === 'nodeC') + expect(nodeCAttrs.find(a => a.name === 'sharedAttr')).toBeUndefined() + }) + }) + + describe('global attributes with shorthand types', () => { + it('should apply global attributes to all nodes and marks when types is "*"', () => { + const NodeA = Node.create({ name: 'nodeA' }) + const NodeB = Node.create({ name: 'nodeB' }) + const CustomMark = Mark.create({ name: 'customMark' }) + + const GlobalExtension = Extension.create({ + name: 'globalExtension', + addGlobalAttributes() { + return [ + { + types: '*', + attributes: { + universalAttr: { + default: 'universal', + }, + }, + }, + ] + }, + }) + + const attributes = getAttributesFromExtensions([NodeA, NodeB, CustomMark, GlobalExtension]) + + // Should have the attribute for both nodes and mark + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'nodeA', + name: 'universalAttr', + attribute: expect.objectContaining({ default: 'universal' }), + }), + ) + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'nodeB', + name: 'universalAttr', + attribute: expect.objectContaining({ default: 'universal' }), + }), + ) + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'customMark', + name: 'universalAttr', + attribute: expect.objectContaining({ default: 'universal' }), + }), + ) + }) + + it('should apply global attributes to all nodes when types is "nodes"', () => { + const TextNode = Node.create({ name: 'text' }) + const ParagraphNode = Node.create({ name: 'paragraph' }) + const HeadingNode = Node.create({ name: 'heading' }) + const CustomMark = Mark.create({ name: 'customMark' }) + + const GlobalExtension = Extension.create({ + name: 'globalExtension', + addGlobalAttributes() { + return [ + { + types: 'nodes', + attributes: { + nodeAttr: { + default: 'nodeValue', + }, + }, + }, + ] + }, + }) + + const attributes = getAttributesFromExtensions([ + TextNode, + ParagraphNode, + HeadingNode, + CustomMark, + GlobalExtension, + ]) + + // Should NOT have the attribute for text node + const textAttrs = attributes.filter(a => a.type === 'text') + expect(textAttrs.find(a => a.name === 'nodeAttr')).toBeUndefined() + + // Should have the attribute for other nodes + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'paragraph', + name: 'nodeAttr', + }), + ) + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'heading', + name: 'nodeAttr', + }), + ) + + // Should NOT have the attribute for marks + const markAttrs = attributes.filter(a => a.type === 'customMark') + expect(markAttrs.find(a => a.name === 'nodeAttr')).toBeUndefined() + }) + + it('should apply global attributes to all marks when types is "marks"', () => { + const CustomNode = Node.create({ name: 'customNode' }) + const BoldMark = Mark.create({ name: 'bold' }) + const ItalicMark = Mark.create({ name: 'italic' }) + + const GlobalExtension = Extension.create({ + name: 'globalExtension', + addGlobalAttributes() { + return [ + { + types: 'marks', + attributes: { + markAttr: { + default: 'markValue', + }, + }, + }, + ] + }, + }) + + const attributes = getAttributesFromExtensions([CustomNode, BoldMark, ItalicMark, GlobalExtension]) + + // Should have the attribute for marks + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'bold', + name: 'markAttr', + }), + ) + expect(attributes).toContainEqual( + expect.objectContaining({ + type: 'italic', + name: 'markAttr', + }), + ) + + // Should NOT have the attribute for nodes + const nodeAttrs = attributes.filter(a => a.type === 'customNode') + expect(nodeAttrs.find(a => a.name === 'markAttr')).toBeUndefined() + }) + }) + + describe('combining node and global attributes', () => { + it('should include both node-specific and global attributes', () => { + const CustomNode = Node.create({ + name: 'customNode', + addAttributes() { + return { + nodeAttr: { + default: 'nodeValue', + }, + } + }, + }) + + const GlobalExtension = Extension.create({ + name: 'globalExtension', + addGlobalAttributes() { + return [ + { + types: ['customNode'], + attributes: { + globalAttr: { + default: 'globalValue', + }, + }, + }, + ] + }, + }) + + const attributes = getAttributesFromExtensions([CustomNode, GlobalExtension]) + + const customNodeAttrs = attributes.filter(a => a.type === 'customNode') + + expect(customNodeAttrs).toHaveLength(2) + expect(customNodeAttrs).toContainEqual( + expect.objectContaining({ name: 'nodeAttr', attribute: expect.objectContaining({ default: 'nodeValue' }) }), + ) + expect(customNodeAttrs).toContainEqual( + expect.objectContaining({ name: 'globalAttr', attribute: expect.objectContaining({ default: 'globalValue' }) }), + ) + }) + }) + + describe('extensions without attributes', () => { + it('should handle extensions without addAttributes', () => { + const SimpleNode = Node.create({ + name: 'simpleNode', + }) + + const attributes = getAttributesFromExtensions([SimpleNode]) + + const simpleNodeAttrs = attributes.filter(a => a.type === 'simpleNode') + expect(simpleNodeAttrs).toHaveLength(0) + }) + + it('should handle extensions without addGlobalAttributes', () => { + const SimpleExtension = Extension.create({ + name: 'simpleExtension', + }) + + const attributes = getAttributesFromExtensions([SimpleExtension]) + + expect(attributes).toHaveLength(0) + }) + }) + + describe('multiple global attribute definitions', () => { + it('should handle multiple global attribute groups', () => { + const NodeA = Node.create({ name: 'nodeA' }) + const NodeB = Node.create({ name: 'nodeB' }) + + const GlobalExtension = Extension.create({ + name: 'globalExtension', + addGlobalAttributes() { + return [ + { + types: ['nodeA'], + attributes: { + attrForA: { default: 'a' }, + }, + }, + { + types: ['nodeB'], + attributes: { + attrForB: { default: 'b' }, + }, + }, + { + types: ['nodeA', 'nodeB'], + attributes: { + sharedAttr: { default: 'shared' }, + }, + }, + ] + }, + }) + + const attributes = getAttributesFromExtensions([NodeA, NodeB, GlobalExtension]) + + const nodeAAttrs = attributes.filter(a => a.type === 'nodeA') + const nodeBAttrs = attributes.filter(a => a.type === 'nodeB') + + expect(nodeAAttrs).toContainEqual(expect.objectContaining({ name: 'attrForA' })) + expect(nodeAAttrs).toContainEqual(expect.objectContaining({ name: 'sharedAttr' })) + expect(nodeAAttrs).not.toContainEqual(expect.objectContaining({ name: 'attrForB' })) + + expect(nodeBAttrs).toContainEqual(expect.objectContaining({ name: 'attrForB' })) + expect(nodeBAttrs).toContainEqual(expect.objectContaining({ name: 'sharedAttr' })) + expect(nodeBAttrs).not.toContainEqual(expect.objectContaining({ name: 'attrForA' })) + }) + }) +}) diff --git a/packages/core/src/helpers/getAttributesFromExtensions.ts b/packages/core/src/helpers/getAttributesFromExtensions.ts index 2526804ba9..2d2e50e0e4 100644 --- a/packages/core/src/helpers/getAttributesFromExtensions.ts +++ b/packages/core/src/helpers/getAttributesFromExtensions.ts @@ -21,6 +21,11 @@ export function getAttributesFromExtensions(extensions: Extensions): ExtensionAt isRequired: false, } + // Precompute lists of extension types for global attribute resolution + const nodeExtensionTypes = nodeExtensions.filter(ext => ext.name !== 'text').map(ext => ext.name) + const markExtensionTypes = markExtensions.map(ext => ext.name) + const allExtensionTypes = [...nodeExtensionTypes, ...markExtensionTypes] + extensions.forEach(extension => { const context = { name: extension.name, @@ -42,7 +47,21 @@ export function getAttributesFromExtensions(extensions: Extensions): ExtensionAt const globalAttributes = addGlobalAttributes() globalAttributes.forEach(globalAttribute => { - globalAttribute.types.forEach(type => { + // Resolve the types based on the string shorthand or explicit array + let resolvedTypes: string[] + if (Array.isArray(globalAttribute.types)) { + resolvedTypes = globalAttribute.types + } else if (globalAttribute.types === '*') { + resolvedTypes = allExtensionTypes + } else if (globalAttribute.types === 'nodes') { + resolvedTypes = nodeExtensionTypes + } else if (globalAttribute.types === 'marks') { + resolvedTypes = markExtensionTypes + } else { + resolvedTypes = [] + } + + resolvedTypes.forEach(type => { Object.entries(globalAttribute.attributes).forEach(([name, attribute]) => { extensionAttributes.push({ type, diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 4e4dfa64eb..9888bc27d5 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -652,8 +652,18 @@ export type ExtensionAttribute = { export type GlobalAttributes = { /** * The node & mark types this attribute should be applied to. + * Can be a specific array of type names, or a shorthand string: + * - `'*'` applies to all nodes (excluding text) and all marks + * - `'nodes'` applies to all nodes (excluding the built-in text node) + * - `'marks'` applies to all marks + * - `string[]` applies to specific node/mark types by name + * @example + * types: '*' // All nodes and marks + * types: 'nodes' // All nodes + * types: 'marks' // All marks + * types: ['heading', 'paragraph'] // Specific types */ - types: string[] + types: string[] | 'nodes' | 'marks' | '*' /** * The attributes to add to the node or mark types. */ From 57624a1d6e2d786b85f4796a081e04403912169d Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Thu, 12 Feb 2026 16:26:27 +0100 Subject: [PATCH 612/629] feat(transform-pasted-html): add API for transforming pasted HTML (#7418) * feat(transform-pasted-html): add API for transforming pasted HTML content with chainable extensions * style: avoid using any typings * chore: add note to clarify paste buttons in demos act as simulations * test(transform-pasted-html): add Cypress integration tests for transformPastedHTML functionality --- .changeset/transform-pasted-html-api.md | 5 + .../TransformPastedHTML/React/index.html | 0 .../TransformPastedHTML/React/index.jsx | 128 ++++ .../TransformPastedHTML/React/styles.scss | 145 +++++ .../TransformPastedHTML/Vue/index.html | 0 .../TransformPastedHTML/Vue/index.vue | 246 ++++++++ packages/core/src/Editor.ts | 9 +- packages/core/src/Extendable.ts | 24 + packages/core/src/ExtensionManager.ts | 43 +- .../src/__tests__/transformPastedHTML.test.ts | 575 ++++++++++++++++++ .../core/transformPastedHTML.spec.ts | 336 ++++++++++ 11 files changed, 1508 insertions(+), 3 deletions(-) create mode 100644 .changeset/transform-pasted-html-api.md create mode 100644 demos/src/Examples/TransformPastedHTML/React/index.html create mode 100644 demos/src/Examples/TransformPastedHTML/React/index.jsx create mode 100644 demos/src/Examples/TransformPastedHTML/React/styles.scss create mode 100644 demos/src/Examples/TransformPastedHTML/Vue/index.html create mode 100644 demos/src/Examples/TransformPastedHTML/Vue/index.vue create mode 100644 packages/core/src/__tests__/transformPastedHTML.test.ts create mode 100644 tests/cypress/integration/core/transformPastedHTML.spec.ts diff --git a/.changeset/transform-pasted-html-api.md b/.changeset/transform-pasted-html-api.md new file mode 100644 index 0000000000..7245be84ef --- /dev/null +++ b/.changeset/transform-pasted-html-api.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': minor +--- + +Add `transformPastedHTML` extension API that allows extensions to transform pasted HTML content before it's parsed into the editor, enabling cleanup of styles, removal of dangerous content, and modification of pasted HTML through a chainable transform system. diff --git a/demos/src/Examples/TransformPastedHTML/React/index.html b/demos/src/Examples/TransformPastedHTML/React/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Examples/TransformPastedHTML/React/index.jsx b/demos/src/Examples/TransformPastedHTML/React/index.jsx new file mode 100644 index 0000000000..c8513a6717 --- /dev/null +++ b/demos/src/Examples/TransformPastedHTML/React/index.jsx @@ -0,0 +1,128 @@ +import './styles.scss' + +import { Extension } from '@tiptap/core' +import { EditorContent, useEditor } from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import React, { useCallback } from 'react' + +export default () => { + // Create extension that replaces words + const WordReplacerExtension = Extension.create({ + name: 'wordReplacer', + priority: 100, + + transformPastedHTML(html) { + // Replace "foo" with "bar" in text content + return html.replace(/\bfoo\b/gi, 'bar') + }, + }) + + // Create extension that converts tabs to spaces + const TabToSpacesExtension = Extension.create({ + name: 'tabToSpaces', + priority: 110, // Higher priority = runs first + + transformPastedHTML(html) { + // Convert tabs to 2 spaces + return html.replace(/\t/g, ' ') + }, + }) + + // Create extension that normalizes line breaks + const LineBreakExtension = Extension.create({ + name: 'lineBreak', + priority: 90, + + transformPastedHTML(html) { + // Convert double line breaks to paragraph breaks + return html.replace(/\n\n+/g, '

    ') + }, + }) + + // Create extension that removes inline styles + const CleanStylesExtension = Extension.create({ + name: 'cleanStyles', + priority: 80, + + transformPastedHTML(html) { + // Remove inline style attributes + return html.replace(/\s+style="[^"]*"/gi, '') + }, + }) + + const editor = useEditor({ + extensions: [StarterKit, TabToSpacesExtension, WordReplacerExtension, LineBreakExtension, CleanStylesExtension], + content: ` +

    Transform Pasted HTML Demo

    +

    This demo showcases the transformPastedHTML API that allows extensions to transform pasted HTML content before it's parsed into the editor.

    + +

    How it works:

    +
      +
    1. Tab to Spaces (priority: 110) - Converts tabs to spaces
    2. +
    3. Word Replacer (priority: 100) - Replaces "foo" with "bar"
    4. +
    5. Line Break (priority: 90) - Converts double line breaks to paragraphs
    6. +
    7. Clean Styles (priority: 80) - Removes inline style attributes
    8. +
    + +

    Extensions with higher priority run first. Each extension receives the output from the previous extension's transform, creating a transform chain.

    + +

    Try it:

    +

    Use the buttons above to simulate the transformation, or try copying and pasting HTML content with tabs, "foo" text, or inline styles from another source to see the API work during actual paste events!

    + +

    Note: The buttons above simulate the transform for demonstration purposes. Real paste events (Ctrl+V / Cmd+V) will also trigger these transforms automatically.

    + `, + }) + + const pasteHTML = useCallback( + html => { + if (!editor) { + return + } + + // Get the transformed HTML by calling the view's transformPastedHTML + const transformedHTML = editor.view.props.transformPastedHTML?.(html) || html + + // Insert the transformed HTML at the current position + editor.chain().focus().insertContent(transformedHTML).run() + }, + [editor], + ) + + const pasteWithTabs = useCallback(() => { + const html = '

    This\ttext\thas\ttabs\tbetween\twords

    ' + pasteHTML(html) + }, [pasteHTML]) + + const pasteWithFoo = useCallback(() => { + const html = '

    The foo is strong in this foo. Foo fighters unite!

    ' + pasteHTML(html) + }, [pasteHTML]) + + const pasteWithStyles = useCallback(() => { + const html = + '

    This has inline styles that will be removed

    ' + pasteHTML(html) + }, [pasteHTML]) + + return ( +
    + {editor && ( +
    +
    + + + +
    +
    + )} + + +
    + ) +} diff --git a/demos/src/Examples/TransformPastedHTML/React/styles.scss b/demos/src/Examples/TransformPastedHTML/React/styles.scss new file mode 100644 index 0000000000..9bc0e8ff8d --- /dev/null +++ b/demos/src/Examples/TransformPastedHTML/React/styles.scss @@ -0,0 +1,145 @@ +/* Control group styles */ +.control-group { + margin-bottom: 1rem; + padding: 1rem; + background-color: var(--gray-1); + border-radius: 0.5rem; +} + +.button-group { + display: flex; + gap: 0.5rem; + flex-wrap: wrap; + + button { + padding: 0.5rem 1rem; + background-color: var(--purple); + color: white; + border: none; + border-radius: 0.25rem; + cursor: pointer; + font-size: 0.875rem; + font-weight: 500; + transition: background-color 0.2s; + + &:hover { + background-color: var(--purple-contrast); + } + } +} + +/* Info panel styles */ +.info-panel { + margin-top: 1.5rem; + padding: 1rem; + background-color: var(--gray-1); + border-radius: 0.5rem; + border-left: 3px solid var(--purple); + + h3 { + margin-top: 0; + margin-bottom: 0.5rem; + font-size: 1rem; + color: var(--purple); + } +} + +.log-entries { + max-height: 200px; + overflow-y: auto; +} + +.log-entry { + padding: 0.25rem 0; + font-size: 0.875rem; + font-family: 'JetBrainsMono', monospace; + color: var(--gray-5); + + strong { + color: var(--purple); + } +} + +/* Basic editor styles */ +.tiptap { + padding: 1rem; + border: 2px solid var(--gray-3); + border-radius: 0.5rem; + min-height: 300px; + + :first-child { + margin-top: 0; + } + + /* Code styles */ + code { + background-color: var(--purple-light); + border-radius: 0.4rem; + color: var(--black); + font-size: 0.85rem; + padding: 0.25em 0.3em; + } + + /* List styles */ + ul, + ol { + padding: 0 1rem; + margin: 1.25rem 1rem 1.25rem 0.4rem; + + li p { + margin-top: 0.25em; + margin-bottom: 0.25em; + } + } + + /* Heading styles */ + h1, + h2, + h3, + h4, + h5, + h6 { + line-height: 1.1; + margin-top: 2.5rem; + text-wrap: pretty; + } + + h1, + h2 { + margin-top: 3.5rem; + margin-bottom: 1.5rem; + } + + h1 { + font-size: 1.4rem; + } + + h2 { + font-size: 1.2rem; + } + + h3 { + font-size: 1.1rem; + } + + h4, + h5, + h6 { + font-size: 1rem; + } + + /* Link styles */ + a { + color: var(--purple); + cursor: pointer; + + &:hover { + color: var(--purple-contrast); + } + } + + /* Strong styles */ + strong { + font-weight: 600; + } +} diff --git a/demos/src/Examples/TransformPastedHTML/Vue/index.html b/demos/src/Examples/TransformPastedHTML/Vue/index.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/demos/src/Examples/TransformPastedHTML/Vue/index.vue b/demos/src/Examples/TransformPastedHTML/Vue/index.vue new file mode 100644 index 0000000000..b857c9bac8 --- /dev/null +++ b/demos/src/Examples/TransformPastedHTML/Vue/index.vue @@ -0,0 +1,246 @@ + + + + + diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 2fc913960e..2c311ed66b 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -2,7 +2,7 @@ import type { MarkType, Node as ProseMirrorNode, NodeType, Schema } from '@tiptap/pm/model' import type { Plugin, PluginKey, Transaction } from '@tiptap/pm/state' import { EditorState } from '@tiptap/pm/state' -import { EditorView } from '@tiptap/pm/view' +import { type DirectEditorProps, EditorView } from '@tiptap/pm/view' import { CommandManager } from './CommandManager.js' import { EventEmitter } from './EventEmitter.js' @@ -523,11 +523,15 @@ export class Editor extends EventEmitter { // If a user provided a custom `dispatchTransaction` through `editorProps`, // we use that as the base dispatch function. // Otherwise, we use Tiptap's internal `dispatchTransaction` method. - const baseDispatch = (editorProps as any).dispatchTransaction || this.dispatchTransaction.bind(this) + const baseDispatch = (editorProps as DirectEditorProps).dispatchTransaction || this.dispatchTransaction.bind(this) const dispatch = enableExtensionDispatchTransaction ? this.extensionManager.dispatchTransaction(baseDispatch) : baseDispatch + // Compose transformPastedHTML from extensions and user-provided editorProps + const baseTransformPastedHTML = (editorProps as DirectEditorProps).transformPastedHTML + const transformPastedHTML = this.extensionManager.transformPastedHTML(baseTransformPastedHTML) + this.editorView = new EditorView(element, { ...editorProps, attributes: { @@ -536,6 +540,7 @@ export class Editor extends EventEmitter { ...editorProps?.attributes, }, dispatchTransaction: dispatch, + transformPastedHTML, state: this.editorState, markViews: this.extensionManager.markViews, nodeViews: this.extensionManager.nodeViews, diff --git a/packages/core/src/Extendable.ts b/packages/core/src/Extendable.ts index a2062474da..b09797ebf1 100644 --- a/packages/core/src/Extendable.ts +++ b/packages/core/src/Extendable.ts @@ -213,6 +213,30 @@ export interface ExtendableConfig< parent: ParentConfig['addProseMirrorPlugins'] }) => Plugin[] + /** + * This function transforms pasted HTML content before it's parsed. + * Extensions can use this to modify or clean up pasted HTML. + * The transformations are chained - each extension's transform receives + * the output from the previous extension's transform. + * @see https://tiptap.dev/docs/editor/guide/custom-extensions#transform-pasted-html + * @example + * transformPastedHTML(html) { + * // Remove all style attributes + * return html.replace(/style="[^"]*"/g, '') + * } + */ + transformPastedHTML?: ( + this: { + name: string + options: Options + storage: Storage + editor: Editor + type: PMType + parent: ParentConfig['transformPastedHTML'] + }, + html: string, + ) => string + /** * This function adds additional extensions to the editor. This is useful for * building extension kits. diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts index ac4c96c9ee..6c8d0eeb30 100644 --- a/packages/core/src/ExtensionManager.ts +++ b/packages/core/src/ExtensionManager.ts @@ -1,7 +1,7 @@ import { keymap } from '@tiptap/pm/keymap' import type { Schema } from '@tiptap/pm/model' import type { Plugin, Transaction } from '@tiptap/pm/state' -import type { MarkViewConstructor, NodeViewConstructor } from '@tiptap/pm/view' +import type { EditorView, MarkViewConstructor, NodeViewConstructor } from '@tiptap/pm/view' import type { Editor } from './Editor.js' import { @@ -277,6 +277,47 @@ export class ExtensionManager { }, baseDispatch) } + /** + * Get the composed transformPastedHTML function from all extensions. + * @param baseTransform The base transform function (e.g. from the editor props) + * @returns A composed transform function that chains all extension transforms + */ + transformPastedHTML( + baseTransform?: (html: string, view?: any) => string, + ): (html: string, view?: EditorView) => string { + const { editor } = this + const extensions = sortExtensions([...this.extensions]) + + return extensions.reduce( + (transform, extension) => { + const context = { + name: extension.name, + options: extension.options, + storage: this.editor.extensionStorage[extension.name as keyof Storage], + editor, + type: getSchemaTypeByName(extension.name, this.schema), + } + + const extensionTransform = getExtensionField( + extension, + 'transformPastedHTML', + context, + ) + + if (!extensionTransform) { + return transform + } + + return (html: string, view?: any) => { + // Chain the transforms: pass the result of the previous transform to the next + const transformedHtml = transform(html, view) + return extensionTransform.call(context, transformedHtml) + } + }, + baseTransform || ((html: string) => html), + ) + } + get markViews(): Record { const { editor } = this const { markExtensions } = splitExtensions(this.extensions) diff --git a/packages/core/src/__tests__/transformPastedHTML.test.ts b/packages/core/src/__tests__/transformPastedHTML.test.ts new file mode 100644 index 0000000000..a6466fa608 --- /dev/null +++ b/packages/core/src/__tests__/transformPastedHTML.test.ts @@ -0,0 +1,575 @@ +import { Editor, Extension } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { describe, expect, it } from 'vitest' + +describe('transformPastedHTML', () => { + describe('priority ordering', () => { + it('should execute transforms in priority order (higher priority first)', () => { + const executionOrder: number[] = [] + + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'low-priority', + priority: 50, + transformPastedHTML(html) { + executionOrder.push(3) + return html + }, + }), + Extension.create({ + name: 'high-priority', + priority: 200, + transformPastedHTML(html) { + executionOrder.push(1) + return html + }, + }), + Extension.create({ + name: 'medium-priority', + priority: 100, + transformPastedHTML(html) { + executionOrder.push(2) + return html + }, + }), + ], + }) + + editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(executionOrder).toEqual([1, 2, 3]) + + editor.destroy() + }) + + it('should execute transforms in default priority order when priorities are equal', () => { + const executionOrder: string[] = [] + + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'first', + transformPastedHTML(html) { + executionOrder.push('first') + return html + }, + }), + Extension.create({ + name: 'second', + transformPastedHTML(html) { + executionOrder.push('second') + return html + }, + }), + ], + }) + + editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(executionOrder).toEqual(['first', 'second']) + + editor.destroy() + }) + }) + + describe('transform chaining', () => { + it('should chain transforms correctly', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'first-transform', + priority: 100, + transformPastedHTML(html) { + return html.replace(/foo/g, 'bar') + }, + }), + Extension.create({ + name: 'second-transform', + priority: 90, + transformPastedHTML(html) { + return html.replace(/bar/g, 'baz') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    foo

    ') + + expect(result).toBe('

    baz

    ') + + editor.destroy() + }) + + it('should pass transformed HTML through entire chain', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'add-prefix', + priority: 100, + transformPastedHTML(html) { + return `PREFIX-${html}` + }, + }), + Extension.create({ + name: 'add-suffix', + priority: 90, + transformPastedHTML(html) { + return `${html}-SUFFIX` + }, + }), + Extension.create({ + name: 'add-wrapper', + priority: 80, + transformPastedHTML(html) { + return `[${html}]` + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('TEST') + + expect(result).toBe('[PREFIX-TEST-SUFFIX]') + + editor.destroy() + }) + }) + + describe('baseTransform integration', () => { + it('should run baseTransform before extension transforms', () => { + const editor = new Editor({ + editorProps: { + transformPastedHTML(html) { + return html.replace(/original/g, 'base') + }, + }, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'extension-transform', + transformPastedHTML(html) { + return html.replace(/base/g, 'final') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    original

    ') + + expect(result).toBe('

    final

    ') + + editor.destroy() + }) + + it('should work when baseTransform is undefined', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'extension-transform', + transformPastedHTML(html) { + return html.replace(/test/g, 'success') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(result).toBe('

    success

    ') + + editor.destroy() + }) + }) + + describe('extensions without transforms', () => { + it('should skip extensions without transformPastedHTML', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'no-transform', + // No transformPastedHTML defined + }), + Extension.create({ + name: 'with-transform', + transformPastedHTML(html) { + return html.replace(/test/g, 'success') + }, + }), + Extension.create({ + name: 'another-no-transform', + // No transformPastedHTML defined + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(result).toBe('

    success

    ') + + editor.destroy() + }) + + it('should return original HTML when no transforms are defined', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'extension-1', + }), + Extension.create({ + name: 'extension-2', + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    unchanged

    ') + + expect(result).toBe('

    unchanged

    ') + + editor.destroy() + }) + }) + + describe('extension context', () => { + it('should provide correct context to transformPastedHTML', () => { + let capturedContext: any = null + + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'test-extension', + addOptions() { + return { + customOption: 'value', + } + }, + addStorage() { + return { + customStorage: 'stored', + } + }, + transformPastedHTML(html) { + capturedContext = { + name: this.name, + options: this.options, + storage: this.storage, + editor: this.editor, + } + return html + }, + }), + ], + }) + + editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(capturedContext).toBeDefined() + expect(capturedContext.name).toBe('test-extension') + expect(capturedContext.options).toMatchObject({ customOption: 'value' }) + expect(capturedContext.storage).toMatchObject({ customStorage: 'stored' }) + expect(capturedContext.editor).toBe(editor) + + editor.destroy() + }) + + it('should allow accessing editor state in transformPastedHTML', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'state-aware', + transformPastedHTML(html) { + const isEmpty = this.editor.isEmpty + return isEmpty ? `${html}` : html + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(result).toContain('') + + editor.destroy() + }) + }) + + describe('edge cases', () => { + it('should handle empty HTML string', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'transform', + transformPastedHTML(html) { + return html || '

    default

    ' + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('') + + expect(result).toBe('

    default

    ') + + editor.destroy() + }) + + it('should handle HTML with special characters', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'preserve-special', + transformPastedHTML(html) { + return html.replace(/&/g, '&') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    &test&

    ') + + expect(result).toBe('

    &test&

    ') + + editor.destroy() + }) + + it('should handle very long HTML strings', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'transform', + transformPastedHTML(html) { + return html.replace(/test/g, 'success') + }, + }), + ], + }) + + const longHtml = `

    ${'test '.repeat(10000)}

    ` + const result = editor.view.props.transformPastedHTML?.(longHtml) + + expect(result).toContain('success') + expect(result).not.toContain('test') + + editor.destroy() + }) + + it('should handle malformed HTML gracefully', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'transform', + transformPastedHTML(html) { + return html.replace(/test/g, 'success') + }, + }), + ], + }) + + const malformedHtml = '

    test' + const result = editor.view.props.transformPastedHTML?.(malformedHtml) + + expect(result).toBe('

    success') + + editor.destroy() + }) + }) + + describe('view parameter', () => { + it('should pass view parameter to baseTransform', () => { + let viewReceived: any = null + + const editor = new Editor({ + editorProps: { + transformPastedHTML(html, view) { + viewReceived = view + return html + }, + }, + extensions: [Document, Paragraph, Text], + }) + + editor.view.props.transformPastedHTML?.('

    test

    ', editor.view) + + expect(viewReceived).toBe(editor.view) + + editor.destroy() + }) + + it('should work when view parameter is undefined', () => { + const editor = new Editor({ + editorProps: { + transformPastedHTML(html, view) { + return view ? html : `${html}` + }, + }, + extensions: [Document, Paragraph, Text], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(result).toContain('') + + editor.destroy() + }) + }) + + describe('real-world scenarios', () => { + it('should remove inline styles and dangerous attributes', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'security', + priority: 100, + transformPastedHTML(html) { + return html.replace(/\s+style="[^"]*"/gi, '').replace(/\s+on\w+="[^"]*"/gi, '') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(result).toBe('

    test

    ') + + editor.destroy() + }) + + it('should normalize whitespace from word processors', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'normalize-whitespace', + transformPastedHTML(html) { + return html + .replace(/\t/g, ' ') + .replace(/\u00a0/g, ' ') + .replace(/\s+/g, ' ') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test\t\u00a0 multiple spaces

    ') + + expect(result).toBe('

    test multiple spaces

    ') + + editor.destroy() + }) + + it('should chain multiple practical transforms', () => { + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'remove-styles', + priority: 100, + transformPastedHTML(html) { + return html.replace(/\s+style="[^"]*"/gi, '') + }, + }), + Extension.create({ + name: 'normalize-tags', + priority: 90, + transformPastedHTML(html) { + return html.replace(//g, '').replace(/<\/b>/g, '') + }, + }), + Extension.create({ + name: 'add-classes', + priority: 80, + transformPastedHTML(html) { + return html.replace(/

    /g, '

    ') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(result).toBe('

    test

    ') + + editor.destroy() + }) + }) + + describe('performance', () => { + it('should handle many extensions efficiently', () => { + const extensions = [Document, Paragraph, Text] + + // Add 50 extensions with transforms + for (let i = 0; i < 50; i += 1) { + extensions.push( + Extension.create({ + name: `extension-${i}`, + priority: 1000 - i, + transformPastedHTML(html) { + return html // Pass through + }, + }), + ) + } + + const editor = new Editor({ extensions }) + + const start = Date.now() + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + const duration = Date.now() - start + + expect(result).toBe('

    test

    ') + expect(duration).toBeLessThan(100) // Should complete quickly + + editor.destroy() + }) + }) +}) diff --git a/tests/cypress/integration/core/transformPastedHTML.spec.ts b/tests/cypress/integration/core/transformPastedHTML.spec.ts new file mode 100644 index 0000000000..8752ef9146 --- /dev/null +++ b/tests/cypress/integration/core/transformPastedHTML.spec.ts @@ -0,0 +1,336 @@ +/// + +import { Editor, Extension } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' + +describe('transformPastedHTML', () => { + it('should run transforms in correct priority order (higher priority first)', () => { + const order: number[] = [] + + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + const editor = new Editor({ + element, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'extension1', + priority: 100, + transformPastedHTML(html) { + order.push(2) + return html + }, + }), + Extension.create({ + name: 'extension2', + priority: 200, + transformPastedHTML(html) { + order.push(1) + return html + }, + }), + Extension.create({ + name: 'extension3', + priority: 50, + transformPastedHTML(html) { + order.push(3) + return html + }, + }), + ], + }) + + // Manually trigger the transform + editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(order).to.deep.eq([1, 2, 3]) + + editor.destroy() + }) + }) + + it('should chain transforms correctly', () => { + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + const editor = new Editor({ + element, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'replaceFoo', + priority: 100, + transformPastedHTML(html) { + return html.replace(/foo/g, 'bar') + }, + }), + Extension.create({ + name: 'replaceBar', + priority: 90, + transformPastedHTML(html) { + return html.replace(/bar/g, 'baz') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    foo

    ') + + // First transform: foo -> bar (priority 100) + // Second transform: bar -> baz (priority 90) + expect(result).to.eq('

    baz

    ') + + editor.destroy() + }) + }) + + it('should integrate with baseTransform from editorProps', () => { + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + const editor = new Editor({ + element, + editorProps: { + transformPastedHTML(html) { + return html.replace(/base/g, 'replaced') + }, + }, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'extensionTransform', + transformPastedHTML(html) { + return html.replace(/replaced/g, 'final') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    base

    ') + + // Base transform runs first: base -> replaced + // Extension transform runs second: replaced -> final + expect(result).to.eq('

    final

    ') + + editor.destroy() + }) + }) + + it('should handle extensions without transforms', () => { + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + const editor = new Editor({ + element, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'noTransform', + // No transformPastedHTML defined + }), + Extension.create({ + name: 'withTransform', + transformPastedHTML(html) { + return html.replace(/test/g, 'success') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + + // Should still work even with extensions that don't define transformPastedHTML + expect(result).to.eq('

    success

    ') + + editor.destroy() + }) + }) + + it('should return original HTML if no transforms are defined', () => { + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + const editor = new Editor({ + element, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'noTransform1', + }), + Extension.create({ + name: 'noTransform2', + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    unchanged

    ') + + expect(result).to.eq('

    unchanged

    ') + + editor.destroy() + }) + }) + + it('should have access to extension context', () => { + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + let capturedContext: any = null + + const editor = new Editor({ + element, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'contextChecker', + addOptions() { + return { + testOption: 'testValue', + } + }, + transformPastedHTML(html) { + capturedContext = { + name: this.name, + hasOptions: !!this.options, + hasEditor: !!this.editor, + hasStorage: this.storage !== undefined, + } + return html + }, + }), + ], + }) + + editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(capturedContext).to.deep.eq({ + name: 'contextChecker', + hasOptions: true, + hasEditor: true, + hasStorage: true, + }) + + editor.destroy() + }) + }) + + it('should work with multiple transforms modifying HTML structure', () => { + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + const editor = new Editor({ + element, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'removeStyles', + priority: 100, + transformPastedHTML(html) { + return html.replace(/\s+style="[^"]*"/gi, '') + }, + }), + Extension.create({ + name: 'addClass', + priority: 90, + transformPastedHTML(html) { + return html.replace(/

    /g, '

    ') + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('

    test

    ') + + expect(result).to.eq('

    test

    ') + + editor.destroy() + }) + }) + + it('should handle empty HTML', () => { + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + const editor = new Editor({ + element, + extensions: [ + Document, + Paragraph, + Text, + Extension.create({ + name: 'transform', + transformPastedHTML(html) { + return html || '

    default

    ' + }, + }), + ], + }) + + const result = editor.view.props.transformPastedHTML?.('') + + expect(result).to.eq('

    default

    ') + + editor.destroy() + }) + }) + + it('should handle view parameter being passed through', () => { + cy.window().then(({ document }) => { + const element = document.createElement('div') + + document.body.append(element) + + let viewPassed = false + + const editor = new Editor({ + element, + editorProps: { + transformPastedHTML(html, view) { + viewPassed = !!view + return html + }, + }, + extensions: [Document, Paragraph, Text], + }) + + editor.view.props.transformPastedHTML?.('

    test

    ', editor.view) + + expect(viewPassed).to.equal(true) + + editor.destroy() + }) + }) +}) From 6e3a0e81fcf5fb3dd7482450cc732c301da3ea05 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Fri, 13 Feb 2026 04:11:15 +0100 Subject: [PATCH 613/629] Fix getMarkdown() returning   instead of empty string (#7497) * fix(markdown): return empty string for empty document instead of   Fixes issue where getMarkdown() returns ' ' when the editor is empty, instead of returning an empty string as expected. This behavior was inconsistent with getText() which correctly returns an empty string. Changes: - Added isEmptyOutput() helper method to detect empty documents - Modified serialize() to check if output is only whitespace entities - Empty documents now return empty string, preserving blank lines between content - Added comprehensive tests for empty document and blank line preservation All existing functionality for blank line preservation remains intact. https://claude.ai/code/session_013q4GkzGgcDFg6oc4LwYo6y * refactor(markdown): consolidate duplicate logic in serialize method Simplified serialize() method by removing redundant array/single-node branches. The renderNodes() method already handles both cases internally, making the conditional check unnecessary. This addresses Copilot review feedback about code duplication. https://claude.ai/code/session_013q4GkzGgcDFg6oc4LwYo6y * fix(markdown): apply prettier formatting to MarkdownManager Fixed formatting issues to comply with project prettier configuration. https://claude.ai/code/session_013q4GkzGgcDFg6oc4LwYo6y --------- Co-authored-by: Claude --- .changeset/fix-empty-document-markdown.md | 5 +++ packages/markdown/__tests__/manager.spec.ts | 40 +++++++++++++++++++++ packages/markdown/src/MarkdownManager.ts | 24 ++++++++++--- 3 files changed, 64 insertions(+), 5 deletions(-) create mode 100644 .changeset/fix-empty-document-markdown.md diff --git a/.changeset/fix-empty-document-markdown.md b/.changeset/fix-empty-document-markdown.md new file mode 100644 index 0000000000..2201a29952 --- /dev/null +++ b/.changeset/fix-empty-document-markdown.md @@ -0,0 +1,5 @@ +--- +'@tiptap/markdown': patch +--- + +Fixed getMarkdown() returning ` ` instead of empty string when editor is empty diff --git a/packages/markdown/__tests__/manager.spec.ts b/packages/markdown/__tests__/manager.spec.ts index b4cc6d3373..c2e5f7d658 100644 --- a/packages/markdown/__tests__/manager.spec.ts +++ b/packages/markdown/__tests__/manager.spec.ts @@ -294,6 +294,46 @@ Final paragraph.` expect(markdown).toBe('Hello world') }) + it('should return empty string when serializing empty document', () => { + // When the editor is empty, it contains a doc with an empty paragraph + const emptyDoc = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [], + }, + ], + } + + const markdown = markdownManager.serialize(emptyDoc) + expect(markdown).toBe('') + }) + + it('should preserve blank lines between paragraphs with content', () => { + // Multiple paragraphs with content should preserve blank lines + const doc = { + type: 'doc', + content: [ + { + type: 'paragraph', + content: [{ type: 'text', text: 'First paragraph' }], + }, + { + type: 'paragraph', + content: [], + }, + { + type: 'paragraph', + content: [{ type: 'text', text: 'Second paragraph' }], + }, + ], + } + + const markdown = markdownManager.serialize(doc) + expect(markdown).toBe('First paragraph\n\n \n\nSecond paragraph') + }) + it('should move trailing whitespace outside of mark closing (Issue #7180)', () => { // When text has trailing space and bold mark, output should be "**text** " not "**text **" const doc = { diff --git a/packages/markdown/src/MarkdownManager.ts b/packages/markdown/src/MarkdownManager.ts index 69712c53aa..cc5983b77a 100644 --- a/packages/markdown/src/MarkdownManager.ts +++ b/packages/markdown/src/MarkdownManager.ts @@ -256,13 +256,27 @@ export class MarkdownManager { return '' } - // If an array of nodes was passed - if (Array.isArray(docOrContent)) { - return this.renderNodes(docOrContent, docOrContent) + const result = this.renderNodes(docOrContent, docOrContent) + // Return empty string if result is only whitespace entities or non-breaking spaces + return this.isEmptyOutput(result) ? '' : result + } + + /** + * Check if the markdown output represents an empty document. + * Empty documents may contain only   entities or non-breaking space characters + * which are used by the Paragraph extension to preserve blank lines. + */ + private isEmptyOutput(markdown: string): boolean { + if (!markdown || markdown.trim() === '') { + return true } - // Single node - return this.renderNodes(docOrContent, docOrContent) + // Check if the output is only   entities or non-breaking space characters + const cleanedOutput = markdown + .replace(/ /g, '') + .replace(/\u00A0/g, '') + .trim() + return cleanedOutput === '' } /** From 4b731e2d1af1339961c453bc4d622e9e5c7805ef Mon Sep 17 00:00:00 2001 From: mweidner037 <17693586+mweidner037@users.noreply.github.com> Date: Mon, 16 Feb 2026 07:20:45 -0500 Subject: [PATCH 614/629] Fix checking if mark is active and toggling off marks when part of the selection does not allow the mark (e.g. a code block) (#7506) * isMarkActive: ignore selected text that does not allow the mark due to its parent node's marks spec * changeset * reword comment (Copilot suggestion) * unit test --- .changeset/few-rice-end.md | 5 +++++ packages/core/__tests__/isActive.spec.ts | 19 +++++++++++++++++++ packages/core/src/helpers/isMarkActive.ts | 5 +++++ 3 files changed, 29 insertions(+) create mode 100644 .changeset/few-rice-end.md diff --git a/.changeset/few-rice-end.md b/.changeset/few-rice-end.md new file mode 100644 index 0000000000..1018d36a62 --- /dev/null +++ b/.changeset/few-rice-end.md @@ -0,0 +1,5 @@ +--- +'@tiptap/core': patch +--- + +Fix checking if mark is active and toggling off marks when part of the selection does not allow the mark (e.g. a code block) diff --git a/packages/core/__tests__/isActive.spec.ts b/packages/core/__tests__/isActive.spec.ts index c03143ac44..49b801f933 100644 --- a/packages/core/__tests__/isActive.spec.ts +++ b/packages/core/__tests__/isActive.spec.ts @@ -1,4 +1,5 @@ import { Editor } from '@tiptap/core' +import CodeBlock from '@tiptap/extension-code-block' import Document from '@tiptap/extension-document' import Paragraph from '@tiptap/extension-paragraph' import Text from '@tiptap/extension-text' @@ -76,4 +77,22 @@ describe('isActive', () => { expect(editor.isActive('textStyle', { fontFamily: 'Inter', color: 'green' })).toBe(false) }) + + it('should skip code blocks when checking the current mark', () => { + const editor = new Editor({ + extensions: [Document, Paragraph, Text, TextStyle, FontFamily, CodeBlock], + content: ` +
    code
    +

    text

    + `, + }) + + // Selection that touches the code block and paragraph + editor.commands.setTextSelection({ from: 1, to: 9 }) + expect(editor.isActive('textStyle', { fontFamily: /.*/ })).toBe(true) + + // Selection that touches just the code block + editor.commands.setTextSelection({ from: 1, to: 3 }) + expect(editor.isActive('textStyle', { fontFamily: /.*/ })).toBe(false) + }) }) diff --git a/packages/core/src/helpers/isMarkActive.ts b/packages/core/src/helpers/isMarkActive.ts index 2bcb4f5fa3..ddfc31ea0c 100644 --- a/packages/core/src/helpers/isMarkActive.ts +++ b/packages/core/src/helpers/isMarkActive.ts @@ -33,6 +33,11 @@ export function isMarkActive( const to = $to.pos state.doc.nodesBetween(from, to, (node, pos) => { + // ignore selected text inside nodes whose schema disallows this mark type + if (type && node.inlineContent && !node.type.allowsMarkType(type)) { + return false + } + if (!node.isText && !node.marks.length) { return } From 76ce47db44be2ffff4cab467aa248f834d696b44 Mon Sep 17 00:00:00 2001 From: Chuck Date: Mon, 16 Feb 2026 20:32:25 +0800 Subject: [PATCH 615/629] fix: typo in core/src/Editor.ts (#7505) * fix: typo in core/src/Editor.ts * Fix typo in documentation of editor.view --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/twenty-crews-eat.md | 5 +++++ packages/core/src/Editor.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/twenty-crews-eat.md diff --git a/.changeset/twenty-crews-eat.md b/.changeset/twenty-crews-eat.md new file mode 100644 index 0000000000..846caade73 --- /dev/null +++ b/.changeset/twenty-crews-eat.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": patch +--- + +Fixed a typo in the documentation of `editor.view` diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts index 2c311ed66b..08cfb681e5 100644 --- a/packages/core/src/Editor.ts +++ b/packages/core/src/Editor.ts @@ -300,7 +300,7 @@ export class Editor extends EventEmitter { } /** - * Returns the editor state. + * Returns the editor view. */ public get view(): EditorView { if (this.editorView) { From 5e04a738a44b620015103781a1c7db24f17a4239 Mon Sep 17 00:00:00 2001 From: Siam Ahnaf Date: Mon, 16 Feb 2026 18:35:41 +0600 Subject: [PATCH 616/629] Fix: Position 3 out of range Error [@tiptap/extension-drag-handle] (#7509) * Fix: Position 3 out of range Error * Fix drag position error for empty text node Fixes an issue with drag position resolving when dragging an empty text node at the end of the document. * Fix selection range calculation in dragHandler --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/shy-bugs-raise.md | 5 +++++ packages/extension-drag-handle/src/helpers/dragHandler.ts | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 .changeset/shy-bugs-raise.md diff --git a/.changeset/shy-bugs-raise.md b/.changeset/shy-bugs-raise.md new file mode 100644 index 0000000000..03b8cfcee7 --- /dev/null +++ b/.changeset/shy-bugs-raise.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-drag-handle": patch +--- + +Fix drag position resolving outside the document when dragging an empty text node at the end of the document diff --git a/packages/extension-drag-handle/src/helpers/dragHandler.ts b/packages/extension-drag-handle/src/helpers/dragHandler.ts index a519fbd9d8..f530c7c017 100644 --- a/packages/extension-drag-handle/src/helpers/dragHandler.ts +++ b/packages/extension-drag-handle/src/helpers/dragHandler.ts @@ -49,8 +49,9 @@ function getDragHandleRanges( } // For non-nested mode, use depth 0 to select the outermost block + const offset = result.resultNode.isText ? 0 : -1 const $from = doc.resolve(result.pos) - const $to = doc.resolve(result.pos + result.resultNode.nodeSize) + const $to = doc.resolve(result.pos + result.resultNode.nodeSize + offset) return getSelectionRanges($from, $to, 0) } From 4a9ebf1b6ad76fa73ca3a180dc86c5fa16c098b1 Mon Sep 17 00:00:00 2001 From: Wei Date: Mon, 16 Feb 2026 07:59:20 -0500 Subject: [PATCH 617/629] fix(tiptap): use named `CodeBlock` import to avoid runtime extend error for `CodeBlockLowlight` extension (#7370) * fix(tiptap): use named CodeBlock import to avoid runtime extend error CodeBlockLowlight expects CodeBlock to expose `.extend()`, but default imports can resolve to a module wrapper in some ESM/CJS environments, causing `extend is not a function` at runtime. Switching to a named import ensures the actual CodeBlock extension is used and fixes the crash. * chore: add missing changeset --- .changeset/rich-squids-fold.md | 5 +++++ .../extension-code-block-lowlight/src/code-block-lowlight.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/rich-squids-fold.md diff --git a/.changeset/rich-squids-fold.md b/.changeset/rich-squids-fold.md new file mode 100644 index 0000000000..947bd67a68 --- /dev/null +++ b/.changeset/rich-squids-fold.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-code-block-lowlight': patch +--- + +Fixed a runtime error when initializing `CodeBlockLowlight` by switching the `CodeBlock` import to a named export. This prevents `extend is not a function` errors caused by ESM/CJS interop issues. diff --git a/packages/extension-code-block-lowlight/src/code-block-lowlight.ts b/packages/extension-code-block-lowlight/src/code-block-lowlight.ts index d06240630f..3a68721307 100644 --- a/packages/extension-code-block-lowlight/src/code-block-lowlight.ts +++ b/packages/extension-code-block-lowlight/src/code-block-lowlight.ts @@ -1,5 +1,5 @@ import type { CodeBlockOptions } from '@tiptap/extension-code-block' -import CodeBlock from '@tiptap/extension-code-block' +import { CodeBlock } from '@tiptap/extension-code-block' import { LowlightPlugin } from './lowlight-plugin.js' From 27d98acc03bbbbe8ac5df35249a407da5a8fa674 Mon Sep 17 00:00:00 2001 From: Itrulia Date: Mon, 16 Feb 2026 18:08:13 +0100 Subject: [PATCH 618/629] feat(extension-invisible-characters): add storage typings (#7377) * feat(extension-invisible-characters): add storage typings * Add missing storage typings for extension-invisible-characters * add missing new-line --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/seven-beers-search.md | 5 +++++ .../extension-invisible-characters/src/types.ts | 13 +++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 .changeset/seven-beers-search.md diff --git a/.changeset/seven-beers-search.md b/.changeset/seven-beers-search.md new file mode 100644 index 0000000000..a797c88b9a --- /dev/null +++ b/.changeset/seven-beers-search.md @@ -0,0 +1,5 @@ +--- +"@tiptap/extension-invisible-characters": patch +--- + +Added missing storage typings diff --git a/packages/extension-invisible-characters/src/types.ts b/packages/extension-invisible-characters/src/types.ts index 238eaec11e..b1c2285c47 100644 --- a/packages/extension-invisible-characters/src/types.ts +++ b/packages/extension-invisible-characters/src/types.ts @@ -19,3 +19,16 @@ export interface PluginState { visible: boolean decorations: DecorationSet } + +export interface InvisibleCharactersStorage { + /** + * Get whether the invisible characters are shown or not + */ + visibility: () => boolean +} + +declare module '@tiptap/core' { + interface Storage { + invisibleCharacters: InvisibleCharactersStorage + } +} From 253ca1c874d612e3629017f8a8009e76c5ffbf74 Mon Sep 17 00:00:00 2001 From: Re-cool <93751369+Re-cool@users.noreply.github.com> Date: Tue, 17 Feb 2026 21:30:33 +0900 Subject: [PATCH 619/629] fix: use instance-specific pluginKey as transaction meta key in BubbleMenu/FloatingMenu to prevent cross-contamination (#7512) * fix: use instance-specific pluginKey as transaction meta key in BubbleMenu/FloatingMenu to prevent cross-contamination * Document transactionHandler for floating menu position Add documentation for transactionHandler method. * Implement transaction handler for bubble menu Add transaction handler for bubble menu position updates. --------- Co-authored-by: bdbch <6538827+bdbch@users.noreply.github.com> --- .changeset/fix-menu-cross-contamination.md | 7 + .../__tests__/bubble-menu-plugin.spec.ts | 161 +++++++++++++++ .../src/bubble-menu-plugin.ts | 12 +- .../__tests__/floating-menu-plugin.spec.ts | 191 ++++++++++++++++++ .../src/floating-menu-plugin.ts | 9 +- .../src/floating-menu.ts | 2 +- packages/react/src/menus/BubbleMenu.tsx | 2 +- packages/react/src/menus/FloatingMenu.tsx | 2 +- 8 files changed, 380 insertions(+), 6 deletions(-) create mode 100644 .changeset/fix-menu-cross-contamination.md create mode 100644 packages/extension-bubble-menu/__tests__/bubble-menu-plugin.spec.ts create mode 100644 packages/extension-floating-menu/__tests__/floating-menu-plugin.spec.ts diff --git a/.changeset/fix-menu-cross-contamination.md b/.changeset/fix-menu-cross-contamination.md new file mode 100644 index 0000000000..552bae8b7f --- /dev/null +++ b/.changeset/fix-menu-cross-contamination.md @@ -0,0 +1,7 @@ +--- +'@tiptap/extension-bubble-menu': patch +'@tiptap/extension-floating-menu': patch +'@tiptap/react': patch +--- + +Fix `BubbleMenu`/`FloatingMenu` to use `pluginKey` as the transaction meta key so that multiple instances can be updated independently without affecting each other diff --git a/packages/extension-bubble-menu/__tests__/bubble-menu-plugin.spec.ts b/packages/extension-bubble-menu/__tests__/bubble-menu-plugin.spec.ts new file mode 100644 index 0000000000..8564ca80d9 --- /dev/null +++ b/packages/extension-bubble-menu/__tests__/bubble-menu-plugin.spec.ts @@ -0,0 +1,161 @@ +import { Editor } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { PluginKey } from '@tiptap/pm/state' +import { describe, expect, it, vi } from 'vitest' + +import { BubbleMenuView } from '../src/bubble-menu-plugin.js' + +function createEditor(content = '

    Hello world

    ') { + return new Editor({ + extensions: [Document, Paragraph, Text], + content, + }) +} + +function createBubbleMenuView( + editor: Editor, + overrides: Partial[0]> = {}, +) { + return new BubbleMenuView({ + editor, + element: document.createElement('div'), + view: editor.view, + shouldShow: () => false, + ...overrides, + }) +} + +describe('BubbleMenuView cross-contamination', () => { + it('should only process updateOptions for its own pluginKey (string)', () => { + const editor = createEditor() + + const view1 = createBubbleMenuView(editor, { pluginKey: 'bubbleMenu1' }) + const view2 = createBubbleMenuView(editor, { pluginKey: 'bubbleMenu2' }) + + const spy1 = vi.spyOn(view1, 'updateOptions') + const spy2 = vi.spyOn(view2, 'updateOptions') + + const newOptions = { updateDelay: 999 } + + editor.view.dispatch( + editor.state.tr.setMeta('bubbleMenu1', { + type: 'updateOptions', + options: newOptions, + }), + ) + + expect(spy1).toHaveBeenCalledTimes(1) + expect(spy1).toHaveBeenCalledWith(newOptions) + expect(spy2).not.toHaveBeenCalled() + + view1.destroy() + view2.destroy() + editor.destroy() + }) + it('should only process updateOptions for its own pluginKey (PluginKey instance)', () => { + const editor = createEditor() + + const key1 = new PluginKey('customBubbleA') + const key2 = new PluginKey('customBubbleB') + + const view1 = createBubbleMenuView(editor, { pluginKey: key1 }) + const view2 = createBubbleMenuView(editor, { pluginKey: key2 }) + + const spy1 = vi.spyOn(view1, 'updateOptions') + const spy2 = vi.spyOn(view2, 'updateOptions') + + const newOptions = { updateDelay: 500 } + + editor.view.dispatch( + editor.state.tr.setMeta('customBubbleA$', { + type: 'updateOptions', + options: newOptions, + }), + ) + + expect(spy1).toHaveBeenCalledTimes(1) + expect(spy1).toHaveBeenCalledWith(newOptions) + expect(spy2).not.toHaveBeenCalled() + + view1.destroy() + view2.destroy() + editor.destroy() + }) + it('should only process updatePosition for its own pluginKey', () => { + const editor = createEditor() + + const view1 = createBubbleMenuView(editor, { pluginKey: 'bubbleMenu1' }) + const view2 = createBubbleMenuView(editor, { pluginKey: 'bubbleMenu2' }) + + const spy1 = vi.spyOn(view1, 'updatePosition') + const spy2 = vi.spyOn(view2, 'updatePosition') + + editor.view.dispatch(editor.state.tr.setMeta('bubbleMenu1', 'updatePosition')) + + expect(spy1).toHaveBeenCalledTimes(1) + expect(spy2).not.toHaveBeenCalled() + + view1.destroy() + view2.destroy() + editor.destroy() + }) + it('should not cross-contaminate options between two instances', () => { + const editor = createEditor() + + const view1 = createBubbleMenuView(editor, { + pluginKey: 'bubbleMenu1', + updateDelay: 100, + }) + const view2 = createBubbleMenuView(editor, { + pluginKey: 'bubbleMenu2', + updateDelay: 200, + }) + + editor.view.dispatch( + editor.state.tr.setMeta('bubbleMenu1', { + type: 'updateOptions', + options: { updateDelay: 999 }, + }), + ) + + expect(view1.updateDelay).toBe(999) + expect(view2.updateDelay).toBe(200) + + editor.view.dispatch( + editor.state.tr.setMeta('bubbleMenu2', { + type: 'updateOptions', + options: { updateDelay: 777 }, + }), + ) + + expect(view1.updateDelay).toBe(999) + expect(view2.updateDelay).toBe(777) + + view1.destroy() + view2.destroy() + editor.destroy() + }) + it('should maintain backward compatibility with default "bubbleMenu" pluginKey', () => { + const editor = createEditor() + + const view = createBubbleMenuView(editor) + + const spy = vi.spyOn(view, 'updateOptions') + const newOptions = { updateDelay: 500 } + + editor.view.dispatch( + editor.state.tr.setMeta('bubbleMenu', { + type: 'updateOptions', + options: newOptions, + }), + ) + + expect(spy).toHaveBeenCalledTimes(1) + expect(spy).toHaveBeenCalledWith(newOptions) + + view.destroy() + editor.destroy() + }) +}) diff --git a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts index 103f81c6e7..14157f444b 100644 --- a/packages/extension-bubble-menu/src/bubble-menu-plugin.ts +++ b/packages/extension-bubble-menu/src/bubble-menu-plugin.ts @@ -157,6 +157,8 @@ export class BubbleMenuView implements PluginView { public preventHide = false + public pluginKey: PluginKey | string + public updateDelay: number public resizeDelay: number @@ -331,6 +333,7 @@ export class BubbleMenuView implements PluginView { editor, element, view, + pluginKey = 'bubbleMenu', updateDelay = 250, resizeDelay = 60, shouldShow, @@ -341,6 +344,7 @@ export class BubbleMenuView implements PluginView { this.editor = editor this.element = element this.view = view + this.pluginKey = pluginKey this.updateDelay = updateDelay this.resizeDelay = resizeDelay this.appendTo = appendTo @@ -566,8 +570,14 @@ export class BubbleMenuView implements PluginView { this.isVisible = false } + /** + * Handles the transaction event to update the position of the bubble menu. + * This allows external code to trigger a position update via: + * `editor.view.dispatch(editor.state.tr.setMeta(pluginKey, 'updatePosition'))` + * The `pluginKey` defaults to `bubbleMenu` + */ transactionHandler = ({ transaction: tr }: { transaction: Transaction }) => { - const meta = tr.getMeta('bubbleMenu') + const meta = tr.getMeta(this.pluginKey) if (meta === 'updatePosition') { this.updatePosition() } else if (meta && typeof meta === 'object' && meta.type === 'updateOptions') { diff --git a/packages/extension-floating-menu/__tests__/floating-menu-plugin.spec.ts b/packages/extension-floating-menu/__tests__/floating-menu-plugin.spec.ts new file mode 100644 index 0000000000..140ca812c7 --- /dev/null +++ b/packages/extension-floating-menu/__tests__/floating-menu-plugin.spec.ts @@ -0,0 +1,191 @@ +import { Editor } from '@tiptap/core' +import Document from '@tiptap/extension-document' +import Paragraph from '@tiptap/extension-paragraph' +import Text from '@tiptap/extension-text' +import { PluginKey } from '@tiptap/pm/state' +import { describe, expect, it, vi } from 'vitest' + +import { FloatingMenu } from '../src/floating-menu.js' +import { FloatingMenuView } from '../src/floating-menu-plugin.js' + +function createEditor(content = '

    Hello world

    ') { + return new Editor({ + extensions: [Document, Paragraph, Text], + content, + }) +} + +function createFloatingMenuView( + editor: Editor, + overrides: Partial[0]> = {}, +) { + return new FloatingMenuView({ + editor, + element: document.createElement('div'), + view: editor.view, + shouldShow: () => false, + ...overrides, + }) +} + +describe('FloatingMenuView cross-contamination', () => { + it('should only process updateOptions for its own pluginKey (string)', () => { + const editor = createEditor() + + const view1 = createFloatingMenuView(editor, { pluginKey: 'floatingMenu1' }) + const view2 = createFloatingMenuView(editor, { pluginKey: 'floatingMenu2' }) + + const spy1 = vi.spyOn(view1, 'updateOptions') + const spy2 = vi.spyOn(view2, 'updateOptions') + + const newOptions = { updateDelay: 999 } + + editor.view.dispatch( + editor.state.tr.setMeta('floatingMenu1', { + type: 'updateOptions', + options: newOptions, + }), + ) + + expect(spy1).toHaveBeenCalledTimes(1) + expect(spy1).toHaveBeenCalledWith(newOptions) + expect(spy2).not.toHaveBeenCalled() + + view1.destroy() + view2.destroy() + editor.destroy() + }) + it('should only process updateOptions for its own pluginKey (PluginKey instance)', () => { + const editor = createEditor() + + const key1 = new PluginKey('customFloatingA') + const key2 = new PluginKey('customFloatingB') + + const view1 = createFloatingMenuView(editor, { pluginKey: key1 }) + const view2 = createFloatingMenuView(editor, { pluginKey: key2 }) + + const spy1 = vi.spyOn(view1, 'updateOptions') + const spy2 = vi.spyOn(view2, 'updateOptions') + + const newOptions = { updateDelay: 500 } + + editor.view.dispatch( + editor.state.tr.setMeta('customFloatingA$', { + type: 'updateOptions', + options: newOptions, + }), + ) + + expect(spy1).toHaveBeenCalledTimes(1) + expect(spy1).toHaveBeenCalledWith(newOptions) + expect(spy2).not.toHaveBeenCalled() + + view1.destroy() + view2.destroy() + editor.destroy() + }) + it('should only process updatePosition for its own pluginKey', () => { + const editor = createEditor() + + const view1 = createFloatingMenuView(editor, { pluginKey: 'floatingMenu1' }) + const view2 = createFloatingMenuView(editor, { pluginKey: 'floatingMenu2' }) + + const spy1 = vi.spyOn(view1, 'updatePosition') + const spy2 = vi.spyOn(view2, 'updatePosition') + + editor.view.dispatch(editor.state.tr.setMeta('floatingMenu1', 'updatePosition')) + + expect(spy1).toHaveBeenCalledTimes(1) + expect(spy2).not.toHaveBeenCalled() + + view1.destroy() + view2.destroy() + editor.destroy() + }) + it('should not cross-contaminate options between two instances', () => { + const editor = createEditor() + + const view1 = createFloatingMenuView(editor, { + pluginKey: 'floatingMenu1', + updateDelay: 100, + }) + const view2 = createFloatingMenuView(editor, { + pluginKey: 'floatingMenu2', + updateDelay: 200, + }) + + editor.view.dispatch( + editor.state.tr.setMeta('floatingMenu1', { + type: 'updateOptions', + options: { updateDelay: 999 }, + }), + ) + + expect(view1.updateDelay).toBe(999) + expect(view2.updateDelay).toBe(200) + + editor.view.dispatch( + editor.state.tr.setMeta('floatingMenu2', { + type: 'updateOptions', + options: { updateDelay: 777 }, + }), + ) + + expect(view1.updateDelay).toBe(999) + expect(view2.updateDelay).toBe(777) + + view1.destroy() + view2.destroy() + editor.destroy() + }) + it('should use pluginKey in updateFloatingMenuPosition command', () => { + const customPluginKey = 'myFloatingMenu' + const menuElement = document.createElement('div') + + const editor = new Editor({ + extensions: [ + Document, + Paragraph, + Text, + FloatingMenu.configure({ + element: menuElement, + pluginKey: customPluginKey, + shouldShow: () => false, + }), + ], + content: '

    Hello world

    ', + }) + + const dispatchSpy = vi.spyOn(editor.view, 'dispatch') + + editor.commands.updateFloatingMenuPosition() + + const dispatchedTr = dispatchSpy.mock.calls[0][0] + + expect(dispatchedTr.getMeta(customPluginKey)).toBe('updatePosition') + expect(dispatchedTr.getMeta('floatingMenu')).toBeUndefined() + + editor.destroy() + }) + it('should maintain backward compatibility with default "floatingMenu" pluginKey', () => { + const editor = createEditor() + + const view = createFloatingMenuView(editor) + + const spy = vi.spyOn(view, 'updateOptions') + const newOptions = { updateDelay: 500 } + + editor.view.dispatch( + editor.state.tr.setMeta('floatingMenu', { + type: 'updateOptions', + options: newOptions, + }), + ) + + expect(spy).toHaveBeenCalledTimes(1) + expect(spy).toHaveBeenCalledWith(newOptions) + + view.destroy() + editor.destroy() + }) +}) diff --git a/packages/extension-floating-menu/src/floating-menu-plugin.ts b/packages/extension-floating-menu/src/floating-menu-plugin.ts index 31e82440a4..e4fd6a9cea 100644 --- a/packages/extension-floating-menu/src/floating-menu-plugin.ts +++ b/packages/extension-floating-menu/src/floating-menu-plugin.ts @@ -137,6 +137,8 @@ export class FloatingMenuView { public preventHide = false + public pluginKey: PluginKey | string + /** * The delay in milliseconds before the menu should be updated. * @default 250 @@ -247,6 +249,7 @@ export class FloatingMenuView { editor, element, view, + pluginKey = 'floatingMenu', updateDelay = 250, resizeDelay = 60, options, @@ -256,6 +259,7 @@ export class FloatingMenuView { this.editor = editor this.element = element this.view = view + this.pluginKey = pluginKey this.updateDelay = updateDelay this.resizeDelay = resizeDelay this.appendTo = appendTo @@ -358,10 +362,11 @@ export class FloatingMenuView { /** * Handles the transaction event to update the position of the floating menu. * This allows external code to trigger a position update via: - * `editor.view.dispatch(editor.state.tr.setMeta('floatingMenu', 'updatePosition'))` + * `editor.view.dispatch(editor.state.tr.setMeta(pluginKey, 'updatePosition'))` + * The `pluginKey` defaults to `floatingMenu` */ transactionHandler = ({ transaction: tr }: { transaction: Transaction }) => { - const meta = tr.getMeta('floatingMenu') + const meta = tr.getMeta(this.pluginKey) if (meta === 'updatePosition') { this.updatePosition() } else if (meta && typeof meta === 'object' && meta.type === 'updateOptions') { diff --git a/packages/extension-floating-menu/src/floating-menu.ts b/packages/extension-floating-menu/src/floating-menu.ts index 00d4cdd2a7..a95581bd18 100644 --- a/packages/extension-floating-menu/src/floating-menu.ts +++ b/packages/extension-floating-menu/src/floating-menu.ts @@ -49,7 +49,7 @@ export const FloatingMenu = Extension.create({ () => ({ tr, dispatch }) => { if (dispatch) { - tr.setMeta('floatingMenu', 'updatePosition') + tr.setMeta(this.options.pluginKey, 'updatePosition') } return true }, diff --git a/packages/react/src/menus/BubbleMenu.tsx b/packages/react/src/menus/BubbleMenu.tsx index c4561c298a..b14fa2cc56 100644 --- a/packages/react/src/menus/BubbleMenu.tsx +++ b/packages/react/src/menus/BubbleMenu.tsx @@ -124,7 +124,7 @@ export const BubbleMenu = React.forwardRef( } pluginEditor.view.dispatch( - pluginEditor.state.tr.setMeta('bubbleMenu', { + pluginEditor.state.tr.setMeta(pluginKey, { type: 'updateOptions', options: bubbleMenuPluginPropsRef.current, }), diff --git a/packages/react/src/menus/FloatingMenu.tsx b/packages/react/src/menus/FloatingMenu.tsx index c19887ffb9..114edb0fd0 100644 --- a/packages/react/src/menus/FloatingMenu.tsx +++ b/packages/react/src/menus/FloatingMenu.tsx @@ -128,7 +128,7 @@ export const FloatingMenu = React.forwardRef( } pluginEditor.view.dispatch( - pluginEditor.state.tr.setMeta('floatingMenu', { + pluginEditor.state.tr.setMeta(pluginKey, { type: 'updateOptions', options: floatingMenuPluginPropsRef.current, }), From 536f452fcf305b85320270c8bf84c53cab63cde1 Mon Sep 17 00:00:00 2001 From: bdbch <6538827+bdbch@users.noreply.github.com> Date: Wed, 18 Feb 2026 10:57:16 +0100 Subject: [PATCH 620/629] Fix drag handles for atom nodes on both nested and non-nested (#7527) * initial commit for drag handle fix * fix(drag-handle): correct offset calculation for non-nested mode - Update offset logic to handle Atom nodes correctly - Prevent creation of empty ranges during drag operations - Improve clarity of comments regarding node size handling * fix(drag-handle): configure Image extension for drag handle - Added Image extension to support image handling - Set Image extension to inline: false * feat(drag-handle): add image to demo content - included a random image in the demo - enhances visual representation of drag handle functionality - improves user experience in the demo * feat(drag-handle): enhance drag handle functionality with table support - Added TableKit extension to drag handle demo. - Implemented tableStructure rule to exclude table-related nodes from drag targets. - Updated defaultRules to include the new tableStructure rule. * feat(drag-handle): add table support to Vue demo content - integrated TableKit for enhanced table functionality - added example rows to demonstrate component-based architecture - improved documentation with a structured table layout * fix(drag-handle): resolve drag handle visibility for atom/leaf nodes - Fix drag handle not appearing for images in both nested and non-nested modes * fix(drag-handle): improve drag target scoring with allowed containers - Add check for allowed containers in drag target scoring - Refactor context creation to be conditional on allowed container check - Ensure candidates are only added if within allowed containers --- ...rag-handle-atom-nodes-bright-summer-day.md | 5 + ...ag-handle-table-support-calm-blue-ocean.md | 5 + .../src/Extensions/DragHandle/React/index.jsx | 28 +- demos/src/Extensions/DragHandle/Vue/index.vue | 28 ++ .../__tests__/defaultRules.spec.ts | 119 +++++- .../__tests__/findBestDragTarget.spec.ts | 373 ++++++++++++++++++ .../src/helpers/defaultRules.ts | 29 +- .../src/helpers/dragHandler.ts | 17 +- .../src/helpers/findBestDragTarget.ts | 43 ++ 9 files changed, 640 insertions(+), 7 deletions(-) create mode 100644 .changeset/fix-drag-handle-atom-nodes-bright-summer-day.md create mode 100644 .changeset/fix-drag-handle-table-support-calm-blue-ocean.md create mode 100644 packages/extension-drag-handle/__tests__/findBestDragTarget.spec.ts diff --git a/.changeset/fix-drag-handle-atom-nodes-bright-summer-day.md b/.changeset/fix-drag-handle-atom-nodes-bright-summer-day.md new file mode 100644 index 0000000000..809b7efdf7 --- /dev/null +++ b/.changeset/fix-drag-handle-atom-nodes-bright-summer-day.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-drag-handle': patch +--- + +Fix drag handle not appearing for atom/leaf nodes like images in both nested and non-nested modes diff --git a/.changeset/fix-drag-handle-table-support-calm-blue-ocean.md b/.changeset/fix-drag-handle-table-support-calm-blue-ocean.md new file mode 100644 index 0000000000..04ef292301 --- /dev/null +++ b/.changeset/fix-drag-handle-table-support-calm-blue-ocean.md @@ -0,0 +1,5 @@ +--- +'@tiptap/extension-drag-handle': patch +--- + +Add table structure rules to prevent drag handle on table rows, cells, and headers, and fix ghost table rows when dragging tables diff --git a/demos/src/Extensions/DragHandle/React/index.jsx b/demos/src/Extensions/DragHandle/React/index.jsx index 93391d99b3..0f8b922d19 100644 --- a/demos/src/Extensions/DragHandle/React/index.jsx +++ b/demos/src/Extensions/DragHandle/React/index.jsx @@ -1,6 +1,8 @@ import './styles.scss' import DragHandle from '@tiptap/extension-drag-handle-react' +import Image from '@tiptap/extension-image' +import { TableKit } from '@tiptap/extension-table' import { EditorContent, useEditor } from '@tiptap/react' import StarterKit from '@tiptap/starter-kit' import { useState } from 'react' @@ -11,11 +13,13 @@ export default () => { const [nested, setNested] = useState(true) const editor = useEditor({ - extensions: [StarterKit], + extensions: [StarterKit, Image.configure({ inline: false }), TableKit], content: `

    The Complete Guide to Modern Web Development

    Web development has evolved significantly over the past decade. What once required multiple tools and complex setups can now be accomplished with modern frameworks and libraries that prioritize developer experience.

    + Random Image +

    Getting Started

    Before diving into the technical details, it's important to understand the foundational concepts that make modern web development possible.

    @@ -25,6 +29,28 @@ export default () => {

    This philosophy guides much of modern development practices, emphasizing simplicity and maintainability over complexity.

    + + + + + + + + + + + + + + + + + + + + +
    FeatureDescriptionExample
    Component-Based ArchitectureBreaks down the UI into reusable components.<MyComponent />
    Virtual DOMImproves performance by minimizing direct DOM manipulation.<VirtualDOMComponent />
    +

    Key Technologies

    diff --git a/demos/src/Extensions/DragHandle/Vue/index.vue b/demos/src/Extensions/DragHandle/Vue/index.vue index df6d57a03c..161bde455f 100644 --- a/demos/src/Extensions/DragHandle/Vue/index.vue +++ b/demos/src/Extensions/DragHandle/Vue/index.vue @@ -24,7 +24,9 @@